
    kh2                     l   d dl mZmZmZmZmZmZmZ d dlm	Z	 d dl
mZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d d	lmZ d d
lmZ d dlmZ d Z G d de      Z G d de      Z G d de      Z  G d de       Z! G d de       Z" G d de       Z# G d de       Z$ G d de       Z% G d de       Z&y)     )CommonTokenStreamDFAPredictionContextCacheLexerLexerATNSimulatorParserRuleContextTerminalNode)InputStream)Parser)RuleContext)Token)ATNDeserializer)ErrorListener)LexerNoViableAltException)	ParseTree)Trees)StringIOc                  N   t               5 } | j                  d       | j                  d       | j                  d       | j                  d       | j                  d       | j                  d       | j                  d       | j                  d       | j                  d	       | j                  d
       | j                  d       | j                  d       | j                  d       | j                  d       | j                  d       | j                  d       | j                  d       | j                  d       | j                  d       | j                  d       | j                  d       | j                  d       | j                         cd d d        S # 1 sw Y   y xY w)Nu   а훑舆괭䐗껱趀ꫝ
z4						z				z
"z(
			.
			1		z	/
		
u   2;aa¹¹̂ͱ⁁⁂C\cu   |ÂØÚøú́ͲͿ΁u    ‎‏⁲↑Ⰲ⿱〃u   車﷑ﷲ￿4z	z	z')+1z11z,#
z "z  !!#" #$z$%(&(	'%'&z()*	*+/),.z-,.1/0/-02z1/23)3 'z/)r   writegetvalue)bufs    N/var/www/teggl/fontify/venv/lib/python3.12/site-packages/antlr4/xpath/XPath.pyserializedATNr   ?   sD   	 s		JK		IJ		JK		IJ		IJ		JK		IJ		KL		JK		IJ		IJ		IJ		KL		JK		JK		JK		IJ		JK		JK		JK		JK		+||~/  s   FFF$c            
       2   e Zd Z e       j	                   e             Z eej                        D  cg c]  \  }}t        ||       c}}}} Z
dZdZdZdZdZdZdZdZd	gZg d
Zg dZg dZdZdfd	ZdededefdZdedefdZxZS c c}}}} w )
XPathLexer                        DEFAULT_MODE)	<INVALID>z'//'z'/'z'*'z'!')	r%   	TOKEN_REFRULE_REFANYWHEREROOTWILDCARDBANGIDSTRING)r(   r)   r*   r+   r,   NameCharNameStartCharr-   zXPathLexer.g4c                     t         |   |       | j                  d       t        | | j                  | j
                  t                     | _        d | _        d | _	        y )Nz4.9.1)
super__init__checkVersionr   atndecisionsToDFAr   _interp_actions_predicates)selfinput	__class__s     r   r2   zXPathLexer.__init__x   sM    '"(txx9L9LNdNfg    localctx	ruleIndexactionIndexc                     | j                    t               }| j                  |d<   || _         | j                   j                  |d       }|
 |||       y t	        d|z        )Nr   zNo registered action for: %d)r7   dict	ID_actionget	Exception)r9   r=   r>   r?   actions_actions         r   actionzXPathLexer.action   s^    == fGGAJ#DM--##It4Hk*:YFGGr<   c                     |dk(  rK| j                   d   }|j                         rt        j                  | _        y t        j
                  | _        y y )Nr   )textisupperr   r&   typer'   )r9   r=   r?   chars       r   rB   zXPathLexer.ID_action   s?    !99Q<D||~&00	&//	 r<   N)__name__
__module____qualname__r   deserializer   r4   	enumeratedecisionToStater   r5   r&   r'   r(   r)   r*   r+   r,   r-   	modeNamesliteralNamessymbolicNames	ruleNamesgrammarFileNamer2   r   intrG   rB   __classcell__).0idsr   r;   s   0000@r   r   r   Z   s    


'
'
8C/89L9L/MOOeas2qzON IHHDHD	
BF "I*LM.I &O 	Hk 	HS 	Hc 	H0 03 0[ Ps   B
r   c                   j    e Zd ZdZdZdedefdZdefdZde	de
fd	Zed
ededefd       ZdefdZy)XPath*!parserpathc                 L    || _         || _        | j                  |      | _        y rM   )rb   rc   splitelements)r9   rb   rc   s      r   r2   zXPath.__init__   s     	

