Files
aitsc/.venv/Lib/site-packages/sqlalchemy/util/__pycache__/compat.cpython-312.pyc

87 lines
12 KiB
Plaintext
Raw Normal View History

2025-02-23 09:07:52 +08:00
<EFBFBD>
2025-08-29 00:34:40 +08:00
<00><19>h<EFBFBD>#<00> <01><><00>dZddlmZddlZddlZddlZddlZddlZddlZddl Z ddl
2025-02-23 09:07:52 +08:00
Z
ddl
m Z ddl
m Z ddl
m Z ddl
mZddl
mZdd l
mZdd
l
mZdd l
mZdd l
mZdd l
mZddl
mZddl
2025-08-29 00:34:40 +08:00
mZe j.dk\Ze j.dk\Ze j.dk\Ze j.dk\Ze j.dk\Ze j.dk\Ze j.dk\Ze j.dk\Zej@<00>dk(Z!ej@<00>dk(Z"e jjGd<1A>Z$e jjGd<1B>Z%dejL<00>jO<00>vZ(e jRdkDZ*e+e"<22>Z,ejZZ.edd<1F> <20>Z/Gd!<21>d"e
j`<00>Z1d9d#<23>Z2erd:d$<24>Z3nd:d%<25>Z3e
jhserdd&l5m6Z7nddl7Z7e
jhser ejpZ9nd;d'<27>Z9ere:Z;ne<<3C>Z=dd(l>m?Z?e=fd)<29>Z;d*<2A>Z@d+<2B>ZAd<d,<2C>ZBd=d-<2D>ZCd>d.<2E>ZDd/<2F>ZEd?d0<64>ZFdddd1iieGd2<64>d3<64>d4<64>d5<64>eFf d@d6<64>ZHdAd7<64>ZIdAd8<64>ZJy)Bz1Handle Python version/platform incompatibilities.<2E>)<01> annotationsN)<01>Any)<01>Callable)<01>Dict)<01>Iterable)<01>List)<01>Mapping)<01>Optional)<01>Sequence)<01>Set)<01>Tuple)<01>Type)<01>TypeVar)<05><00>r<00>beta<74>)rr)r<00> )r<00> )r<00> )r<00>
2025-02-23 09:07:52 +08:00
)r<00> )r<00><00>PyPy<50>CPython<6F>win<69>darwin<69>aarchl<00>_T_coT)<01> covariantc<01>T<00>eZdZUded<ded<ded<ded<ded<d ed
<d ed <y )<0E> FullArgSpec<65> List[str]<5D>args<67> Optional[str]<5D>varargs<67>varkwzOptional[Tuple[Any, ...]]<5D>defaults<74>
kwonlyargszOptional[Dict[str, Any]]<5D>kwonlydefaultszDict[str, Any]rN)<04>__name__<5F>
2025-08-29 00:34:40 +08:00
__module__<EFBFBD> __qualname__<5F>__annotations__<5F><00><00>CD:\pythonpj\aitsc\.venv\Lib\site-packages\sqlalchemy/util/compat.pyr"r":s+<00><00>
<13>O<EFBFBD> <1A><1A> <18><18>'<27>'<27><19><19>,<2C>,<2C><1F>r0r"c <01><><00>tj|<00>r |j}tj|<00>st |<00>d<01><02><00>|j
}tj |<01>st |<01>d<02><02><00>|j}|j}|j}t|d|<00>}t||||z<00>}||z }d}|jtjzr|j|}|dz}d}|jtjzr|j|}t||||j||j |j"<00>S)z9Fully vendored version of getfullargspec from Python 3.3.z is not a Python functionz is not a code objectNr)<12>inspect<63>ismethod<6F>__func__<5F>
2025-02-23 09:07:52 +08:00
isfunction<EFBFBD> TypeError<6F>__code__<5F>iscode<64> co_argcount<6E> co_varnames<65>co_kwonlyargcount<6E>list<73>co_flags<67>
2025-08-29 00:34:40 +08:00
CO_VARARGS<EFBFBD>CO_VARKEYWORDSr"<00> __defaults__<5F>__kwdefaults__r.) <09>func<6E>co<63>nargs<67>names<65>nkwargsr$r)r&r's r1<00>inspect_getfullargspecrHDs7<00><00><0F><17><17><04><1D><13>}<7D>}<7D><04> <12> <1D> <1D>d<EFBFBD> #<23><17>4<EFBFBD>(<28>";<3B><<3C>=<3D>=<3D> <0A><1D><1D>B<EFBFBD> <12>><3E>><3E>"<22> <1D><17>2<EFBFBD>&<26> 5<>6<>7<>7<> <0E>N<EFBFBD>N<EFBFBD>E<EFBFBD> <0E>N<EFBFBD>N<EFBFBD>E<EFBFBD><10>"<22>"<22>G<EFBFBD> <0F><05>f<EFBFBD>u<EFBFBD> <0A> <1E>D<EFBFBD><15>e<EFBFBD>E<EFBFBD>E<EFBFBD>G<EFBFBD>O<EFBFBD>4<>5<>J<EFBFBD> <09>W<EFBFBD><14>E<EFBFBD><12>G<EFBFBD> <09>{<7B>{<7B>W<EFBFBD>'<27>'<27>'<27><14>.<2E>.<2E><15>'<27><07><15><01> <09><05> <10>E<EFBFBD> <09>{<7B>{<7B>W<EFBFBD>+<2B>+<2B>+<2B><12><0E><0E>u<EFBFBD>%<25><05> <16> <0C><0F> <0A> <0C><19><19><12> <0C><1B><1B> <0C><1C><1C> <06>r0c<01>.<00>tjd<01><02>S)NF)<01>usedforsecurity<74><02>hashlib<69>md5r/r0r1<00>md5_not_for_securityrNms<00><00><16>{<7B>{<7B>5<EFBFBD>1<>1r0c<01>*<00>tj<00>S<00>NrKr/r0r1rNrNrs<00><00><16>{<7B>{<7B>}<7D>r0)<01>metadatac<01>H<00>|j<00>}|j|<01>|SrP)<02>copy<70>update<74><02>a<>bs r1<00>
dict_unionrX<00>s<00><00> <0A>F<EFBFBD>F<EFBFBD>H<EFBFBD><01> <09><08><08><11> <0B><10>r0)<01> AsyncIteratorc<00><01><>K<00>t|t<00>stdt|<00><00><00><02><00>t|<00>j} ||<00><00>d{<00><03><03>S7<00>#t
2025-02-23 09:07:52 +08:00
$r|t ur<01>|cYSwxYw<01>w)z9vendored from https://github.com/python/cpython/pull/8895z%anext expected an AsyncIterator, got N)<07>
2025-08-29 00:34:40 +08:00
isinstancerYr7<00>type<70> __anext__<5F>StopAsyncIteration<6F> _NOT_PROVIDED)<03>async_iterator<6F>default<6C>anxts r1<00>anext_rc<00>su<00><00><><00><1A>.<2E>-<2D>8<><1B>7<><04>^<5E>8L<38>7M<37>N<><0E> <0E><14>N<EFBFBD>#<23>-<2D>-<2D><04> <1B><1D>n<EFBFBD>-<2D>-<2D> -<2D>-<2D><>!<21> <1B><16>-<2D>'<27><15><1A>N<EFBFBD> <1B>s;<00>=A,<01> A<00> A<04> A<00>A,<01>A<00>A)<03>&A,<01>(A)<03>)A,c<01><><00>tj<00>}tjs t |d<01>r|j |<00><02>S|j |d<03>S)N<>select)<01>groupr/)<07>importlib_metadata<74> entry_points<74>typing<6E> TYPE_CHECKING<4E>hasattrre<00>get)rf<00>eps r1<00>importlib_metadata_getrn<00>sD<00><00> <1B> (<28> (<28> *<2A>B<EFBFBD> <0A><1B><1B>w<EFBFBD>r<EFBFBD>8<EFBFBD>4<><11>y<EFBFBD>y<EFBFBD>u<EFBFBD>y<EFBFBD>%<25>%<25><11>v<EFBFBD>v<EFBFBD>e<EFBFBD>R<EFBFBD> <20> r0c<01>$<00>|jd<01>S)Nzlatin-1)<01>encode)<01>ss r1rWrW<00>s<00><00> <0C>8<EFBFBD>8<EFBFBD>I<EFBFBD> <1E>r0c<01>J<00>tj|jd<01><00>S<00>N<>ascii)<03>base64<36> b64decoderp<00><01>xs r1rvrv<00>s<00><00> <11> <1B> <1B>A<EFBFBD>H<EFBFBD>H<EFBFBD>W<EFBFBD>-<2D> .<2E>.r0c<01>J<00>tj|<00>jd<01>Srs)ru<00> b64encode<64>decoderws r1rzrz<00>s<00><00> <11> <1B> <1B>A<EFBFBD> <1E> %<25> %<25>g<EFBFBD> .<2E>.r0c<01>(<00>|j|d<01><02>S)N<>backslashreplace)<01>errors)r{)<02>text<78>encodings r1<00>decode_backslashreplacer<65><00>s<00><00> <0F>;<3B>;<3B>x<EFBFBD>(:<3A>;<3B> ;<3B>;r0c<01><00>||kD||kz
SrPr/rUs r1<00>cmpr<70><00>s<00><00> <0A><01>E<EFBFBD>a<EFBFBD>!<21>e<EFBFBD> <1C>r0c<01><><00>t|t<00>r|St|dd<02>dk(r+t|<00>j dd<05>j dd<05>St|t
<00>rA|j d|fvrt|j<00>S|j dz|jzSt|tj<00>rt|<00>j dd<05>St|<00>j dd<05>S) zvendored from python 3.7r,Nriztyping.<2E><00>~<7E>builtins<6E>.)
r[<00>str<74>getattr<74>repr<70>replacer\r,r-rir)<02>
annotation<EFBFBD> base_modules r1<00>_formatannotationr<6E><00>s<><00><00><12>*<2A>c<EFBFBD>"<22><19><19><0E>z<EFBFBD><<3C><14>.<2E>(<28>:<3A><13>J<EFBFBD><1F>'<27>'<27> <09>2<EFBFBD>6<>><3E>><3E>s<EFBFBD>B<EFBFBD>G<>G<><11>*<2A>d<EFBFBD>#<23> <15> <20> <20>Z<EFBFBD><1B>$=<3D> =<3D><17>
2025-02-23 09:07:52 +08:00
<EFBFBD>/<2F>/<2F>0<> 0<><19>$<24>$<24>s<EFBFBD>*<2A>Z<EFBFBD>-D<>-D<>D<>D<> <13>J<EFBFBD><06><0E><0E> /<2F><13>J<EFBFBD><1F>'<27>'<27><03>R<EFBFBD>0<>0<> <0F>
2025-08-29 00:34:40 +08:00
<EFBFBD> <1B> #<23> #<23>C<EFBFBD><12> ,<2C>,r0r/c<01> <00>d|zS)N<>*r/<00><01>names r1<00><lambda>r<><00>s<00><00>s<EFBFBD>T<EFBFBD>zr0c<01> <00>d|zS)Nz**r/r<>s r1r<>r<><00>s<00><00>T<EFBFBD>D<EFBFBD>[r0c<01><00>dt|<00>zS)N<>=)r<>)<01>values r1r<>r<><00>s <00><00>c<EFBFBD>D<EFBFBD><15>K<EFBFBD>6Gr0c<01><00>dt|<00>zS)Nz -> )r<>)rs r1r<>r<><00>s <00><00>v<EFBFBD><03>D<EFBFBD> <09>7Ir0c <01>d<00><06><07> <0C>|xsi}<05>xsi<00><06><06> <0C>fd<01>} g}|rt|<00>t|<03>z
2025-02-23 09:07:52 +08:00
}nd}t|<00>D]6\}}| |<11>}|r||k\r||
|||z
<00>z}|j|<12><00>8|<01>|j|| |<01><00><00>n|r|jd<03>|r4|D]/}| |<13>}|r||vr||
||<00>z }|j|<12><00>1|<02>|j| | |<02><00><00>ddj|<0E>zdz}d<07>vr|| <00> <0C>d<00><00>z }|S)a>Copy formatargspec from python 3.7 standard library.
Python 3 has deprecated formatargspec and requested that Signature
be used instead, however this requires a full reimplementation
of formatargspec() in terms of creating Parameter objects and such.
Instead of introducing all the object-creation overhead and having
to reinvent from scratch, just copy their compatibility routine.
Ultimately we would need to rewrite our "decorator" routine completely
which is not really worth it right now, until all Python 2.x support
is dropped.
2025-08-29 00:34:40 +08:00
c<01>B<00><03><00>|<00>}|<00>vr|d<00><03>|<00>zz }|S)Nz: r/)<05>arg<72>resultr<00>formatannotation<6F> formatargs <20><><EFBFBD>r1<00>formatargandannotationz5inspect_formatargspec.<locals>.formatargandannotation<6F>s3<00><><00><1A>3<EFBFBD><1E><06> <0E>+<2B> <1D> <12>d<EFBFBD>-<2D>k<EFBFBD>#<23>.><3E>?<3F>?<3F> ?<3F>F<EFBFBD><15> r0<00><><EFBFBD><EFBFBD><EFBFBD>r<EFBFBD><00>(z, <20>)<29>return)<04>len<65> enumerate<74>append<6E>join)r$r&r'r(r)r*rr<><00> formatvarargs<67> formatvarkw<6B> formatvalue<75> formatreturnsr<73>r<><00>specs<63> firstdefault<6C>ir<69><00>spec<65> kwonlyargr<67>s `` ` r1<00>inspect_formatargspecr<63><00>sW<00><><00>:$<24>)<29>r<EFBFBD>N<EFBFBD><1D>#<23><12>K<EFBFBD><16> <0F>E<EFBFBD><0F><1A>4<EFBFBD>y<EFBFBD>3<EFBFBD>x<EFBFBD>=<3D>0<> <0C><19> <0C><1B>D<EFBFBD>/<2F><06><01>3<EFBFBD>%<25>c<EFBFBD>*<2A><04> <13><01>\<5C>)<29><17>+<2B>h<EFBFBD>q<EFBFBD><<3C>/?<3F>&@<40>A<>A<>D<EFBFBD> <0A> <0C> <0C>T<EFBFBD><1A> "<22> <0F><1A> <0A> <0C> <0C>]<5D>#9<>'<27>#B<>C<>D<> <15> <11>L<EFBFBD>L<EFBFBD><13> <1D><11>#<23>I<EFBFBD>)<29>)<29>4<>D<EFBFBD><1D>)<29>~<7E>"=<3D><14> <0B>N<EFBFBD>9<EFBFBD>$=<3D>><3E>><3E><04> <11>L<EFBFBD>L<EFBFBD><14> <1E> $<24>  <0A><18> <0A> <0C> <0C>[<5B>!7<><05>!><3E>?<3F>@<40> <10>4<EFBFBD>9<EFBFBD>9<EFBFBD>U<EFBFBD>#<23> #<23>c<EFBFBD> )<29>F<EFBFBD><0F>;<3B><1E><0E>-<2D> 0<><1B>X<EFBFBD>1F<31> G<>H<>H<><06> <11>Mr0c<01>Z<00>tj|<00>rtj|<00>SgS)z<>Return a sequence of all dataclasses.Field objects associated
2025-02-23 09:07:52 +08:00
with a class as an already processed dataclass.
The class must **already be a dataclass** for Field objects to be returned.
2025-08-29 00:34:40 +08:00
)<03> dataclasses<65> is_dataclass<73>fields)<01>clss r1<00>dataclass_fieldsr<73>s(<00><00><13><1F><1F><03>$<24><1A>!<21>!<21>#<23>&<26>&<26><11> r0c<01><><00>tj|<00>r]t<00>}|jD]}|j t |<02><00><00>tj |<00>D<00>cgc] }||vs<01>|<03><02> c}SgScc}w)z<>Return a sequence of all dataclasses.Field objects associated with
2025-02-23 09:07:52 +08:00
an already processed dataclass, excluding those that originate from a
superclass.
The class must **already be a dataclass** for Field objects to be returned.
2025-08-29 00:34:40 +08:00
)r<>r<><00>set<65> __bases__rTr<>r<>)r<><00> super_fields<64>sup<75>fs r1<00>local_dataclass_fieldsr<73> so<00><00><13><1F><1F><03>$<24>47<34>E<EFBFBD> <0C><16>=<3D>=<3D>C<EFBFBD> <18> <1F> <1F> 0<><13> 5<> 6<>!<21>&<26>-<2D>-<2D>c<EFBFBD>2<>L<>2<>a<EFBFBD>a<EFBFBD>|<7C>6K<36><01>2<>L<>L<><11> <09><>Ms <00>" A5<04>,A5)rCzCallable[..., Any]r<>r")r<>r)rV<00>dictrWr<>r<>r<>)rxr<>r<><00>bytes)rxr<>r<>r<>)rr<>r<>r<>r<>r<>rP)r$r#r&r%r'r%r(zOptional[Sequence[Any]]r)zOptional[Sequence[str]]r*zOptional[Mapping[str, Any]]rzMapping[str, Any]r<><00>Callable[[str], str]r<>r<>r<>r<>r<><00>Callable[[Any], str]r<>r<>r<>r<>r<>r<>)r<>z Type[Any]r<>z Iterable[dataclasses.Field[Any]])K<>__doc__<5F>
__future__rrur<>rLr3<00>operator<6F>platform<72>sysrirrrrrr r
r r r rr<00> version_info<66>py314b1<62>py314<31>py313<31>py312<31>py311<31>py310<31>py39<33>py38<33>python_implementation<6F>pypy<70>cpython<6F>
2025-02-23 09:07:52 +08:00
startswith<EFBFBD>win32<33>osx<73>machine<6E>lower<65>arm<72>maxsize<7A>is64bit<69>bool<6F>has_refcount_gc<67>
2025-08-29 00:34:40 +08:00
attrgetter<EFBFBD> dottedgetterr<00>
NamedTupler"rHrNrj<00> importlibrQrg<00>or_rX<00>anextrc<00>objectr_<00>collections.abcrYrnrWrvrzr<>r<>r<>r<>r<>r<>r<>r/r0r1<00><module>r<>s<><00><01>8<>"<22> <0A><12><0E><0E><0F><0F>
<EFBFBD> <0A><16><1B><17><1B><17><1A><1B><1B><16><18><17><1A> <0E>
<1A>
<1A>3<>
3<EFBFBD><07> <0B><18><18>G<EFBFBD>#<23><05> <0B><18><18>G<EFBFBD>#<23><05> <0B><18><18>G<EFBFBD>#<23><05> <0B><18><18>G<EFBFBD>#<23><05> <0B><18><18>G<EFBFBD>#<23><05>
2025-02-23 09:07:52 +08:00
<EFBFBD><17><17>6<EFBFBD>!<21><04>
<EFBFBD><17><17>6<EFBFBD>!<21><04>%<25>x<EFBFBD>%<25>%<25>'<27>6<EFBFBD>1<><04>
(<28>(<28>
(<28>
(<28>
*<2A>i<EFBFBD>
7<EFBFBD><07> <0B> <0C> <0C><1F><1F><05>&<26><05> <09>l<EFBFBD>l<EFBFBD><1D><1D>h<EFBFBD>'<27><03> <0A>!<21><18>!<21>!<21>#<23>)<29>)<29>+<2B>+<2B><03>
<0A>+<2B>+<2B><05>
<1D><07><16>w<EFBFBD>-<2D><0F><17>"<22>"<22> <0C><0F><07>4<EFBFBD>(<28><05> <20>&<26>#<23>#<23> <20>#<06>L<08>2<>
<1D>
<EFBFBD><17><17>4<EFBFBD>8<><1D>
<EFBFBD><17><17>4<EFBFBD><19><1C><1C>J<EFBFBD><11>  <09> <12>F<EFBFBD><1A>H<EFBFBD>M<EFBFBD>-<2D>-:<3A> <1B> !<21><1F>/<2F>/<2F><<3C><1D>-<2D>&"<22><1F>(,<2C>*,<2C>24<32>%'<27>&)<29>*A<>(@<40>(G<>*I<>-><3E>E<12>
<13>E<12> <1A>E<12> <19>E<12>&<26> E<12>
2025-08-29 00:34:40 +08:00
(<28> E<12> 0<> E<12>#<23>E<12>$<24>E<12>(<28>E<12>&<26>E<12>&<26>E<12>(<28>E<12>+<2B>E<12> <09>E<12>P <12>r0