| 53 | |
| 54 | |
| 55 | class DirectedEdge(BaseModel): |
| 56 | edge_id:GID = Field(default_factory=assign_gid) |
| 57 | def __eq__(self, other) -> bool: |
| 58 | if isinstance(other,DirectedEdge): |
| 59 | return self.edge_id == other.edge_id |
| 60 | raise NotImplementedError('Unsupported operation between {} and {}'.format(type(self),type(other))) |
| 61 | |
| 62 | def __str__(self) -> str: |
| 63 | return str(self.edge_id) |
| 64 | |
| 65 | class ExecutionGraph(BaseModel): |
| 66 | init_node:Optional[GID] = None |