summaryrefslogtreecommitdiff
path: root/pyparsing
diff options
context:
space:
mode:
Diffstat (limited to 'pyparsing')
-rw-r--r--pyparsing/__init__.py2
-rw-r--r--pyparsing/results.py30
2 files changed, 13 insertions, 19 deletions
diff --git a/pyparsing/__init__.py b/pyparsing/__init__.py
index 4d1a99e..b7e09ce 100644
--- a/pyparsing/__init__.py
+++ b/pyparsing/__init__.py
@@ -118,7 +118,7 @@ class version_info(NamedTuple):
__version_info__ = version_info(3, 0, 10, "final", 0)
-__version_time__ = "11 Jul 2022 23:11 UTC"
+__version_time__ = "12 Jul 2022 01:22 UTC"
__version__ = __version_info__.__version__
__versionTime__ = __version_time__
__author__ = "Paul McGuire <ptmcg.gm+pyparsing@gmail.com>"
diff --git a/pyparsing/results.py b/pyparsing/results.py
index df3fd02..b6fc538 100644
--- a/pyparsing/results.py
+++ b/pyparsing/results.py
@@ -569,19 +569,16 @@ class ParseResults:
return self._name
elif self._parent:
par: "ParseResults" = self._parent
-
- def find_in_parent(sub):
- return next(
- (
- k
- for k, vlist in par._tokdict.items()
- for v, loc in vlist
- if sub is v
- ),
- None,
- )
-
- return find_in_parent(self) if par else None
+ parent_tokdict_items = par._tokdict.items()
+ return next(
+ (
+ k
+ for k, vlist in parent_tokdict_items
+ for v, loc in vlist
+ if v is self
+ ),
+ None,
+ )
elif (
len(self) == 1
and len(self._tokdict) == 1
@@ -704,7 +701,7 @@ class ParseResults:
self._toklist,
(
self._tokdict.copy(),
- self._parent,
+ None,
self._all_names,
self._name,
),
@@ -713,10 +710,7 @@ class ParseResults:
def __setstate__(self, state):
self._toklist, (self._tokdict, par, inAccumNames, self._name) = state
self._all_names = set(inAccumNames)
- if par is not None:
- self._parent = par
- else:
- self._parent = None
+ self._parent = None
def __getnewargs__(self):
return self._toklist, self._name