L iwddlmZddlmZddlmZddlmZddlmZddlm Z ddlm Z ddl Z dd l m Z dd lmZe r"dd lmZdd lmZdd lmZedZe dZdZddZddZdd ddZy)) annotations)wraps) Parameter) signature)Any) TYPE_CHECKING)TypeVarN)_validate_two_version)_validate_version)Callable)Sequence) ParamSpec_P_Ta1Positional arguments {deprecated_positional_arg_names} in {func_name}() have been deprecated since v{d_ver}. They will be replaced with the corresponding keyword arguments in v{r_ver}, so please use the keyword specification instead. See https://github.com/optuna/optuna/releases/tag/v{d_ver} for details.ct|j}|jDcgc]=\}}|jtj k(r|j |jk(r|?}}}|Scc}}wN)r parametersitemsdefaultremptykindPOSITIONAL_OR_KEYWORD)funcparamsnameppositional_arg_namess e/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/optuna/_convert_positional_args.py_get_positional_arg_namesr"si t_ ' 'F||~ D! 99  'AFFa6M6M,M   sAA0cPt||Dcic]\}}|| }}}|Scc}}wr)zip)previous_positional_arg_namesargsvalarg_nameinferred_kwargss r _infer_kwargsr',s1:=dDa:bchx}cOc ds ")warning_stacklevelc< td tdtttdfd }|S)aConvert positional arguments to keyword arguments. Args: previous_positional_arg_names: List of names previously given as positional arguments. warning_stacklevel: Level of the stack trace where decorated function locates. deprecated_version: The version in which the use of positional arguments is deprecated. removed_version: The version in which the use of positional arguments will be removed. zFdeprecated_version must not be None when removed_version is specified.zFremoved_version must not be None when deprecated_version is specified.ctjttjs1Jtdttjt dfd }|S)Nz is not a subset of c g}t}t g|}t|t|kDrnt|t|z }|j j d|ds r2|j t j j  |r+tjdj|t t|t kDr0tj dt dt|dt|j|}t|rtj d |d |j|d i|S) Nz() got zQ as positional arguments but they were expected to be given as keyword arguments.)deprecated_positional_arg_names func_named_verr_ver ) stacklevelz () takes z positional arguments but z were given.z%() got multiple values for arguments .)rr'lensetappend__name___DEPRECATION_WARNING_TEMPLATEformatwarningswarnjoin FutureWarning TypeError intersectionupdate) r#kwargswarning_messagesrr& expected_kwdsduplicated_kwdsdeprecated_versionrr"removed_versionr)s rconverter_wrapperzOconvert_positional_args..converter_decorator..converter_wrapperZs{! #&?? #O 4s;O7P P  ''}}oW]O "&k66GO?# }}o%J?J[[\] MM/ *>&> !)r#rrBrreturnz'_T')r6issubsetrrr)rrHrFr"rGr)s` rconverter_decoratorz4convert_positional_args..converter_decoratorSs01::3y?Y?Y;Z[ 0123IdO../0 2 [ t, ", " , "\! rI)r'Callable[_P, _T]'rJrM) ValueErrorr r )r"rFrGr)rLs```` rconvert_positional_argsrO1so(%)D  %X   "X  ,-/*0/B6!6!p rI)rrMrJz list[str])r" Sequence[str]r#rrJzdict[str, Any]) r"rPrFstrrGrQr)intrJz0'Callable[[Callable[_P, _T]], Callable[_P, _T]]') __future__r functoolsrinspectrrtypingrrr r;optuna._deprecatedr optuna._experimentalr collections.abcr r typing_extensionsrrrr9rr'rOr4rIrr[s" 42((+ 4B BN  Z#0ZZ Z  Z 6 ZrI