
    <i                     R    S SK Jr   " S S\5      r " S S\5      r " S S\5      rg)	    )ErrorListenerc                   2   ^  \ rS rSrSrU 4S jrS rSrU =r$ )STIXPatternErrorListener   zl
Modifies ErrorListener to collect error message and set flag to False when
invalid pattern is encountered.
c                 8   > [         [        U ]  5         / U l        g )N)superr   __init__err_strings)self	__class__s    R/home/james-whalen/.local/lib/python3.13/site-packages/stix2patterns/exceptions.pyr	   !STIXPatternErrorListener.__init__	   s    &68    c                 D    U R                   R                  SX4U4-  5        g )Nz#FAIL: Error found at line %d:%d. %s)r
   appendr   
recognizeroffendingSymbollinecolumnmsges          r   syntaxError$STIXPatternErrorListener.syntaxError   s&     E!%s 3!4 	5r   )r
   )	__name__
__module____qualname____firstlineno____doc__r	   r   __static_attributes____classcell__)r   s   @r   r   r      s    5 5r   r   c                       \ rS rSrSrS rSrg)ParserErrorListener   zM
Simple error listener which just remembers the last error message received.
c                 2    SR                  X4U5      U l        g )Nz	{}:{}: {})formaterror_messager   s          r   r   ParserErrorListener.syntaxError   s    )00sCr   )r'   N)r   r   r   r   r   r   r     r   r   r#   r#      s    Dr   r#   c                       \ rS rSrSrSrg)ParseException   zRepresents a parse error.r)   N)r   r   r   r   r   r    r)   r   r   r+   r+      s    #r   r+   N)antlr4.error.ErrorListenerr   r   r#   	Exceptionr+   r)   r   r   <module>r/      s.    45} 5D- D	Y 	r   