j7iUddlmZddlZddlZddlmZddlmZmZddl m Z eGddZ Gd d e Z id d d ddddddddddejdejdddddddd d!ejd"ejd#eje j e j"zejej$zd$d%d&d'd(d)d*d+d,d-d.d/Zd0ed1<Gd2d3Zy)4) annotationsN) dataclass)IteratorNoReturn) Specifierc,eZdZUded<ded<ded<y)TokenstrnametextintpositionN)__name__ __module__ __qualname____annotations__]/mnt/ssd/data/python-lab/ChefSystem/venv/lib/python3.12/site-packages/packaging/_tokenizer.pyr r s I IMrr c<eZdZdZ dfd ZddZxZS)ParserSyntaxErrorz7The provided source text could not be parsed correctly.cL||_||_||_t|y)N)spanmessagesourcesuper__init__)selfrrr __class__s rrzParserSyntaxError.__init__s%    rcd|jdzd|jd|jdz zzdz}dj|j|j|gS)N r~r^z )rjoinrr)rmarkers r__str__zParserSyntaxError.__str__"sVtyy|#cTYYq\DIIaL-H&IICO}}dllDKK@AAr)rr rr rztuple[int, int]returnNone)r(r )rrr__doc__rr' __classcell__)r s@rrrs7A       BrrLEFT_PARENTHESISz\(RIGHT_PARENTHESISz\) LEFT_BRACKETz\[ RIGHT_BRACKETz\] SEMICOLON;COMMA, QUOTED_STRINGzk ( ('[^']*') | ("[^"]*") ) OPz(===|==|~=|!=|<=|>=|<|>)BOOLOPz \b(or|and)\bINz\bin\bNOTz\bnot\bVARIABLEa \b( python_version |python_full_version |os[._]name |sys[._]platform |platform_(release|system) |platform[._](version|machine|python_implementation) |python_implementation |implementation_(name|version) |extras? |dependency_groups )\b SPECIFIERATz\@URLz[^ \t]+ IDENTIFIERz\b[a-zA-Z0-9][a-zA-Z0-9._-]*\bVERSION_PREFIX_TRAILz\.\*z\+[a-z0-9]+(?:[-_\.][a-z0-9]+)*z[ \t]+$)VERSION_LOCAL_LABEL_TRAILWSEND dict[str, str | re.Pattern[str]] DEFAULT_RULESceZdZdZ d dZddZddddZddZddZd d d  dd Z e j dd Z y ) TokenizerzContext-sensitive token parsing. Provides methods to examine the input stream to check whether the next token matches. c||_|jDcic]\}}|tj|c}}|_d|_d|_ycc}}w)Nr)ritemsrecompilerules next_tokenr)rrrKr patterns rrzTokenizer.__init__bsO  ;@;;=2 *7$D"**W% %2  )- 2 s AcH|j|r|jyy)z8Move beyond provided token name, if at current position.N)checkread)rr s rconsumezTokenizer.consumeos ::d  IIK rF)peekc,|jJd|d|j||jvs Jd||j|}|j|j|j}|y|st ||d|j|_y)zCheck whether the next token has the provided name. By default, if the check succeeds, the token *must* be read before another check. If `peek` is set to `True`, the token is not loaded and would need to be checked again. zCannot check for z, already have zUnknown token name: FrT)rLrKmatchrrr )rr rR expressionrTs rrOzTokenizer.checkts& xt6I J &tzz!B%9$#BB!ZZ%   dmm< =#D%(DMMBDOrcl|j|s|jd||jS)zsExpect a certain token name next, failing with a syntax error otherwise. The token is *not* read. z Expected )rOraise_syntax_errorrP)rr expecteds rexpectzTokenizer.expects4 zz$))IhZ*@A Ayy{rc|j}|J|xjt|jz c_d|_|S)z%Consume the next token and return it.N)rLrlenr )rtokens rrPzTokenizer.reads9    UZZ(  rN) span_startspan_endcr| |jn|| |jn|f}t||j|)z.Raise ParserSyntaxError at the given position.)rr)rrr)rrr]r^rs rrWzTokenizer.raise_syntax_errorsC(/DMMZ%-DMM8  ;;  rc#K|j|r|j}|jnd}d|y|j|s|jd|d|d|||jyw)NzExpected matching z for z, after )r])rOrrPrW)r open_token close_tokenaround open_positions renclosing_tokenszTokenizer.enclosing_tokenssz ::j ! MMM IIK M  zz+&  # #$[Mzl(6(S( $  sA6A8)rr rKrCr(r))r r r(r))r r rRboolr(rf)r r rXr r(r )r(r )rr r] int | Noner^rgr(r)rar rbr rcr r(zIterator[None]) rrrr*rrQrOrYrPrW contextlibcontextmanagerrerrrrFrF[s  0    05*"&#         $,/rss" !%!   B B*131313E13U 13  13  T 13ZRZZ   13" %#13$ o%13& )'13( :)13*    +13L%% (D(DD R]]"M13T %U13V :W13X3Y13ZG[13\"D  a13 /1hhhr