Skip to content

Node

Node dataclass

A node in a hypergraph.

Source code in src/IsomorphismChecker_python_serial/node.py
@dataclass(slots=True)
class Node:
    """A node in a hypergraph."""

    index: int
    label: str
    display_label: str = field(init=False)

    # For user-input validation purposes only
    prev: Optional[EdgeInfo] = field(default=None, init=False)
    next: Optional[EdgeInfo] = field(default=None, init=False)

    def __post_init__(self):
        self.display_label = f"{self.label}, {self.index}"