
    g"                    P   % S r SSKJr  SSKJr  SSKJrJr  SSKJ	r	  SSK
Jr  S\R                  4S	\R                  4S
\R                  4S\R                  4S\R                   R"                  4S\R$                  R"                  4S\R&                  4S\R(                  4S\R*                  4S\R,                  4S\R.                  4/rS\S'   S\R4                  4S\R                   R6                  4S\R$                  R6                  4S\R8                  4/rS\S'    " S S5      rg)zTokenizes paragraph content.
    )annotations   )rules_inline)RuleFuncRuler)StateInline)Tokentextnewlineescape	backticksstrikethroughemphasislinkimageautolinkhtml_inlineentityzlist[tuple[str, RuleFunc]]_rulesbalance_pairstext_collapse_rules2c                  8    \ rS rSrS rSS jrSS jrS	S jrSrg)
ParserInline!   c                    [        5       U l        [         H   u  pU R                  R                  X5        M"     [        5       U l        [
         H   u  pU R                  R                  X5        M"     g )N)r   rulerr   pushruler2r   )selfnamerulerule2s       9lib/python3.13/site-packages/markdown_it/parser_inline.py__init__ParserInline.__init__"   sP    W
 JDJJOOD' ! g"KDKKT) #    c                   SnUR                   nU R                  R                  S5      nUR                  R                  S   nUR
                  nX6;   a
  Xc   Ul         gUR                  U:  aF  U H?  nU=R                  S-  sl        U" US5      nU=R                  S-  sl        U(       d  M?    O   OUR                  Ul         U(       d  U=R                   S-  sl         UR                   Xc'   g)zgSkip single token by running all rules in validation mode;
returns `True` if any rule reported success
F 
maxNestingNr   T)posr   getRulesmdoptionscachelevelposMax)r    stateokr+   rulesr*   r/   r"   s           r$   	skipTokenParserInline.skipToken+   s     ii

##B'XX%%l3
<
EI;;# q %&q 2 * EIIINIYY
r'   c                   SnU R                   R                  S5      nUR                  nUR                  R                  S   nUR
                  U:  a  UR                  U:  a  U H  nU" US5      nU(       d  M    O   U(       a  UR
                  U:  a  OUMU  U=R                  UR                  UR
                     -  sl        U=R
                  S-  sl        UR
                  U:  a  M  UR                  (       a  UR                  5         gg)z Generate tokens for input range.Fr)   r*   r   N)
r   r,   r1   r-   r.   r+   r0   pendingsrcpushPending)r    r2   r3   r4   endr*   r"   s          r$   tokenizeParserInline.tokenizeU   s    

##B'llXX%%l3
ii#o {{Z'!DeU+Br "
 99#MMUYYuyy11MIINI) ii#o, == r'   c                    [        XX45      nU R                  U5        U R                  R                  S5      nU H  nU" U5        M     UR                  $ )z9Process input string and push inline tokens into `tokens`r)   )r   r<   r   r,   tokens)r    r9   r-   envr?   r2   rules2r"   s           r$   parseParserInline.parseu   sI    CS1e%%b)DK ||r'   )r   r   N)r2   r   returnNone)r9   strr?   list[Token]rD   rG   )	__name__
__module____qualname____firstlineno__r%   r5   r<   rB   __static_attributes__ r'   r$   r   r   !   s    *(T @r'   r   N)__doc__
__future__r   r)   r   r   r   r   rules_inline.state_inliner   tokenr	   r
   r   r   backtickr   r<   r   r   r   r   r   r   r   __annotations__
link_pairspostProcessr   r   r   rM   r'   r$   <module>rV      s1   "  " 2  \$$%|""#,''(l0099:&&//0\l  !&&'L,,-|""#&"  l--.l00<<=&&223l001	'	# [ [r'   