4(r<   c                 z   t        |      }t        |      }d }||_        |j                          |j	                  t                      t        |      }	 |j                          t        |j                        }	t               }
|	D ]  }d}d}|j                  t        j                  t        j                   fv rI|j                  t        j                   k(  }t#        |	d       }|st        d|j%                         z        |}|j                  t        j&                  k(  r.d}t#        |	d       }|st        d|j%                         z        |}|j                  t        j(                  t        j*                  t        j,                  t        j.                  fv r,| j1                  ||      }||_        |
j5                  |       >|j                  t6        j8                  k(  r |
S t        d|j:                  |j                     z         |
S # t        $ r$}|j                  }d||fz  }t        ||      d }~ww xY w)Nc                     |rM    )r9   es     r   recoverzXPath.split.<locals>.recover   s    Gr<   z5Invalid tokens or characters at index %d in path '%s'FzMissing element after %sTzUnknown path element %s)r
   r   rk   removeErrorListenersaddErrorListenerr   r   fillr   columnrD   itertokenslistrK   r)   r(   nextgetTextr+   r&   r'   r*   r-   getXPathElementinvertappendr   EOFrV   )r9   rc   r:   lexerrk   tokenStreamrj   posmsgrq   rf   elrv   anywherenext_elelements                   r   re   zXPath.split   s   D!5!	""$}/'.	$ k(()6 	ZBFHww:??J,?,?@@77j&9&99vt,#$>$MNN Bww*//)vt,#$>$MNN Bww://1D1DjFYFY[e[l[lmm..r8<!'(%))#    9E<O<OPRPWPW<X XYY7	Z8 G ) 	$,,CISRVKWCC##	$s   H 	H:H55H:	wordTokenr~   c                    |j                   t        j                  k(  rt        d      |j                  }|j                   t
        j                  k(  r|r
t               S t               S |j                   t
        j                  t
        j                  fv r| j                  j                         j                  }t        j                  }|j                   t
        j                  k(  r-||j                  v rH|j                  j!                  |      dz   }n)||j"                  v r|j"                  j!                  |      }|t        j                  k(  rt        d||j$                  fz        |rt'        ||      S t)        ||      S || j                  j                  v r%| j                  j                  j!                  |      nd}|dk(  rt        d||j$                  fz        |rt+        ||      S t-        ||      S )Nz#Missing path element at end of pathr   z'%s at index %d isn't a valid token namez&%s at index %d isn't a valid rule name)rK   r   rx   rD   rI   r   r*   XPathWildcardAnywhereElementXPathWildcardElementr&   r-   rb   getTokenStreamtokenSourceINVALID_TYPErW   indexrU   
tokenIndexXPathTokenAnywhereElementXPathTokenElementXPathRuleAnywhereElementXPathRuleElement)r9   r   r~   wordtsourcettyper>   s          r   ru   zXPath.getXPathElement   s   >>599$ABB~~>>:...5=/1YCWCYY^^
 4 4j6G6GHHkk002>>G&&E~~!5!557,,,#--33D9A=E7///#0066t<E*** ITS\SgSgLh hii=E,T59iK\]achKii >BT[[EZEZ=Z--33D9`bIB HDR[RfRfKg ghh@H+D)<oN^_cenNoor<   treexpathc                 <    t        ||      }|j                  |       S rM   )r_   evaluate)r   r   rb   ps       r   findAllzXPath.findAll   s    &% zz$r<   tc                    t               }|g|_        |g}| j                  D ]d  }t               |D ]Q  }t	        |t
              r|j                  s!|j                  |      }t        fd|      }j                  |       S }f |S )Nc                     | vS rM   ri   )m	work_nexts    r   <lambda>z XPath.evaluate.<locals>.<lambda>  s    0B r<   )	r   childrenrf   rr   
