biddlmZddlmZddlmZddlmZddl m Z m Z ddl m Z ddlmZd d gZdd ZGdd eZGdd ZdS)) annotations)Iterator)parse_requirement)ParserSyntaxError)Marker_normalize_extra_values) SpecifierSet)canonicalize_nameInvalidRequirement Requirementreturn list[str]ctSN)__all__n/home/jenkins/jenkins/workspace/simtester-sanitize/venv/lib/python3.11/site-packages/packaging/requirements.py__dir__rs NrceZdZdZdS)r zJ An invalid requirement was found, users should refer to PEP 508. N)__name__ __module__ __qualname____doc__rrrr r srcReZdZdZddZdd Zdd Zdd ZddZddZ ddZ ddZ dS)r aoParse a requirement. Parse a given requirement string into its parts, such as name, specifier, URL, and extras. Raises InvalidRequirement on a badly-formed requirement string. Instances are safe to serialize with :mod:`pickle`. They use a stable format so the same pickle can be loaded in future packaging releases. .. versionchanged:: 26.2 Added a stable pickle format. Pickles created with packaging 26.2+ can be unpickled with future releases. Backward compatibility with pickles from packaging < 26.2 is supported but may be removed in a future release. requirement_stringstrrNonec t|}n/#t$r"}tt||d}~wwxYw|j|_|jpd|_t |jpg|_t|j |_ d|_ |j >tj t|_ t|j |j _dSdSr)_parse_requirementrr rnameurlsetextrasr specifiermarkerr__new__r _markers)selfrparsedes r__init__zRequirement.__init__5s 4'(:;;FF  4 4 4$SVV,,! 3 4  %z1T #FM$7R 8 8 '3F4D'E'E%) = $ .00DK#:6=#I#IDK  % $s >9>r" Iterator[str]c#K|V|jr/dt|j}d|dV|jrt |jV|jrd|jV|jrdV|jrd|jVdSdS)N,[]z @  z; )r%joinsortedr&rr#r')r*r"formatted_extrass r _iter_partszRequirement._iter_partsDs ; *"xxt{(;(;<< )&))) ) ) ) > &dn%% % % % 8 """ " " "{  ; %$t{$$ $ $ $ $ $ % %rc t|Sr)rr*s r __getstate__zRequirement.__getstate__Vs4yyrstateobjectct|trt t|}n%#t$r}t d||d}~wwxYw|j|_|j|_|j|_|j|_|j |_ dSt|tr|j |dSt d|)Nz Cannot restore Requirement from ) isinstancerr r TypeErrorr"r#r%r&r'dict__dict__update)r*r;tmpexcs r __setstate__zRequirement.__setstate__[s eS ! !  W!%((% W W W L5 L LMMSVV WDIwDH*DK ]DN*DK F eT " "  M  ' ' ' FD5DDEEEs' A AA c\d||jS)N)r4r7r"r9s r__str__zRequirement.__str__ns$wwt'' 22333rcBd|jjdt|dS)N<(z)>) __class__rrr9s r__repr__zRequirement.__repr__qs&<4>*<r NotImplementedr r"r%r&r#r')r*rSs r__eq__zRequirement.__eq__ws%-- "! ! di ( (,=ej,I,I I , u|+ ,%/1 ,EI% , u|+  rN)rrrr)r"rrr.)rr)r;r<rr)rrN)rSr<rrT) rrrrr-r7r:rErHrMrRrWrrrr r s, J J J J%%%%$ FFFF&4444====KKKK       rN)rr) __future__rtypingr_parserrr! _tokenizerrmarkersrr specifiersr utilsr rr ValueErrorr r rrrr`s#"""""<<<<<<))))))44444444$$$$$$$$$$$$   c c c c c c c c c c r