
    #h                    V    S SK Jr  S SKrSSKJrJrJrJrJr  SSK	J
r
   " S S\5      rg)    )annotationsN   )ParseContextisnameleftrecnomemo	tatsumasu)	FailedRefc                  *    \ rS rSrS r\S 5       rSrg)Parser   c                   [        U SU-   S-   S 5      n[        U[        U R                  5      5      (       a  U$ [        XS 5      n[        U[        U R                  5      5      (       a  U$ U R	                  U[
        S9  g )N_)exclass)getattr
isinstancetype
_find_rule_errorr
   )selfnamerules      M/Users/user/Downloads/htwk/venv/lib/python3.13/site-packages/tatsu/parsing.pyr   Parser._find_rule   sn    tS4Z#-t4dD122Kt4(dD122KD),    c                r   [         R                  " U [         R                  S9n/ nU H  nUS   n[        U5      S:  a  M  UR	                  S5      (       d  UR                  S5      (       a  MG  UR	                  S5      (       d  M_  UR                  S5      (       d  Mw  UR                  USS 5        M     U$ )N)	predicater      __r   r   )inspect
getmembers	isroutinelen
startswithendswithappend)clsmethodsresultmr   s        r   	rule_listParser.rule_list   s    $$SG4E4EFAQ4D4y1}t$$d(;(;s##c(:(:d1Rj)  r    N)__name__
__module____qualname____firstlineno__r   classmethodr,   __static_attributes__r.   r   r   r   r      s      r   r   )
__future__r   r!   contextsr   r   r   r   r	   
exceptionsr
   r   r.   r   r   <module>r8      s&    "   "\ r   