
    kh	                     &    d dl mZ  G d de      Zy)    )Tokenc                       e Zd ZdZdefdZd Zed        Zed        Z	d Z
d Zd	efd
Zd	efdZd ZdefdZdefdZdedefdZd Zy)InputStream)namestrdata_indexdata_sizer	   c                 @    d| _         || _        | j                          y )Nz<empty>)r   r   _loadString)selfr	   s     N/var/www/teggl/fontify/venv/lib/python3.12/site-packages/antlr4/InputStream.py__init__zInputStream.__init__   s    	    c                     d| _         | j                  D cg c]  }t        |       c}| _        t	        | j                        | _        y c c}w Nr   )r   r   ordr	   lenr
   )r   cs     r   r   zInputStream._loadString   s7    %)\\2SV2	^
 3s   Ac                     | j                   S Nr   r   s    r   indexzInputStream.index   s    {{r   c                     | j                   S r   )r
   r   s    r   sizezInputStream.size   s    zzr   c                     d| _         y r   r   r   s    r   resetzInputStream.reset'   s	    r   c                     | j                   | j                  k\  r/| j                  d      t        j                  k(  sJ t        d      | xj                   dz  c_         y )N   zcannot consume EOF)r   r
   LAr   EOF	Exceptionr   s    r   consumezInputStream.consume*   sF    ;;$**$771:***011qr   offsetc                     |dk(  ry|dk  r|dz  }| j                   |z   dz
  }|dk  s|| j                  k\  rt        j                  S | j                  |   S )Nr   r    )r   r
   r   r"   r	   )r   r%   poss      r   r!   zInputStream.LA0   sY    19!8aKFkkF"Q&7cTZZ'99yy~r   c                 $    | j                  |      S r   )r!   )r   r%   s     r   LTzInputStream.LT:   s    wwvr   c                      y)N r   s    r   markzInputStream.mark>   s    r   markerc                      y r   r,   )r   r.   s     r   releasezInputStream.releaseA   s    r   r   c                 h    || j                   k  r|| _         y t        || j                        | _         y r   )r   minr
   )r   r   s     r   seekzInputStream.seekG   s*    4;; DK&$**-r   startstopc                     || j                   k\  r| j                   dz
  }|| j                   k\  ry| j                  ||dz    S )Nr     )r
   r   )r   r4   r5   s      r   getTextzInputStream.getTextN   s?    4::::a<DDJJ<<d1f--r   c                     | j                   S r   )r   r   s    r   __str__zInputStream.__str__V   s    ||r   N)__name__
__module____qualname__	__slots__strr   r   propertyr   r   r   r$   intr!   r)   r-   r0   r3   r8   r:   r,   r   r   r   r      s    >IS 
$
      c .3 ..S . .r   r   N)antlr4.Tokenr   objectr   r,   r   r   <module>rD      s    I6 Ir   