funcs.py 336 B

1234567891011
  1. from typing import Callable
  2. def generate_dot_wrap(func) -> Callable:
  3. def wrapper(self, *args, **kwargs) -> str:
  4. nodes = []
  5. edges = []
  6. self.reset_visited()
  7. func(self, nodes, edges, *args, **kwargs)
  8. return f"digraph G {{\n\t{"\n\t".join(nodes)}\n\t{"\n\t".join(edges)}\n}}"
  9. return wrapper