U
    :qLe¸
  ã                   @   s8   d dl mZ d dlmZ d dlmZ G dd„ deƒZdS )é    )ÚBufferedTokenStream)ÚLexer)ÚTokenc                       s\   e Zd Zejfeedœ‡ fdd„Zedœdd„Zedœdd	„Z	edœd
d„Z
dd„ Z‡  ZS )ÚCommonTokenStream)ÚlexerÚchannelc                    s   t ƒ  |¡ || _d S ©N)ÚsuperÚ__init__r   )Úselfr   r   ©Ú	__class__© úo/home/p21-0144/sympy/latex2sympy2solve-back-end/sympyEq/lib/python3.8/site-packages/antlr4/CommonTokenStream.pyr
   '   s    zCommonTokenStream.__init__)Úic                 C   s   |   || j¡S r   )ÚnextTokenOnChannelr   )r   r   r   r   r   ÚadjustSeekIndex+   s    z!CommonTokenStream.adjustSeekIndex)Úkc                 C   s^   |dks| j | dk rd S | j }d}||krH|  |d | j¡}|d7 }q$|dk rTd S | j| S ©Nr   é   )ÚindexÚpreviousTokenOnChannelr   Útokens©r   r   r   Únr   r   r   ÚLB.   s    
zCommonTokenStream.LBc                 C   sn   |   ¡  |dkrd S |dk r(|  | ¡S | j}d}||k rd|  |d ¡rZ|  |d | j¡}|d7 }q2| j| S r   )ÚlazyInitr   r   Úsyncr   r   r   r   r   r   r   ÚLT<   s    
zCommonTokenStream.LTc                 C   sT   d}|   ¡  tdt| jƒƒD ]2}| j| }|j| jkr>|d7 }|jtjkr qPq|S r   )ÚfillÚrangeÚlenr   r   Útyper   ÚEOF)r   r   r   Útr   r   r   ÚgetNumberOfOnChannelTokensM   s    
z,CommonTokenStream.getNumberOfOnChannelTokens)Ú__name__Ú
__module__Ú__qualname__r   ÚDEFAULT_CHANNELr   Úintr
   r   r   r   r%   Ú__classcell__r   r   r   r   r   %   s
   r   N)Úantlr4.BufferedTokenStreamr   Úantlr4.Lexerr   Úantlr4.Tokenr   r   r   r   r   r   Ú<module>    s   