class Visitor(dispatcher.Dispatcher, metaclass=VisitorMeta):
@dispatcher.Hook(object)
- def dispatch_object(self, node):
+ def dispatch_object(self, node, *_, **__):
return node
class ContextVisitor(Visitor):
@dispatcher.Hook(object)
@contextlib.contextmanager
- def dispatch_object(self, node):
+ def dispatch_object(self, node, *_, **__):
yield node
class Walker(dispatcher.Dispatcher, metaclass=WalkerMeta):
@dispatcher.Hook(tuple, list)
- def dispatch_ordered_sequence(self, node):
+ def dispatch_ordered_sequence(self, node, *_, **__):
for (index, item) in enumerate(node):
yield (item, node, index, IndexPath)
@dispatcher.Hook(set, frozenset)
- def dispatch_unordered_sequence(self, node):
+ def dispatch_unordered_sequence(self, node, *_, **__):
for item in node:
yield (item, node, item, HashPath)
@dispatcher.Hook(dataclasses.is_dataclass)
- def dispatch_dataclass(self, node):
+ def dispatch_dataclass(self, node, *_, **__):
for field in dataclasses.fields(node):
key = field.name
value = getattr(node, key)
yield (value, node, key, AttributePath)
@dispatcher.Hook(dict)
- def dispatch_mapping(self, node):
+ def dispatch_mapping(self, node, *_, **__):
for (key, value) in node.items():
yield (key, node, key, HashPath)
yield (value, node, key, IndexPath)
@dispatcher.Hook(object)
- def dispatch_object(self, node):
+ def dispatch_object(self, node, *_, **__):
yield from ()