File: //usr/lib/python3/dist-packages/pip/_vendor/pyparsing/__pycache__/testing.cpython-310.pyc
o
@%NeL4 � @ sF d dl mZ d dlmZ ddlmZmZmZmZm Z G dd� d�Z
dS )� )�contextmanager)�Optional� )�
ParserElement�ParseException�Keyword�__diag__�
__compat__c @ sx e Zd ZdZG dd� d�ZG dd� d�Ze dd ed
ee dee de
d
edee dee defdd��ZdS )�pyparsing_testzB
namespace class for classes useful in writing unit tests
c @ s@ e Zd ZdZdd� Zdd� Zdd� Zdd � Zd
d� Zdd
� Z dS )z&pyparsing_test.reset_pyparsing_contexta�
Context manager to be used when writing unit tests that modify pyparsing config values:
- packrat parsing
- bounded recursion parsing
- default whitespace characters.
- default keyword characters
- literal string auto-conversion class
- __diag__ settings
Example::
with reset_pyparsing_context():
# test that literals used to construct a grammar are automatically suppressed
ParserElement.inlineLiteralsUsing(Suppress)
term = Word(alphas) | Word(nums)
group = Group('(' + term[...] + ')')
# assert that the '()' characters are not included in the parsed tokens
self.assertParseAndCheckList(group, "(abc 123 def)", ['abc', '123', 'def'])
# after exiting context manager, literals are converted to Literal expressions again
c C s
i | _ d S �N)�
_save_context��self� r �?/usr/lib/python3/dist-packages/pip/_vendor/pyparsing/testing.py�__init__- s
z/pyparsing_test.reset_pyparsing_context.__init__c C s� t j| jd<