
    Iic                     ~    S SK Jr   " S S\5      r " S S\5      r " S S\5      r " S S	\5      r " S
 S\5      rg)   )	Serializec                   J    \ rS rSrSr\rS rS rS r	S r
S r\" \5      rSrg)	Symbol   namec                     Xl         g Nr   )selfr   s     2/venv/lib/python3.13/site-packages/lark/grammar.py__init__Symbol.__init__
   s    	    c                     [        U[        5      (       d   U5       eU R                  UR                  :H  =(       a    U R                  UR                  :H  $ r
   )
isinstancer   is_termr   r   others     r   __eq__Symbol.__eq__   s?    %((/%/(||u}},Hejj1HHr   c                     X:X  + $ r
    r   s     r   __ne__Symbol.__ne__   s    ""r   c                 ,    [        U R                  5      $ r
   )hashr   r   s    r   __hash__Symbol.__hash__   s    DIIr   c                 P    [        U 5      R                  < SU R                  < S3$ )N())type__name__r   r   s    r   __repr__Symbol.__repr__   s    :..		::r   N)r$   
__module____qualname____firstlineno__	__slots__NotImplementedr   r   r   r   r   r%   propertyfullrepr__static_attributes__r   r   r   r   r      s2    IGI#; !Hr   r   c                   6    \ rS rSrSrSrSS jr\S 5       rSr	g)	Terminal   r   
filter_outTc                     Xl         X l        g r
   r2   )r   r   r3   s      r   r   Terminal.__init__"   s    	$r   c                 l    [        U 5      R                  < SU R                  < SU R                  < S3$ )Nr!   , r"   )r#   r$   r   r3   r   s    r   r-   Terminal.fullrepr&   s!    #Dz22DIItOOr   )r3   r   N)F)
r$   r'   r(   r)   __serialize_fields__r   r   r,   r-   r.   r   r   r   r0   r0      s(    /G% P Pr   r0   c                       \ rS rSrSrSrSrg)NonTerminal+   r   Fr   N)r$   r'   r(   r)   r9   r   r.   r   r   r   r;   r;   +   s    "Gr   r;   c                   (    \ rS rSrSrSS jrS rSrg)RuleOptions1   keep_all_tokensexpand1prioritytemplate_sourceempty_indicesNc                 @    Xl         X l        X0l        X@l        XPl        g r
   r@   )r   rA   rB   rC   rD   rE   s         r   r   RuleOptions.__init__4   s    . .*r   c           	      x    SU R                   < SU R                  < SU R                  < SU R                  < S3	$ )NzRuleOptions(r7   r"   )rA   rB   rC   rD   r   s    r   r%   RuleOptions.__repr__;   s,      LLMM  	
 	
r   )rE   rB   rA   rC   rD   )FFNNr   )r$   r'   r(   r)   r9   r   r%   r.   r   r   r   r>   r>   1   s    g+
r   r>   c                   R    \ rS rSrSrSrSr\\\	4r
SS jrS rS rS	 rS
 rS rSrg)RuleD   zt
origin : a symbol
expansion : a list of symbols
order : index of this expansion amongst all rules of the same name
)origin	expansionaliasoptionsorder_hash)rM   rN   rQ   rO   rP   Nc                     Xl         X l        X@l        X0l        U=(       d
    [	        5       U l        [        U R                   [        U R                  5      45      U l        g r
   )	rM   rN   rO   rQ   r>   rP   r   tuplerR   )r   rM   rN   rQ   rO   rP   s         r   r   Rule.__init__O   sB    "

/+-4;;dnn(=>?
r   c                 b    [        U R                  [        U R                  5      45      U l        g r
   )r   rM   rT   rN   rR   r   s    r   _deserializeRule._deserializeW   s     4;;dnn(=>?
r   c                     SU R                   R                  < SSR                  S U R                   5       5      < S3$ )N<z :  c              3   8   #    U  H  oR                   v   M     g 7fr
   r   ).0xs     r   	<genexpr>Rule.__str__.<locals>.<genexpr>[   s     8XAs   >)rM   r   joinrN   r   s    r   __str__Rule.__str__Z   s*    "kk..8X8X0XYYr   c           	      x    SU R                   < SU R                  < SU R                  < SU R                  < S3	$ )NzRule(r7   r"   )rM   rN   rO   rP   r   s    r   r%   Rule.__repr__]   s$    )-dnndjjRVR^R^__r   c                     U R                   $ r
   )rR   r   s    r   r   Rule.__hash__`   s    zzr   c                     [        U[        5      (       d  gU R                  UR                  :H  =(       a    U R                  UR                  :H  $ )NF)r   rK   rM   rN   r   s     r   r   Rule.__eq__c   s7    %&&{{ell*Pt~~/PPr   )rR   rO   rN   rP   rQ   rM   )    NN)r$   r'   r(   r)   __doc__r*   r9   r0   r;   r>   __serialize_namespace__r   rW   rc   r%   r   r   r.   r   r   r   rK   rK   D   sE    
 NIM&[@@@Z`Qr   rK   N)utilsr   r   r0   r;   r>   rK   r   r   r   <module>ro      sH    "Y "0Pv P& 
) 
&"Q9 "Qr   