File: //opt/alt/python37/lib/python3.7/site-packages/pyparsing/__pycache__/actions.cpython-37.pyc
B
�f%d � @ sp d dl mZ d dlmZ G dd� d�Zdd� Zdd� Zd d
� Zdd� Ze � e_
ddd�ZeZeZ
eZeZeZdS )� )�ParseException)�colc @ s( e Zd ZdZdd� Zdd� Zdd� ZdS ) �OnlyOncezI
Wrapper for parse actions, to ensure they are only called once.
c C s ddl m} ||�| _d| _d S )Nr )�_trim_arityF)Zcorer �callable�called)�selfZmethod_callr � r �B/opt/alt/python37/lib/python3.7/site-packages/pyparsing/actions.py�__init__ s
zOnlyOnce.__init__c C s. | j s| �|||�}d| _ |S t||d��d S )NTz.OnlyOnce obj called multiple times w/out reset)r r r )r �s�l�t�resultsr r r
�__call__ s
zOnlyOnce.__call__c C s
d| _ dS )zK
Allow the associated parse action to be called once more.
FN)r )r r r r
�reset s zOnlyOnce.resetN)�__name__�
__module__�__qualname__�__doc__r r r r r r r
r s r c s � fdd�}|S )zt
Helper method for defining parse actions that require matching at
a specific column in the input text.
c s$ t || �� kr t| |d�� ���d S )Nzmatched token not at column {})r r �format)ZstrgZlocnZtoks)�nr r
�
verify_col'