
    kh                     V    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  G d de	      Z
y)	    )StarLoopEntryState)ATNConfigSet)DecisionState)DFAState)IllegalStateExceptionc                   ~    e Zd ZdZddedefdZdefdZdedefdZ	d	e
fd
Zed        Zd Zd ZddedefdZd Zy)DFA)atnStartStatedecision_statess0precedenceDfar
   r   c                    || _         || _        t               | _        d | _        d| _        t        |t              rE|j                  r8d| _        t        t                     }g |_        d|_        d|_        || _        y y y )NFTconfigs)r
   r   dictr   r   r   
isinstancer   isPrecedenceDecisionr   r   edgesisAcceptStaterequiresFullContext)selfr
   r   precedenceStates       J/var/www/teggl/fontify/venv/lib/python3.12/site-packages/antlr4/dfa/DFA.py__init__zDFA.__init__   s~    *  v #m%7811%)""*<>"B(*%05-6;3) 2 9    
precedencec                     | j                   st        d      |dk  s"|t        | j                  j                        k\  ry | j                  j                  |   S )N:Only precedence DFAs may contain a precedence start state.r   )r   r   lenr   r   )r   r   s     r   getPrecedenceStartStatezDFA.getPrecedenceStartState0   sJ    !!'(dee >Z3tww}}+==ww}}Z((r   
startStatec                 P   | j                   st        d      |dk  ry |t        | j                  j                        k\  rNd g|dz   t        | j                  j                        z
  z  }| j                  j                  j                  |       || j                  j                  |<   y )Nr   r      )r   r   r    r   r   extend)r   r   r"   exts       r   setPrecedenceStartStatezDFA.setPrecedenceStartStateB   s    !!'(dee>
 TWW]]++&JNS-??@CGGMM  %$.j!r   r   c                     | j                   |k7  rQt               | _        |r1t        t	                     }g |_        d|_        d|_        || _        nd | _        || _         y y )Nr   F)	r   r   r   r   r   r   r   r   r   )r   r   r   s      r   setPrecedenceDfazDFA.setPrecedenceDfaa   s[    .6DL"*<>"B(*%05-6;3)!.D /r   c                     | j                   S N)r   r   s    r   statesz
DFA.statesn   s    ||r   c                 N    t        | j                  j                         d       S )Nc                     | j                   S r+   )stateNumber)states    r   <lambda>z"DFA.sortedStates.<locals>.<lambda>t   s    U=N=N r   )key)sortedr   keysr,   s    r   sortedStateszDFA.sortedStatess   s    dll'')/NOOr   c                 $    | j                  d       S r+   )toStringr,   s    r   __str__zDFA.__str__v   s    }}T""r   NliteralNamessymbolicNamesc                 R    | j                   yddlm}  || ||      }t        |      S )N r   )DFASerializer)r   antlr4.dfa.DFASerializerr>   str)r   r:   r;   r>   
serializers        r   r8   zDFA.toStringy   s)    77?:"4]C
:r   c                 N    | j                   yddlm}  ||       }t        |      S )Nr=   r   )LexerDFASerializer)r   r?   rC   r@   )r   rC   rA   s      r   toLexerStringzDFA.toLexerString   s%    77??'-
:r   )r   )NN)__name__
__module____qualname__	__slots__r   intr   r!   r   r'   boolr)   propertyr-   r6   r9   listr8   rD    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	   rM   r   r   <module>rS      s$   
 3 0 - ( 5x& xr   