o
    ‹Ù·iï  ã                   @   s  d dl mZ dZG dd„ deƒZG dd„ deƒZG dd„ deƒZG d	d
„ d
eƒZG dd„ deƒZG dd„ deƒZ	G dd„ deƒZ
G dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd „ d eƒZd!S )"é    )Ú
Transitioné   c                   @   s”   e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZg d¢ZdZdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zd"dedefdd „Zd!S )#ÚATNState)ÚatnÚstateNumberÚ	stateTypeÚ	ruleIndexÚepsilonOnlyTransitionsÚtransitionsÚnextTokenWithinRuler   é   é   é   r   é   é   é   é   é	   é
   é   é   )ÚINVALIDÚBASICÚ
RULE_STARTÚBLOCK_STARTÚPLUS_BLOCK_STARTÚSTAR_BLOCK_STARTÚTOKEN_STARTÚ	RULE_STOPÚ	BLOCK_ENDÚSTAR_LOOP_BACKÚSTAR_LOOP_ENTRYÚPLUS_LOOP_BACKÚLOOP_ENDéÿÿÿÿc                 C   s0   d | _ tj| _d | _d| _d| _g | _d | _d S )Nr   F)	r   r   ÚINVALID_STATE_NUMBERr   r   r   r	   r
   r   ©Úself© r(   úG/home/ubuntu/.local/lib/python3.10/site-packages/antlr4/atn/ATNState.pyÚ__init__m   s   
zATNState.__init__c                 C   ó   | j S ©N)r   r&   r(   r(   r)   Ú__hash__y   ó   zATNState.__hash__c                 C   s   t |tƒo
| j|jkS r,   )Ú
isinstancer   r   )r'   Úotherr(   r(   r)   Ú__eq__|   s   zATNState.__eq__c                 C   r+   r,   )r	   r&   r(   r(   r)   ÚonlyHasEpsilonTransitions   r.   z"ATNState.onlyHasEpsilonTransitionsc                 C   s   dS ©NFr(   r&   r(   r(   r)   ÚisNonGreedyExitState‚   s   zATNState.isNonGreedyExitStatec                 C   s
   t | jƒS r,   )Ústrr   r&   r(   r(   r)   Ú__str__…   s   
zATNState.__str__ÚtransÚindexc                 C   sT   t | jƒdkr|j| _n	| j|jkrd| _|dkr!| j |¡ d S | j ||¡ d S )Nr   Fr$   )Úlenr
   Ú	isEpsilonr	   ÚappendÚinsert)r'   r7   r8   r(   r(   r)   ÚaddTransitionˆ   s   
zATNState.addTransitionN)r$   )Ú__name__Ú
__module__Ú__qualname__Ú	__slots__ÚINVALID_TYPEr   r   r   r   r   r   r   r   r    r!   r"   r#   ÚserializationNamesr%   r*   r-   r1   r2   r4   r6   r   Úintr=   r(   r(   r(   r)   r   G   s0    r   c                       ó   e Zd Z‡ fdd„Z‡  ZS )Ú
BasicStatec                    ó   t ƒ  ¡  | j| _d S r,   )Úsuperr*   r   r   r&   ©Ú	__class__r(   r)   r*   •   ó   
zBasicState.__init__©r>   r?   r@   r*   Ú__classcell__r(   r(   rI   r)   rF   “   ó    rF   c                       ó    e Zd ZdZ‡ fdd„Z‡  ZS )ÚDecisionState)ÚdecisionÚ	nonGreedyc                    s   t ƒ  ¡  d| _d| _d S )Nr$   F)rH   r*   rQ   rR   r&   rI   r(   r)   r*   œ   s   

zDecisionState.__init__©r>   r?   r@   rA   r*   rM   r(   r(   rI   r)   rP   š   s    rP   c                       rO   )ÚBlockStartStateÚendStatec                    s   t ƒ  ¡  d | _d S r,   )rH   r*   rU   r&   rI   r(   r)   r*   ¥   s   

zBlockStartState.__init__rS   r(   r(   rI   r)   rT   ¢   ó    rT   c                       rE   )ÚBasicBlockStartStatec                    rG   r,   )rH   r*   r   r   r&   rI   r(   r)   r*   «   rK   zBasicBlockStartState.__init__rL   r(   r(   rI   r)   rW   ©   rN   rW   c                       rO   )ÚBlockEndStateÚ
startStatec                    ó   t ƒ  ¡  | j| _d | _d S r,   )rH   r*   r   r   rY   r&   rI   r(   r)   r*   ³   ó   

zBlockEndState.__init__rS   r(   r(   rI   r)   rX   °   rV   rX   c                       rE   )ÚRuleStopStatec                    rG   r,   )rH   r*   r   r   r&   rI   r(   r)   r*   ¿   rK   zRuleStopState.__init__rL   r(   r(   rI   r)   r\   ½   rN   r\   c                       rO   )ÚRuleStartState)Ú	stopStateÚisPrecedenceRulec                    s"   t ƒ  ¡  | j| _d | _d| _d S r3   )rH   r*   r   r   r^   r_   r&   rI   r(   r)   r*   Æ   s   

zRuleStartState.__init__rS   r(   r(   rI   r)   r]   Ã   rV   r]   c                       rE   )ÚPlusLoopbackStatec                    rG   r,   )rH   r*   r"   r   r&   rI   r(   r)   r*   Ñ   rK   zPlusLoopbackState.__init__rL   r(   r(   rI   r)   r`   Ï   rN   r`   c                       rO   )ÚPlusBlockStartStateÚloopBackStatec                    rZ   r,   )rH   r*   r   r   rb   r&   rI   r(   r)   r*   Ý   r[   zPlusBlockStartState.__init__rS   r(   r(   rI   r)   ra   Ú   rV   ra   c                       rE   )ÚStarBlockStartStatec                    rG   r,   )rH   r*   r   r   r&   rI   r(   r)   r*   å   rK   zStarBlockStartState.__init__rL   r(   r(   rI   r)   rc   ã   rN   rc   c                       rE   )ÚStarLoopbackStatec                    rG   r,   )rH   r*   r    r   r&   rI   r(   r)   r*   ë   rK   zStarLoopbackState.__init__rL   r(   r(   rI   r)   rd   é   rN   rd   c                       rO   )ÚStarLoopEntryState)rb   ÚisPrecedenceDecisionc                    s"   t ƒ  ¡  | j| _d | _d | _d S r,   )rH   r*   r!   r   rb   rf   r&   rI   r(   r)   r*   ó   s   

zStarLoopEntryState.__init__rS   r(   r(   rI   r)   re   ð   rV   re   c                       rO   )ÚLoopEndStaterb   c                    rZ   r,   )rH   r*   r#   r   rb   r&   rI   r(   r)   r*   þ   r[   zLoopEndState.__init__rS   r(   r(   rI   r)   rg   û   rV   rg   c                       rE   )ÚTokensStartStatec                    rG   r,   )rH   r*   r   r   r&   rI   r(   r)   r*     rK   zTokensStartState.__init__rL   r(   r(   rI   r)   rh     rN   rh   N)Úantlr4.atn.Transitionr   ÚINITIAL_NUM_TRANSITIONSÚobjectr   rF   rP   rT   rW   rX   r\   r]   r`   ra   rc   rd   re   rg   rh   r(   r(   r(   r)   Ú<module>   s"   BL		