isinstancer	   r   filterextend)r9   r   	dummyRootworkr   nodematchingr   s          @r   r   zXPath.evaluate   s    %'	S	{}} 	GI /!$5$--  '//5H  &&BHMH$$X./ D	  r<   N)rN   rO   rP   r*   NOTr   strr2   re   r   boolru   staticmethodr   r   r   ri   r<   r   r_   r_      sw    H
C)f )3 )
. .jp p p>  Y  c  &     r<   r_   c                       e Zd ZdefdZd Zy)XPathElementnodeNamec                      || _         d| _        y )NF)r   rv   )r9   r   s     r   r2   zXPathElement.__init__  s     r<   c                 t    t        |       j                  dz   | j                  rdndz   | j                  z   dz   S )N[ra    ])rK   rN   rv   r   )r9   s    r   __str__zXPathElement.__str__  s3    Dz""S(4;;CBG$--WZ]]]r<   N)rN   rO   rP   r   r2   r   ri   r<   r   r   r     s     ^r<   r   c                   4     e Zd Zdedef fdZdefdZ xZS )r   ruleNamer>   c                 2    t         |   |       || _        y rM   r1   r2   r>   r9   r   r>   r;   s      r   r2   z!XPathRuleAnywhereElement.__init__#      ""r<   r   c                 H     t         fdt        j                  |            S )Nc                 |    t        | t              xr* j                  | j                         j                  k(  z  S rM   r   r   rv   getRuleIndexr>   cr9   s    r   r   z3XPathRuleAnywhereElement.evaluate.<locals>.<lambda>)  3    
1.? @ ydkkUVUcUcUeimiwiwUwFx r<   r   r   descendantsr9   r   s   ` r   r   z!XPathRuleAnywhereElement.evaluate'  8    y  |A  |M  |M  NO  |P  Q  	Qr<   	rN   rO   rP   r   rY   r2   r   r   rZ   r;   s   @r   r   r   !  $    # #s #Q Qr<   r   c                   4     e Zd Zdedef fdZdefdZ xZS )r   r   r>   c                 2    t         |   |       || _        y rM   r   r   s      r   r2   zXPathRuleElement.__init__-  r   r<   r   c                 H     t         fdt        j                  |            S )Nc                 |    t        | t              xr* j                  | j                         j                  k(  z  S rM   r   r   s    r   r   z+XPathRuleElement.evaluate.<locals>.<lambda>3  r   r<   r   r   getChildrenr   s   ` r   r   zXPathRuleElement.evaluate1  r   r<   r   r   s   @r   r   r   +  r   r<   r   c                   4     e Zd Zdedef fdZdefdZ xZS )r   r   	tokenTypec                 2    t         |   |       || _        y rM   r1   r2   r   r9   r   r   r;   s      r   r2   z"XPathTokenAnywhereElement.__init__7  r   r<   r   c                 H     t         fdt        j                  |            S )Nc                     t        | t              xr0 j                  | j                  j                  j
                  k(  z  S rM   r   r	   rv   symbolrK   r   r   s    r   r   z4XPathTokenAnywhereElement.evaluate.<locals>.<lambda>=  5    
1l ; qPQPXPXP]P]aeaoaoPoAp r<   r   r   s   ` r   r   z"XPathTokenAnywhereElement.evaluate;  4    qsx  tE  tE  FG  tH  I  	Ir<   r   r   s   @r   r   r   5  $    # #s #I Ir<   r   c                   4     e Zd Zdedef fdZdefdZ xZS )r   r   r   c                 2    t         |   |       || _        y rM   r   r   s      r   r2   zXPathTokenElement.__init__A  r   r<   r   c                 H     t         fdt        j                  |            S )Nc                     t        | t              xr0 j                  | j                  j                  j
                  k(  z  S rM   r   r   s    r   r   z,XPathTokenElement.evaluate.<locals>.<lambda>G  r   r<   r   r   s   ` r   r   zXPathTokenElement.evaluateE  r   r<   r   r   s   @r   r   r   ?  r   r<   r   c                   *     e Zd Z fdZdefdZ xZS )r   c                 @    t         |   t        j                         y rM   r1   r2   r_   r*   r9   r;   s    r   r2   z%XPathWildcardAnywhereElement.__init__L      (r<   r   c                 X    | j                   r
t               S t        j                  |      S rM   )rv   rr   r   r   r   s     r   r   z%XPathWildcardAnywhereElement.evaluateO  !    ;;6M$$Q''r<   rN   rO   rP   r2   r   r   rZ   r   s   @r   r   r   J  s    )( (r<   r   c                   *     e Zd Z fdZdefdZ xZS )r   c                 @    t         |   t        j                         y rM   r   r   s    r   r2   zXPathWildcardElement.__init__X  r   r<   r   c                 X    | j                   r
t               S t        j                  |      S rM   )rv   rr   r   r   r   s     r   r   zXPathWildcardElement.evaluate\  r   r<   r   r   s   @r   r   r   V  s    )( (r<   r   N)'antlr4r   r   r   r   r   r   r	   antlr4.InputStreamr
   antlr4.Parserr   antlr4.RuleContextr   antlr4.Tokenr   antlr4.atn.ATNDeserializerr   antlr4.error.ErrorListenerr   antlr4.error.Errorsr   antlr4.tree.Treer   antlr4.tree.Treesr   ior   r   r   objectr_   r   r   r   r   r   r   r   ri   r<   r   <module>r      s   d } | | *   *  6 4 9 & # 670 70r}F }@^6 ^Q| QQ| QI II I	(< 	(
(< 
(r<   