File: //opt/alt/python37/lib/python3.7/site-packages/pyparsing/__pycache__/actions.cpython-37.pyc
B
o|Se � @ 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)�corer �callable�called)�selfZmethod_callr � r
��/builddir/build/BUILDROOT/alt-python37-pyparsing-3.0.9-2.el8.x86_64/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)�strg�locn�toks)�nr
r �
verify_col'