o
    wÖi	  ã                   @   s8   d dl mZ d dlmZ d dlmZ G dd„ deƒZdS )é    )ÚParseTreePatternMatcher)Ú	ParseTree)ÚXPathc                   @   sX   e Zd ZdZdedededefdd„Zdefd	d
„Z	defdd„Z
dedefdd„ZdS )ÚParseTreePattern©ÚmatcherÚpatternRuleIndexÚpatternÚpatternTreer   r	   r   r
   c                 C   s   || _ || _|| _|| _d S ©Nr   )Úselfr   r	   r   r
   © r   úY/home/ubuntu/sommelier/.venv/lib/python3.10/site-packages/antlr4/tree/ParseTreePattern.pyÚ__init__   s   
zParseTreePattern.__init__Útreec                 C   s   | j  || ¡S r   )r   Úmatch©r   r   r   r   r   r   *   s   zParseTreePattern.matchc                 C   s   | j  || ¡ ¡ S r   )r   r   Ú	succeededr   r   r   r   Úmatches4   s   zParseTreePattern.matchesÚxpathc                 C   sB   t  ||| jj¡}tƒ }|D ]}|  |¡}| ¡ r| |¡ q|S r   )r   ÚfindAllr   ÚparserÚlistr   r   Úappend)r   r   r   Úsubtreesr   Útr   r   r   r   r   A   s   

€zParseTreePattern.findAllN)Ú__name__Ú
__module__Ú__qualname__Ú	__slots__r   ÚstrÚintr   r   r   r   r   r   r   r   r   r      s    
r   N)Ú#antlr4.tree.ParseTreePatternMatcherr   Úantlr4.tree.Treer   Úantlr4.xpath.XPathr   Úobjectr   r   r   r   r   Ú<module>   s   
