summaryrefslogtreecommitdiff
path: root/pyparsing/core.py
diff options
context:
space:
mode:
Diffstat (limited to 'pyparsing/core.py')
-rw-r--r--pyparsing/core.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/pyparsing/core.py b/pyparsing/core.py
index a6858bd..1a92ca5 100644
--- a/pyparsing/core.py
+++ b/pyparsing/core.py
@@ -1904,6 +1904,11 @@ class ParserElement(ABC):
"""
Check defined expressions for valid structure, check for infinite recursive definitions.
"""
+ warnings.warn(
+ "ParserElement.validate() is deprecated, and should not be used to check for left recursion",
+ DeprecationWarning,
+ stacklevel=2,
+ )
self._checkRecursion([])
def parse_file(
@@ -3811,6 +3816,11 @@ class ParseExpression(ParserElement):
return self
def validate(self, validateTrace=None) -> None:
+ warnings.warn(
+ "ParserElement.validate() is deprecated, and should not be used to check for left recursion",
+ DeprecationWarning,
+ stacklevel=2,
+ )
tmp = (validateTrace if validateTrace is not None else [])[:] + [self]
for e in self.exprs:
e.validate(tmp)
@@ -4550,6 +4560,11 @@ class ParseElementEnhance(ParserElement):
self.expr._checkRecursion(subRecCheckList)
def validate(self, validateTrace=None) -> None:
+ warnings.warn(
+ "ParserElement.validate() is deprecated, and should not be used to check for left recursion",
+ DeprecationWarning,
+ stacklevel=2,
+ )
if validateTrace is None:
validateTrace = []
tmp = validateTrace[:] + [self]
@@ -5455,6 +5470,11 @@ class Forward(ParseElementEnhance):
return self
def validate(self, validateTrace=None) -> None:
+ warnings.warn(
+ "ParserElement.validate() is deprecated, and should not be used to check for left recursion",
+ DeprecationWarning,
+ stacklevel=2,
+ )
if validateTrace is None:
validateTrace = []