a
    d                     @   sT   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	m
Z
 G dd deZdS )	    )IntervalSet)RuleContext)Token)ATNType)ATNStateDecisionStatec                   @   s   e Zd ZdZdZeedddZee	dddZ
ed	d
dZdee	dddZedddZedddZed	ddZedddZee	dddZdS )ATN)
grammarTypemaxTokenTypestatesdecisionToStateruleToStartStateruleToStopStatemodeNameToStartStateruleToTokenTypelexerActionsmodeToStartStater   )r	   r
   c                 C   sB   || _ || _g | _g | _g | _d | _t | _d | _d | _	g | _
d S N)r	   r
   r   r   r   r   dictr   r   r   r   )selfr	   r
    r   W/var/www/html/stable-diffusion-webui/venv/lib/python3.9/site-packages/antlr4/atn/ATN.py__init__   s    zATN.__init__)sctxc                 C   s"   ddl m} || }|j||dS )Nr   )LL1Analyzer)r   )Zantlr4.LL1Analyzerr   ZLOOK)r   r   r   r   Zanalr   r   r   nextTokensInContext6   s    zATN.nextTokensInContext)r   c                 C   s,   |j d ur|j S | |d |_ d|j _|j S )NT)ZnextTokenWithinRuler   readonlyr   r   r   r   r   nextTokensNoContext>   s
    
zATN.nextTokensNoContextNc                 C   s"   |d kr|  |S | ||S d S r   )r   r   )r   r   r   r   r   r   
nextTokensE   s    
zATN.nextTokens)statec                 C   s*   |d ur| |_ t| j|_| j| d S r   )Zatnlenr   stateNumberappendr   r!   r   r   r   addStateK   s    zATN.addStatec                 C   s   d | j |j< d S r   )r   r#   r%   r   r   r   removeStateQ   s    zATN.removeStatec                 C   s"   | j | t| j d |_|jS )N   )r   r$   r"   decisionr   r   r   r   defineDecisionStateT   s    zATN.defineDecisionState)r)   c                 C   s    t | jdkrd S | j| S d S )Nr   )r"   r   )r   r)   r   r   r   getDecisionStateY   s    zATN.getDecisionState)r#   r   c                 C   s   |dk s|t | jkrtd| j| }| |}tj|vr@|S t }|| |tj |d kr|j	dkrtj|v r| j|j	 }|j
d }| |j}|| |tj |j}q\tj|v r|tj |S )Nr   zInvalid state number.)r"   r   	Exceptionr    r   ZEPSILONr   ZaddSetZ	removeOneinvokingStateZtransitionsZfollowStateZ	parentCtxZaddOneEOF)r   r#   r   r   Z	followingexpectedr-   rtr   r   r   getExpectedTokensq   s&    






zATN.getExpectedTokens)N)__name__
__module____qualname__	__slots__ZINVALID_ALT_NUMBERr   intr   r   r   r   r   r    r&   r'   r   r*   r+   r1   r   r   r   r   r      s   r   N)Zantlr4.IntervalSetr   Zantlr4.RuleContextr   Zantlr4.Tokenr   Zantlr4.atn.ATNTyper   Zantlr4.atn.ATNStater   r   objectr   r   r   r   r   <module>   s
   