Commit 226a8ac6 authored by Robert Bradshaw's avatar Robert Bradshaw

Fix in visitor doctests

parent 60757b21
......@@ -25,18 +25,18 @@ class BasicVisitor(object):
# Must resolve, try entire hierarchy
pattern = "visit_%s"
mro = inspect.getmro(cls)
handler_method = None
for mro_cls in mro:
try:
if hasattr(self, pattern % mro_cls.__name__):
handler_method = getattr(self, pattern % mro_cls.__name__)
break
except AttributeError:
pass
else:
if handler_method is None:
print type(self), type(obj)
if hasattr(self, 'access_path'):
print self.access_path
print self.access_path[-1][0].pos
print self.access_path[-1][0].__dict__
if self.access_path:
print self.access_path[-1][0].pos
print self.access_path[-1][0].__dict__
raise RuntimeError("Visitor does not accept object: %s" % obj)
#print "Caching " + cls.__name__
self.dispatch_table[cls] = handler_method
......@@ -60,7 +60,7 @@ class TreeVisitor(BasicVisitor):
Example:
>>> class SampleNode:
>>> class SampleNode(object):
... child_attrs = ["head", "body"]
... def __init__(self, value, head=None, body=None):
... self.value = value
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment