
    kh                     H    d dl mZ d dlmZ d dlmZmZ dZ G d de      Z	[y)    )RuleContext)Token)ProxyErrorListenerConsoleErrorListenerNc                       e Zd ZdZ e       Z e       Zd Zd Zd Z	d Z
d Zd Zd Zd	 Zd
efdZdefdZdefdZd ZdededefdZdedefdZed        Zej8                  defd       Zy)
Recognizer)
_listeners_interp_stateNumberc                 L    t         j                  g| _        d | _        d| _        y )N)r   INSTANCEr	   r
   r   selfs    M/var/www/teggl/fontify/venv/lib/python3.12/site-packages/antlr4/Recognizer.py__init__zRecognizer.__init__   s!    099;    c                     |j                  d      }|d| }||dz   d  }|j                  d      }|dk(  r|j                  d      }|dk(  rt        |      }|d| }||fS )N.r      r   -)findlen)r   versionposmajorminors        r   extractVersionzRecognizer.extractVersion   sr    ll3##a%&/ll37,,s#C7g,C#e|r   c                     d}| j                  |      \  }}| j                  |      \  }}||k7  s||k7  rt        d|z   dz   |z          y y )Nz4.9.3z4ANTLR runtime and generated code versions disagree: z!=)r   print)r   toolVersionruntimeVersionrvmajorrvminortvmajortvminors          r   checkVersionzRecognizer.checkVersion$   s_     ..~>..{;Gw/HWX\\]hhi  0r   c                 :    | j                   j                  |       y N)r	   appendr   listeners     r   addErrorListenerzRecognizer.addErrorListener+       x(r   c                 :    | j                   j                  |       y r)   )r	   remover+   s     r   removeErrorListenerzRecognizer.removeErrorListener.   r.   r   c                     g | _         y r)   )r	   r   s    r   removeErrorListenerszRecognizer.removeErrorListeners1   s	    r   c           	         | j                         }|ddlm}  |d      | j                  j	                  |d       }|At        |t        dt        |                  }t        j                  |d<   || j                  |<   |S )Nr   UnsupportedOperationExceptionz>The current recognizer does not provide a list of token names.EOF)
getTokenNamesantlr4.error.Errorsr6   tokenTypeMapCachegetzipranger   r   r7   )r   
tokenNamesr6   results       r   getTokenTypeMapzRecognizer.getTokenTypeMap4   s{    '')
I/0pqq''++J=>*eAs:&?@F!IIF5M17D"":.r   c           	          | j                         }|ddlm}  |d      | j                  j	                  |d       }|.t        |t        dt        |                  }|| j                  |<   |S )Nr   r5   z=The current recognizer does not provide a list of rule names.)getRuleNamesr9   r6   ruleIndexMapCacher;   r<   r=   r   )r   	ruleNamesr6   r?   s       r   getRuleIndexMapzRecognizer.getRuleIndexMapD   sn    %%'	I/0opp''++It<>)U1c)n%=>F06D""9-r   	tokenNamec                 j    | j                         j                  |d       }||S t        j                  S r)   )r@   r;   r   INVALID_TYPE)r   rF   ttypes      r   getTokenTypezRecognizer.getTokenTypeO   s4    $$&**9d;L%%%r   ec                     |j                         j                  }|j                         j                  }d|z   dz   |z   S )Nzline :)getOffendingTokenlinecolumn)r   rK   rO   rP   s       r   getErrorHeaderzRecognizer.getErrorHeaderX   s>    ""$))$$&--t|C&&r   tc                    |y|j                   }|;|j                  t        j                  k(  rd}ndt	        |j                        z   dz   }|j                  dd      }|j                  dd      }|j                  d	d
      }d|z   dz   S )Nz
<no token>z<EOF><>
z\nz\r	z\t')texttyper   r7   strreplace)r   rR   ss      r   getTokenErrorDisplayzRecognizer.getTokenErrorDisplayk   s    9FF9vvuyy #aff+%+IId5!IId5!IId5!Qw}r   c                 ,    t        | j                        S r)   )r   r	   r   s    r   getErrorListenerDispatchz#Recognizer.getErrorListenerDispatchy   s    !$//22r   localctx	ruleIndexactionIndexc                      yNT )r   rb   rc   rd   s       r   sempredzRecognizer.sempred~       r   
precedencec                      yrf   rg   )r   rb   rj   s      r   precpredzRecognizer.precpred   ri   r   c                     | j                   S r)   r   r   s    r   statezRecognizer.state   s       r   atnStatec                     || _         y r)   rn   )r   rp   s     r   ro   zRecognizer.state   s
    $r   N)__name__
__module____qualname__	__slots__dictr:   rC   r   r   r'   r-   r1   r3   r@   rE   r\   rJ   RecognitionExceptionrQ   r   r_   ra   r   intrh   rl   propertyro   setterrg   r   r   r   r      s    9I

j))
 	&S &'3 '&U 3
{ c s    ! ! \\%S % %r   r   )
antlr4.RuleContextr   antlr4.Tokenr   antlr4.error.ErrorListenerr   r   rw   objectr   rg   r   r   <module>r      s,    +  O  D% D%L r   