self.width = None
def dump(self, level=0):
- nl = True
seqtypes = (tuple, list)
for op, av in self.data:
print(level*" " + str(op), end='')
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:
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)
--- /dev/null
+Improve debug output for atomic groups in regular expressions.