gh-106510: Fix DEBUG output for atomic group (GH-106511)

This commit is contained in:
Serhiy Storchaka 2023-07-08 14:31:25 +03:00 committed by GitHub
parent ec7180bd1b
commit 74ec02e949
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 2 deletions

View File

@ -113,7 +113,6 @@ class SubPattern:
self.width = None
def dump(self, level=0):
nl = True
seqtypes = (tuple, list)
for op, av in self.data:
print(level*" " + str(op), end='')
@ -135,6 +134,9 @@ class SubPattern:
if item_no:
print(level*" " + "ELSE")
item_no.dump(level+1)
elif isinstance(av, SubPattern):
print()
av.dump(level+1)
elif isinstance(av, seqtypes):
nl = False
for a in av:

View File

@ -2489,7 +2489,10 @@ ELSE
def test_atomic_group(self):
self.assertEqual(get_debug_out(r'(?>ab?)'), '''\
ATOMIC_GROUP [(LITERAL, 97), (MAX_REPEAT, (0, 1, [(LITERAL, 98)]))]
ATOMIC_GROUP
LITERAL 97
MAX_REPEAT 0 1
LITERAL 98
0. INFO 4 0b0 1 2 (to 5)
5: ATOMIC_GROUP 11 (to 17)

View File

@ -0,0 +1 @@
Improve debug output for atomic groups in regular expressions.