
    <i                     V    S SK Jr  S SKJr  S SK Jr  S SKJr  S SKJr   " S S\	5      r
g)	    )StarLoopEntryState)ATNConfigSet)DecisionState)DFAState)IllegalStateExceptionc                       \ rS rSrSrSS\S\4S jjrS\4S jrS\S\	4S	 jr
S
\4S jr\S 5       rS rS rSS\S\4S jjrS rSrg)DFA   )atnStartStatedecision_statess0precedenceDfar   r   c                    Xl         X l        [        5       U l        S U l        SU l        [        U[        5      (       aF  UR                  (       a4  SU l        [        [        5       S9n/ Ul        SUl        SUl        X0l        g g g )NFTconfigs)r   r   dictr   r   r   
isinstancer   isPrecedenceDecisionr   r   edgesisAcceptStaterequiresFullContext)selfr   r   precedenceStates       H/home/james-whalen/.local/lib/python3.13/site-packages/antlr4/dfa/DFA.py__init__DFA.__init__   s{    *  v #m%78811%)""*<>"B(*%05-6;3) 2 9    
precedencec                     U R                   (       d  [        S5      eUS:  d#  U[        U R                  R                  5      :  a  g U R                  R                  U   $ )N:Only precedence DFAs may contain a precedence start state.r   )r   r   lenr   r   )r   r   s     r   getPrecedenceStartStateDFA.getPrecedenceStartState0   sJ    !!'(dee >Z3tww}}+==ww}}Z((r   
startStatec                 \   U R                   (       d  [        S5      eUS:  a  g U[        U R                  R                  5      :  aN  S /US-   [        U R                  R                  5      -
  -  nU R                  R                  R                  U5        X R                  R                  U'   g )Nr!   r      )r   r   r"   r   r   extend)r   r   r%   exts       r   setPrecedenceStartStateDFA.setPrecedenceStartStateB   s    !!'(dee>
 TWW]]++&JNS-??@CGGMM  %$.j!r   r   c                     U R                   U:w  aQ  [        5       U l        U(       a-  [        [	        5       S9n/ Ul        SUl        SUl        X l        OS U l        Xl         g g )Nr   F)	r   r   r   r   r   r   r   r   r   )r   r   r   s      r   setPrecedenceDfaDFA.setPrecedenceDfaa   sW    .6DL"*<>"B(*%05-6;3)!. /r   c                     U R                   $ N)r   r   s    r   states
DFA.statesn   s    ||r   c                 H    [        U R                  R                  5       S S9$ )Nc                     U R                   $ r0   )stateNumber)states    r   <lambda>"DFA.sortedStates.<locals>.<lambda>t   s
    U=N=Nr   )key)sortedr   keysr1   s    r   sortedStatesDFA.sortedStatess   s    dll'')/NOOr   c                 $    U R                  S 5      $ r0   )toStringr1   s    r   __str__DFA.__str__v   s    }}T""r   NliteralNamessymbolicNamesc                 R    U R                   c  gSSKJn  U" XU5      n[        U5      $ )N r   )DFASerializer)r   antlr4.dfa.DFASerializerrG   str)r   rC   rD   rG   
serializers        r   r@   DFA.toStringy   s'    77?:"4]C
:r   c                 P    U R                   c  gSSKJn  U" U 5      n[        U5      $ )NrF   r   )LexerDFASerializer)r   rH   rM   rI   )r   rM   rJ   s      r   toLexerStringDFA.toLexerString   s%    77??'-
:r   )r   r   r   r   r   )r   )NN)__name__
__module____qualname____firstlineno__	__slots__r   intr   r#   r   r*   boolr-   propertyr2   r=   rA   listr@   rN   __static_attributes__ r   r   r	   r	      s}    OI*] *S *@) )$/ / />/T /  P#D T r   r	   N)antlr4.atn.ATNStater   antlr4.atn.ATNConfigSetr   r   antlr4.dfa.DFAStater   antlr4.error.Errorsr   objectr	   rZ   r   r   <module>r`      s$   
 3 0 - ( 5x& xr   