L i'ddlmZddlmZddlmZddlmZddlm Z m Z m Z ddl m Z ddlmZmZmZmZmZmZmZmZmZmZerddlmZmZ dA dBd Zed Gd dZed GddZed GddeZed GddZ ed Gdde Z!ed GddZ"ed GddZ#ed GddZ$ed GddZ%ed Gdd Z&d!d"dCd#Z'dDd$Z(d!d d% dEd&Z)dFd'Z*dGd(Z+d!d!d) dHd*Z,d!d!d) dId+Z-dJd,Z.dKd-Z/dKd.Z0dLd/Z1dMd0Z2 dN dOd1Z3hd2Z4dPd3Z5dPd4Z6d d5 dQd6Z7d d7 dRd8Z8d d7 dSd9Z9d d7 dTd:Z:d;dd>d?Z;d d7 dUd@Z zdef (, ): ...Prselfc3(K|] }d|d yw)z ,N).0args Y/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/torchgen/api/python.py z,format_function_signature..s -CDQ- -s c38K|]}t|dkyw)rN)len)r#lines r%r&z,format_function_signature..s -t3t9? -z ...z # fmt: skip ...) isinstancelisttuplejoinr)all removesuffix)name arguments return_typesigliness r%format_function_signaturer7s i$ /)$ *5*AD &rK a ),-Q{m5 AC 3x2~Y1,i0@I0M  tfA  -9 -  K= E ))E C -u --    F #&> >>T)frozenceZdZUded<y) PythonReturnstuple[Return, ...]returnsN__name__ __module__ __qualname____annotations__r"r8r%r;r;s r8r;c`eZdZUded<ded<ded<ded<dd d dd Zddd  dd Zy)PythonArgumentstrr2rtype str | Nonedefault default_initFTmethodsymintc2t|j|jddjdd}|j}|dk(r|dvr|sd}|j5ddddd j |j|j}|d |d |S|d |S) NrLzconst rz &r)TensorNumberinputNone)nullptr::std::nullopt std::nullopt{} =)argument_type_strrFreplacer2rHget)rrKrLtype_strr2rHs r% argument_strzPythonArgument.argument_strs dii 7 WXr " WT2   yy 6>h*>>vD << #!"( &  c$,, -  Zqay1 1Zq' 'r8rK deprecatedc 8t|j}|j}|dk(r |dk(r|s|sd}|dk(r|dz }|dk(r|dk(r|s|djdd}|xr!t |t xr|j d k(}|j |st |jtr|jjttjk(r|j jd rg|j jd rLd d jtt j"|j ddj%dzdz}n-d d d d dddj'|j |j }|d|d|S|d|S)NrrOrQfrom_out | None | None | NonerR{}rrr!rcontiguous_formatper_tensor_affine)rSrTrUrVzc10::MemoryFormat::ContiguouszQScheme::PER_TENSOR_AFFINE:  = )argument_type_str_pyirFr2rZr,PythonOutArgumentrHrelemr r int startswithendswithr/maprEstripsplitr[)rrKr_r\r2treat_as_no_defaultrHs r%argument_str_pyizPythonArgument.argument_str_pyis)3yy 6>h(26*D 6> CKD 5=X1*"7+334DiPH  '4!23 ' &  << #,?499h/IINNhvzz&::LL++C0LL))#.$))C 4<<"3E3K3KC3P$QRRUXX &&,$* 5H2E #dllDLL1V2hZs7)4 4V2hZ( (r8N)rKboolrLryreturnrE)rKryr_ryrzrE)r?r@rArBr]rxr"r8r%rDrDsJ I J .34(6!&%0)0)370) 0)r8rDc*eZdZUded<eddZy)rotuple[PythonArgument, ...]outputsc>|syt|}|dk(r*t|dj|djdd|S|dkDrQt d|Drt d|tdt ttj|dd|Std) NrhrrR)r2rFrHrIr}c3RK|]}|jj !ywNrFis_tensor_liker#as r%r&z1PythonOutArgument.from_outputs..^s @1qvv,,..@s%'zUnsupported output type: rcz!Unexpected PythonOutArgument size) r)ror2rFany RuntimeErrorrr r rOAssertionError)r}sizes r% from_outputszPythonOutArgument.from_outputsOs7| 19$QZ__QZ__!  AX@@@"%>wi#HII$hv}}5t<!  ABBr8N)r}r|rzPythonOutArgument | None)r?r@rArB staticmethodrr"r8r%roroFs('CCr8roceZdZUded<ded<ded<ded<ded <ded <d ed <edd Zddd ddZddZddZdddddZ ddddZ ddddZ y) PythonSignaturerEr2r| input_args input_kwargsr output_argsr;r=tensor_options_argsryrKcy)NFr"rs r%r_zPythonSignature.deprecatedsr8F) skip_outputsskip_tensor_optionscg}|j|j|j|j|j|s|j |j|s|j|j t |Sr)extendrrrappendrr.)rrrresults r%r3zPythonSignature.argumentssj<> doo& d''(    ' MM$** +" MM$22 3V}r8c4t|jSr)r)r3rs r%arguments_countzPythonSignature.arguments_counts4>>#$$r8cXt|jt|jzSr)r)rrrs r% output_idxzPythonSignature.output_idxs!4??#c$*;*;&<<N>N(O O q&d+ ;;  ! !!V ,(NKPP;% s#D#Nrzry)rryrryrzz.tuple[PythonArgument | PythonOutArgument, ...])rzrqrryrLryrzrErryrzrErryrzrG) r?r@rArBpropertyr_r3rrrrrr"r8r%rrks I+*-,))43 L ', # BF  7 %=5:$ ;9>Q @E Qr8rc`eZdZUded<ded<eddZddddd Zdd dd Zdd dd Zy )PythonSignatureDeprecatedrdeprecated_schematuple[str, ...]deprecated_args_exprscy)NTr"rs r%r_z$PythonSignatureDeprecated.deprecatedr8FTrc8tj|||dzS)Nrz |deprecated)rr)rrrLs r%rz'PythonSignatureDeprecated.signature_strs+  ) )< *   r8rc2|j|}|Dcgc]}|j|jd!}}t|j}t||kDr|j |dt |}t|j||Scc}w)NrTr^rrrs r%rz+PythonSignatureDeprecated.signature_str_pyis~~<~8MQ% HIA  dkkd  C% % doo. ~  0  ! !/3 7%d+ (NKPP% s$Bcyrr")rrs r%rz2PythonSignatureDeprecated.signature_str_pyi_vararg rr8Nrrrr) r?r@rArBrr_rrrr"r8r%rrsG&%+* 5:$ 9> Q@Er8rc"eZdZUded<ded<y)!PythonSignatureNativeFunctionPairr signaturerfunctionNr>r"r8r%rrsr8rcJeZdZUded<ded<ded<e d dZy) PythonSignatureGrouprrrbasezNativeFunction | Noneoutplacec:|"t|j|jdS|jjj }|jj |d<tt |jdi||j|jS)N)rrrrr")rrr__dict__copyrrF)cls functionalrcsignature_kwargss r% from_pairszPythonSignatureGroup.from_pairs1s ;'$..(( ==11668  4 4 ./$)d3==)=,<=$$\\  r8N)rrrcz(PythonSignatureNativeFunctionPair | Nonerzr)r?r@rArB classmethodrr"r8r%rr$sH  $# 5 6     r8rc,eZdZUded<ded<ded<y)DispatchLambdaArgumentrEr2r\ry is_out_argNr>r"r8r%rrTs IMr8rcHeZdZUded<ded<ded<ded<ed dZy ) PythonArgParserOutputExprrEr2exprrqindexrDargumentc"d|jdS)Nz _r.isNone(r)rrs r% is_none_exprz&PythonArgParserOutputExpr.is_none_exprosDJJr"r8r%rrys  r8rFrcDtj||jS)Nr)r from_native_functionr)frKs r%_cpp_signaturers  1 1!F C M MMr8cF|jjjduSr)funcr3tensor_options)rs r%has_tensor_optionsrs 66   * *$ 66r8 simple_typerLct|trQ|jtjk(ry|jtj k(ry|jtj k(ry|jtjtjtjtjtjtjtjtjtjtj tj"tj$tj&tj(fvr|jjSt|t*rt-|j.||}|dSt|t0r6|s |j2nd}t |j.dk(r|j2Jd|j2dSt |j.d k(r |d |d Sd St |j.d k(r|r |d|d SdS|d |d Sd St |j.dk(r |d|d SdSt |j.dk(r |d|d SdSt |j.dk(r|ryyt |j.dk(r |d|d SdSt-|j.||}d|dSt5dt7|)Nint64_tdoublezc10::string_viewr?ryz::std::arrayrqz IntArrayRef[] IntArrayRefrzSymIntArrayRef[SymIntArrayRefrOz TensorList[ TensorListScalarz ScalarList[ ScalarListTensor?z"c10::List<::std::optional>z*const c10::List<::std::optional> &Dimnamez DimnameList[ DimnameListz ArrayRef<unrecognized type )r,r r2r rqfloatrErOryQSchemer ScalarType GeneratorStorageLayoutDevice DeviceIndex MemoryFormatrStreamrrrYrprrrrepr)trrLrprs r%rYrYs!X 66VZZ  VVv|| # VVvzz !% VV MM KK NN MM       NN MM MM       NN MM MM  "66;;  A| $ [Pqz Ax (qvvd qvv;& 66% %%'xq1 1 [E !-1-=\$q) P= P [H $151AodV1-GW261AdV1-T}T [H $,0,<[a( N, N [H $,0,<[a( N, N [I %;C [I %-1-=\$q) P= P [P4&"" +DG95 66r8cp|j}|$t|jdk7r |jSy)Nry) is_list_likerErpr)rls r%argument_type_sizers. A}QVV.vv r8c t|j|j|jDt t t j|j|jddSddS)NFrNr2rFrHrI)rDr2rFrHrEr r default_expr)rs r%rrsg  VV VVyy$ !#"2"2199affU"ST U    r8)rKpyicHt|j|j||S)N)category_overriderKr )signature_from_schemarr)rrKr s r%rrs$ ! !"5"5f# r8c 4 g}|jjj|sEjj/|j jjj |jjj |jjj|jjj|jjjjjDchc]}|jc}jjDchc]}|jc}jjDchc]}|jc}ttt tfd|}ttt tfd|}ttt tfd|}t!djj"D} t!dj%Dr t'dt!dj(D} t+j} |dk(xs| xr| } |d vxs$| j-d xs| j/d } |d k(}g}| s| ra|s^dfd }|j t1dt3t5t6j8d| rdn|d|j t1dt3t5t6j:d| rdn|d|j t1dt3t5t6j<d| rdn |dxsd|j t1dt3t5t6j>dd|j t1dt3t5t6j>ddtAj(}tCtEjj||tFjI|t|||Scc}wcc}wcc}w)Nc |jvSrr2)r input_arg_sets r%z'signature_from_schema..saff 6Mr8c |jvSrr)rkwarg_only_sets r%rz'signature_from_schema..sqvv'?r8c |jvSrr)r out_arg_sets r%rz'signature_from_schema..s166[3Hr8c3PK|]}|jj ywrrrs r%r&z(signature_from_schema..(s"$%$&c3:K|]}|jdk(yw) requires_gradNrrs r%r&z(signature_from_schema..+s L166_ $ LszTargument named requires_grad is reserved, should not explicitly add it in the schemac3PK|]}|jj ywrrr#rs r%r&z(signature_from_schema..2sJAFF113Jrfactory)newlikenew__likedummycjj}|yt||}|j|jdk(ryt j |j|j dS)NrRFrN)r3rgetattrrHrr rF)r2 topt_argsrrs r%topt_default_initz0signature_from_schema..topt_default_initBs\55I  4(Ayy AII$7##AIIqvveD Dr8dtyperRr layoutdevicez$torch::tensors::get_default_device() pin_memoryFalser)r=)r2rrrrr=rK)r2rErzrG)%rr3pre_self_positionalself_argrrpost_self_positionalpre_tensor_options_kwarg_onlypost_tensor_options_kwarg_onlyrcflat_positionalr2flat_kwarg_onlyr.rtfilterr flat_non_outschema_order_arguments ValueErrorr=rrrrsrDrr r rrrryr;rrEror)rrrKr rrrrr}has_tensor_input_arghas_tensor_returnr2is_factory_functionis_like_or_new_functionis_dummy_functionrr)r=rrrs` @@@r%rrsDKK223 dnn--9 DNN++445KK334KK<<= KK==>KK""#%)^^%C%CDQVVDM&*nn&D&DEaffEN#'>>#5#56a1666Ks8V,Mt%TUVJ Hf?FGLC&)H$"OPQG)-)D)D Ld.I.I.K LL b  JT\\JJD+y86"66 _, " ??6 " " == ! *W4026@Q E "" !(6+<+<"=>3D9J79S    "" !(6=="9:3D9J89T    "" !(6=="9:/*(3BA   "" !!(6;;"78!    "" $!(6;;"78!   DLL1G   !%227;!"56 WEE6sR  R;Rct|dkstd|DrgStd|Dr td|Dcgc]}t |j c}Scc}w)Nrhc38K|]}|jduywrrrs r%r&z'structseq_fieldnames..s@1$@r+c38K|]}|jduywrrrs r%r&z'structseq_fieldnames..s/!qvv~/r+z)Unnamed field is not supported by codegen)r)r0rr9rEr2)r=rs r%structseq_fieldnamesrBsX 7|qC@@@ /w/ /HI I%,-AFF ---sA#cd}t|tr|j}d}d}t|tr |jt j t jfvrd}|jt jk(rd}n|jt jk(rd}n|jt jk(rd}nh|jt jk(rd}nG|jt jk(rd }n&|jt jk(rd }n|jt jk(rd }n|jt jk(rd }n|jt j k(rd }n|jt j"k(rd}n|jt j$k(rd}n`|jt j&k(rd}n?|jt j(t j*t j,fvr|jj}nt|t.rt|jdk(r|j0dnd}n|j3rd}|j0dnd}nt|jdk(rd}nut|jdk(r*|j0t5|j}|d|d}n3t5|j}d|d}nt7dt9||r|dj;dd}|S)NFTr_intz _int | SymInt_floatrEzNumber | _complex_dtype_bool_qscheme_layoutzDeviceLikeType | None memory_formatzstr | EllipsisType | NonezStorage | UntypedStoragerqz _int | _size_sizez*Tensor | tuple[Tensor, ...] | list[Tensor]z!tuple[Tensor, ...] | list[Tensor]rzSequence[_float]rz | Sequence[rz Sequence[rrdre)r,rrpr r2r rqrrrrErrryrrrrrrrOrrrrrrnrrrZ)r add_optionalretrps r%rnrnsxL!\" FF C!X 66fjj&"4"45 5C 66V]] "!C VVv|| #C VVvzz !C VVv}} $%C VVv(( (C VVv{{ "C VVv~~ %C VVv}} $C VVv}} $)C VVv** *!C VVv~~ %-C VVv~~ %,C VV v'7'7G G&&++C Ax qvv;% $%FF$6.GC     L66%=8  [G #$C [H $);(0DF,tfA.C(0DdV1%C/Qy9::Wo%%&6 B Jr8ct|tr*t|j}|dj ddSt|t rG|j tjk(ry|j tjk(ryt|St|trt|j}d|dSt|S)Nrdre_devicerGtuple[z, ...]) r,rreturn_type_str_pyirprZr r2r rrrnr)rinners r%rQrQs!\"#AFF+ (()99EE!X 66V]] " VVv~~ %(+ +!X#AFF+wf%%  ##r8c |jjDcgc]}t|j}}|j}t |jj}|rddj |d}d|d|dg}t ||D]\}}|jdd|d |d g!|jd d d |ddddt|dt|dddg dj |} || fSycc}w)NrPrrzclass rz): # fmt: skipz @propertyz def z (self) -> rz def __new__(z cls,z sequence: r!z ) -> Self: # fmt: skipz ...z n_fields: Final[_int] = z% n_sequence_fields: Final[_int] = z% n_unnamed_fields: Final[_int] = 0zG def __init_subclass__(cls) -> NoReturn: ... # prohibit subclassingrr') r=rQrFr2rBr/ziprr)) rrpython_returnsstructseq_name field_namesseq_typestructseq_def_linesr2ret_type structseq_defs r%returns_structseq_pyir\sD;D;L;L;T;TUa)!&&1UNU^^N&y'8'8'@'@AKDIIn56a8^$AhZ ? "+~> ND(  & &#tfJxj>   """$XJa0-.s;/?.@A7K8H7IJ7Y   "56 $},, gVsC>cJt|jj}|rd|jS|jjDcgc]}t|j}}t |dkDrddj |zdzSt |dk(r|dSycc}w)Nztorch.return_types.rhrPrrrrR)rBr=r2rQrFr)r/)rrWrrUs r%rr9s&y'8'8'@'@AK$Y^^$455;D;L;L;T;TUa)!&&1UNU >Q$))N33c99 >aa   Vs B cRttr j}n |j}t j |j d|d|j }|j jDchc]}|jc}dfd }tt||Scc}w)NF)r3faithfulrLrKcpp_no_default_argsc|j}|jv}jr|jdk(rd}n)tdkxs| }|rddij ||}t |j||S)Nrzconst at::Tensor &rhz at::Tensor & at::Tensor)r2r\r)rFr2rKr)r[r)cpp_argr\rensure_temp_safeout_argspss r%dispatch_lambda_argz1dispatch_lambda_args..dispatch_lambda_args<<\\X- 99/+H #8}1C^ "L#h)&!  r8)rcrrzr) r,rrrrr3r`rcr2r.rt)rfrrLschemacpp_argsrrgres` @r%dispatch_lambda_argsrjns"/0%%}}""11 H+1*:*:*>*>?Q!&&?H , ((3 443@s2B$>void* at::Scalar at::Stream at::QSchemeat::ScalarTypeat::IntArrayRef::std::vector::std::tuple#::std::tuple.::std::tuple2::std::tuple>2::std::tuple6::std::tuple9::std::tuple=::std::tupleA::std::tupleD::std::tupleO::std::tupler::std::tupleryvoidrrrbctd|jjD}tj|dj }|t vr$t|jjd||S)Nc3^K|]%}t|j|jd'ywr)rr2rFrs r%r&z-dispatch_lambda_return_str..s&')*qvvqvvt$'s+-TrNz returns unsupported type ) r.rr=r returns_typecpp_typeSUPPORTED_RETURN_TYPESrr2)rreturns_without_annotation return_strs r%dispatch_lambda_return_strrsp("''./ffnn'"!!".s/aff/scF|dk7xsjjS)Nrc)r is_out_fn)nrs r%rz$cpp_dispatch_exprs..s!u*:(8(8(:r8r) rr3r,rr.r6rrrKr__ne__)rrrirs` r%cpp_dispatch_exprsrs #15"A"K"K"MHE &(A B/h// : 66  ~~#fV]]E23 Lr8rNc|du}|rt|dvrtd|dt|tr|jt j t jt jt jt jfvr$|jjjS|jt jk(r|rdSdS|jt jk(r|rdSdS|jt jk(ry|jt jk(ry|jt j k(r|rd SdS|jt j"k(r|rd Sd S|jt j$k(ry |jt jk(ry |jt j&k(r|rdSdS|jt j(k(rxyt|t*rt|j,dk(ryt|j,dk(ryt|j,dk(ry|s |dvrt/|j,dd|dzSt/|j,|||St|t0rt|j,dk(r|j2d|j2dSdSt|j,dk(ryt|j,dk(ry t|j,d!k(ry"t|j,d#k(ry$t|j,d%k(r|rd&Sd"St|j,d'k(ry(td|d))*N) ScalarType?rrDevice?rLayout?rybool?ztype 'z+' does not supported unpacking with defaultscalartypeWithDefault scalartypedeviceWithDefaultr,toInt64toSymInttoBoolWithDefaulttoBooltoDouble stringViewlayoutWithDefaultr+ memoryformatrOoptionalTensorr generatorz Dimname[]toDimnameListOptional)NrRrTrUrNOptionalz tensorlist_n* PL P VVv}} $*:& H H VVv)) ) VVvzz ! VVv}} $!': 6Y 6 VVv{{ "*:& H H VVv|| # VVvzz ! VVv}} $*:& H H VVv** *! A| $ qvv;( "# [K ' [K '*!g2 ' )tFKjX  ,f  Ax qvv;( "010B]166(!, T T [I %- [I % [E ! [G # [H $#)< 8y 8 [H $ s"GH IIr8c|jdu}t|j|j|j|}|rd|jnd}d|d||d}t |j |||S)N)rrHrIrLrrz_r.rr)r2rrr)rIrrFrHrr2) arg_indexrrL has_default unpack_methodrHrs r%arg_parser_output_exprrks}..,K, &&!))!..M(31>>"#G q G9A 6D $ VV   r8c t|jDcic] \}}t|||}|j|"c}}}Scc}}}w)NrN) enumerater3rr2)rfrrLires r%arg_parser_output_exprsr~sP blln-   Aq(Af=A    s%Arrrr)r*r,r+r-rc t|||}t|||}g}i t|}|jdD]}|j}||jj } |r!|dk(r|j d| dg| |<Lt|tryt|jdkDra|jjrG|j d| dgt|jD]\} } d | d  | j<t|jd k(r+|j d |d | dd|d|d|dg| |<| |<|j rd d<|j"Dcgc]}|jc} |r|jjrt%|jd|j"D]}|jt&vr%t%|jd|jdt|jt&j)|jk7spt%|jdt|jd|jdt+ fdt&Dst%|jd |j-d|dj d|dj d|dj d |d!j d"|d#j d$ d% d%<|s rd vr|jjs't%|jd&|d'|jt+ fd(d)Dst%|jd*|j-d+|d,j d-|dj d.|dj.d-|dj d.|dj d-|dj.d/ d! vrt%|jd0 d t1t3 fd1|D|2Scc}w)3NrNT)rrz auto self = ;rhz auto out = zout[rz Dimname[]?zauto __rmz::std::optional z = __z& ? ::std::make_optional(DimnameList(__z.value())) : ::std::nullopt;z : tensor options with output argz%: unrecognized tensor options field 'z' in python binding argumentsz: unrecognized type 'z' for tensor options field ''c3&K|]}|v ywrr"r#rtensor_options_args_namess r%r&z(dispatch_lambda_exprs..sQa111Qz": incomplete tensor options args: z0const auto options = TensorOptions() .dtype(r*z) .device(r,z) .layout(r+z) .requires_grad(rz) .pinned_memory(r-z3); torch::utils::maybe_initialize_device(options); optionsz3: dtype in tensor_options_args without output arg, rWc3&K|]}|v ywrr"rs r%r&z(dispatch_lambda_exprs..sT!q55Tr)r+r,z,: incomplete tensor options for output checkzcheck_out_type_matches(rcrz, z); zE: expected "requires_grad" in tensor_options_args absent, but found [c3<K|]}|jywrr)r#rlambda_args_exprss r%r&z(dispatch_lambda_exprs.. sC!%aff-Cs)rr)rrjrr3r2rrr,ror)r}rrrrErFrKrrTENSOR_OPTIONS_FIELDSr[r0rrrr.)rfrrLarg_parser_outputs lambda_argsr has_toptionsrr2arg_parser_exprrout_argrrs @@r%dispatch_lambda_exprsrs 1QvF&r1V 7481+!',,/ > [L ( LLdV3&7q93D6tfDjkojpqMN  '+ d #'6 d #O'6T yy$*&!241G1G HA H 66   !&&)IJK K'' Avv22"vvhCAFF8Khi166{377??"vvh3CK=@\]^]c]c\ddef  Q;PQQ66(<=V&|499:;   (1)$ 5 / /66##%"vvhQRTQUUVWYWcWcVdeT?STT"vvhJK LL*51667r:LW:U:Z:Z9[\*73@@ADVW_D`DeDeCfg*8499:"=OPX=Y=f=frs"! GG*   2jIM? ?'?;E??0 $    $Y)Y)Y)x $!C!C!CH $vQvQvQv $'''f $ $' ' ' ^ $ $***0 $29>N7%*$<7 <7!<737<7<7~  */E"&59 F F"F  F  F  F`.&BJ$.4n l<@)5)5*)548)5')5^:: U"04- ROSYJ YJ YJ0:YJGKYJYJ~:>%26(?C*7;) ?Cyy*y7;y yr8