TL i/PddlZddlmZddlmZddlmZddlmZddl m Z ddl m Z m Z mZmZddlmZmZmZdd lmZmZmZdd lmZdd lmZdd ZGd deZdZdZ dZ!GddZ"Gdde"Z#dZ$Gdde#Z%Gdde#Z&Gdde"Z'd dZ(dZ)y)!N) zip_longest)tree)debug)PushBackIterator)analysis)LazyKnownValueLazyKnownValues LazyTreeValueget_merged_lazy_value) ParamNameTreeNameDefinitionAnonymousParamName) NO_VALUESValueSetContextualizedNode)iterable)%inference_state_as_method_param_cachec|dkDry|D]8} |j}|D]}t|j|dz!:y#t$rYGwxYw)z"Helper method for static analysis. N) py__iter__try_iter_contentinferAttributeError)typesdepthtypf lazy_values ^/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/jedi/inference/arguments.pyrrsn rz @ @A c @  !1!1!3UQY? @ @   s A AAc eZdZy) ParamIssueN)__name__ __module__ __qualname__r r"r""sr'r"cfd}|S)aN Transforms a function or method with arguments to the signature that is given as an argument clinic notation. Argument clinic is part of CPython and used for all the functions that are implemented in C (Python 3.7): str.split.__text_signature__ # Results in: '($self, /, sep=None, maxsplit=-1)' cfd}|S)Nc tt|j|}|g|S#t$r tcYSwxYwN)tupleiterate_argument_clinicinference_stater"r)value argumentsargs clinic_stringfuncs r wrapperz?repack_with_argument_clinic..decorator..wrapper2sR *4))!E)D)) !   !s ,>>r&)r3r4r2s` r decoratorz.repack_with_argument_clinic..decorator1s *r'r&)r2r5s` r repack_with_argument_clinicr6&s  r'c#Ktt|}t|j}t |D] \}\}}}} | dk(rYg} |D]-\} } | |j | | fn| j | /ttj|| g| j| dk(r tt|d\} } | tjdt| )|s'tjd|t||t| t n| j#} | s|stjd|t| yw)z;Uses a list with argument clinic information (see PEP 436).rN)NNzAKeyword arguments in argument clinic are currently not supported.z4TypeError: %s expected at least %s arguments, got %sz$argument_clinic "%s" not resolvable.)list_parse_argument_clinicrunpack enumerate push_backappendrr FakeTupleNotImplementedErrornextrwarningr"lenrr)r.r0r2 clinic_argsiteratorinameoptional allow_kwargsstars lazy_valueskeyargument value_sets r r-r-BsJ-m<=K 0 0 23H4=k4J0 0D(L% A:K!) - X?&&X7""8,  - H.. LMN N   aZ%' 'X|4 X ? MM] ^   H MMPK 0! 5 !)!1Ix~~7G  MM@$ G ?sE E c#PKd}d}|rtjd|}|t|jdd}|jdsd}I|xst |jd}|jd}|j d}||d}||||f|rd}|ryyw)NFz%(?:(?:(\[),? ?|, ?|)(\**\w+)|, ?/)\]*rr8Tr*)rematchrCgroupboolcount)stringrIrHrRwordrJs r r:r:isLH  A6JEKKN+,-{{1~L 3tEKKN3{{1~ 3EF|X|U33 L! s B!B&$B&ceZdZddZdZy)_AbstractArgumentsMixinNctr+r@)selffuncdefs r r;z_AbstractArgumentsMixin.unpack!!r'cgSr+r&r\s r get_calling_nodesz)_AbstractArgumentsMixin.get_calling_nodess r'r+)r#r$r%r;rar&r'r rYrYs "r'rYceZdZdZdZdZy)AbstractArgumentsN)r#r$r%context argument_nodetrailerr&r'r rcrcsGMGr'rcc#K|y|jdk7r'|jdk(r|jddvsd|fyt|j}|D]}|dk(r |dvr*t|d}|Jt |j |f7|jdk(r_|jddvrNt |jdk(sJt |jdj |jdfd|fyw)NarglistrMr)rPz**,r8r)typechildreniterrArCr/)rhrEchildcs r unpack_arglistros||y LLJ &7+;+;A+>++MjG$$%H  C<  k !Xt$A= =ekk"A% % ZZ: %q![0u~~&!+ ++ennQ'--.q0AA AU(N sC?DcXeZdZd dZeedZd dZdZdZ dZ dZ y) TreeArgumentsNc<||_||_||_||_y)zS :param argument_node: May be an argument_node or a list of nodes. N)rerd_inference_staterf)r\r.rdrerfs r __init__zTreeArguments.__init__s"+ / r'c||i|Sr+r&)clsr1kwargss r create_cachedzTreeArguments.create_cachedsD#F##r'c #Kg}t|jD]\}}|dk(rw|jj|}|Dcgc]}t |j|||}}t t |D]"}dt|D cgc]} | |  c} f$|dk(rC|jj|}|D]"} t|j| ||Ed{$|jdk(r|j} t| dk(r9|j| djt|j| df-|jd} | jdk(r| jd} tj |j"|j| |jd} dt%| fdt|j|f|Ed{ycc}wcc} w77w)Nrr8rMrcomp_for)defining_contextsync_comp_for_node entry_node)rorerd infer_node_iterate_star_argsr9rr _star_star_dictrjrkrCr>r/r rGeneratorComprehensionrsr)r\r] named_args star_countelarraysa iteratorsvaluesvdctrn sync_comp_forcomps r r;zTreeArguments.unpacks ,T-?-?@ @NJQ004&,.!"0 aWM. ."; #:;F 5$*> 11-1\\/<'){{1~   #N4$888 dllB ???? @FA.= O. sDAG6G'$ G6G, G,A G6G1DG6!G4"G64G6c#Kt|jD]J\}}d}|jdk(r-t|jdk(r|jddd\}}|||fLyw)NrMrzr8)rorerjrCrk)r\rrMdefaults r _as_tree_tuple_objectsz$TreeArguments._as_tree_tuple_objectsso$243E3E$F 0 JG}} *x(()Q.(0(9(9#A#(>%HgGZ/ /  0sA$A&c#K|jD];\}}}|rt|tjs$t |j |=ywr+)r isinstancerNamer rd)r\rGrrs r iter_calling_names_with_starz*TreeArguments.iter_calling_names_with_starsI)-)D)D)F 9 %D':Zdii%@$T\\48 8  9sAAcPd|jjd|jdSN) __class__r#rer`s r __repr__zTreeArguments.__repr__s!^^44d6H6HIIr'c>g}|}||vrt|tsn|j|tt |j D]n}|j }t|dk7rnNt|dtrgcSt|dtsn"|dj}|j}n||vr|j!t|j|jgS|j!t|j|jgSgS)Nrr)rrqr>reversedr9rgotorCrr get_executed_param_namer0rerrdrf)r\old_arguments_listr0 calling_namenamesexecuted_param_names r razTreeArguments.get_calling_nodess 11i7  % %i 0 (i.T.T.V)W X  $))+u:?eAh(:;I!%(I6&+Ah&F&F&H#/99   11&  " " .&y'8'8):Q:QRS S    (&y'8'8):K:KLM M r'r+) r#r$r%rt classmethodrrxr;rrrrar&r'r rqrqsA*,$-$%N09Jr'rqc eZdZdZddZdZy)ValuesArgumentsc||_yr+) _values_list)r\ values_lists r rtzValuesArguments.__init__s 'r'Nc#LK|jD]}dt|fywr+)rr )r\r]rs r r;zValuesArguments.unpacks+'' 0F// / 0s"$cPd|jjd|jdSr)rr#rr`s r rzValuesArguments.__repr__s!^^44d6G6GHHr'r+)r#r$r%rtr;rr&r'r rr s(0Ir'rcVeZdZdZedZedZedZd dZdZ dZ y) TreeArgumentsWrapperc||_yr+)_wrapped_arguments)r\r0s r rtzTreeArgumentsWrapper.__init__s "+r'c.|jjSr+)rrdr`s r rdzTreeArgumentsWrapper.context&&...r'c.|jjSr+)rrer`s r rez"TreeArgumentsWrapper.argument_node!s&&444r'c.|jjSr+)rrfr`s r rfzTreeArgumentsWrapper.trailer%rr'Nctr+r[)r\r3s r r;zTreeArgumentsWrapper.unpack)r^r'c6|jjSr+)rrar`s r raz&TreeArgumentsWrapper.get_calling_nodes,s&&88::r'cPd|jjd|jdSr)rr#rr`s r rzTreeArgumentsWrapper.__repr__/s!^^44d6M6MNNr'r+) r#r$r%rtpropertyrdrerfr;rarr&r'r rrsS,//55//";Or'rc#K|jds7|5d|jjd|}tj|d|| |j }|Ed{y7#t $rYywxYww)N__iter__ TypeError: z,() argument after * must be a sequence, not ztype-error-starmessage)py__getattribute__rGr/raddrr)rdarray input_noder]miter_s r rr3su  # #J /  <<%%u.A LL"3Z K  7    s6A A9 A* A9"A(#A9* A63A95A66A9c@ddlm}t||r|jjdk(riSt|t j r|jdk(r|jS|5d|jjd|}tj|d||iS)Nr)CompiledInstancedictrz* argument after ** must be a mapping, not ztype-error-star-starr) jedi.inference.value.instancerrrG string_namerSequence array_typeexact_key_itemsr/rr)rdrrr]rrs r rrBs>%)*uzz/E/E/O E8,, -%2B2Bf2L$$&&  <<%%u.A LL"8*a P r')rr+)*rQ itertoolsr parso.pythonrjedirjedi.inference.utilsrjedi.inferencerjedi.inference.lazy_valuerr r r jedi.inference.namesr r rjedi.inference.base_valuerrrjedi.inference.valuerjedi.inference.cacherr Exceptionr"r6r-r:rYrcrorqrrrrr&r'r rs !1#))RRMM)F@"  8$N ,/ 2d%dN I' IO2O4  r'