summaryrefslogtreecommitdiff
path: root/pyparsing/helpers.py
diff options
context:
space:
mode:
authorptmcg <ptmcg@austin.rr.com>2021-10-31 06:29:24 -0500
committerptmcg <ptmcg@austin.rr.com>2021-10-31 06:29:24 -0500
commite269b0a3d067e66ef718b8508a4a82927c7606d0 (patch)
tree4923f0b7995294eff6c7d2f17fbc27e5ee0c8ca6 /pyparsing/helpers.py
parent578ac28425890c2967abf3915194b63b0bf17e42 (diff)
downloadpyparsing-git-e269b0a3d067e66ef718b8508a4a82927c7606d0.tar.gz
Removed spurious warnings when assigning results name to originalTextFor expression (Issue #110)
Diffstat (limited to 'pyparsing/helpers.py')
-rw-r--r--pyparsing/helpers.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/pyparsing/helpers.py b/pyparsing/helpers.py
index a8a1429..27a4efa 100644
--- a/pyparsing/helpers.py
+++ b/pyparsing/helpers.py
@@ -387,13 +387,14 @@ def original_text_for(
locMarker = Empty().set_parse_action(lambda s, loc, t: loc)
endlocMarker = locMarker.copy()
endlocMarker.callPreparse = False
- matchExpr = locMarker("_original_start") + expr + endlocMarker("_original_end")
+ # prefix these transient names with _NOWARN to suppress ungrouped name warnings
+ matchExpr = locMarker("_NOWARN_original_start") + expr + endlocMarker("_NOWARN_original_end")
if asString:
- extractText = lambda s, l, t: s[t._original_start : t._original_end]
+ extractText = lambda s, l, t: s[t._NOWARN_original_start : t._NOWARN_original_end]
else:
def extractText(s, l, t):
- t[:] = [s[t.pop("_original_start") : t.pop("_original_end")]]
+ t[:] = [s[t.pop("_NOWARN_original_start") : t.pop("_NOWARN_original_end")]]
matchExpr.set_parse_action(extractText)
matchExpr.ignoreExprs = expr.ignoreExprs