# graph.rl ## Class Edge ### Fields ### Methods - **Function**: `get_target_id() -> Int` - **Function**: `get_source_id() -> Int` - **Function**: `get_label() -> ref EdgeLabel` ## Class Node ### Fields ### Methods - **Function**: `add_edge(Node other) ` - **Function**: `add_edge(Node other, EdgeLabel label) ` - **Function**: `get_outgoing(Int index) -> ref Edge` - **Function**: `get_size_outgoing() -> Int` - **Function**: `get_size_incomming() -> Int` - **Function**: `get_incomming(Int index) -> Int` - **Function**: `get_label() -> ref NodeLabel` - **Function**: `get_id() -> Int` ## Class Graph ### Fields ### Methods - **Function**: `add_node(Node n) ` - **Function**: `add_node() ` - **Function**: `remove_edge(Node node, Int edge_id) ` - **Function**: `erase_outgoing_edges(Node n) ` - **Function**: `erase_incomming_edges(Node n) ` - **Function**: `remove_node(Node n) ` - **Function**: `get_node(Int node_id) -> ref Node` - **Function**: `get_nodes_size() -> Int` - **Function**: `add_node(Int source, Int to) ` - **Function**: `add_node(Node source, Node to) ` - **Function**: `get_size_successors(Node n) -> Int` - **Function**: `get_successors(Node n, Int index_successor) -> Node` - **Function**: `get_size_predecessors(Node n) -> Int` - **Function**: `get_predecessor(Node n, Int index_successor) -> Node`