aboutsummaryrefslogtreecommitdiff
path: root/compilador/astree/graphable.py
blob: 99cfebf9f3b408cec31d45abe584866392ee0b20 (plain)
1
2
3
4
5
6
7
8
9
import graphviz as gv
from typing import Protocol, runtime_checkable
from abc import abstractmethod

@runtime_checkable
class Graphable(Protocol):
    @abstractmethod
    def graph(self, dot: gv.Digraph, parent: str = None, edge: str = None) -> None:
        raise NotImplementedError