logo
pub trait GraphNodesExtendableInterface where
    Self: GraphNodesNominalInterface
{ fn node_mut<Id>(&mut self, id: Id) -> &mut Self::NodeHandle
    where
        Id: Into<<<Self as GraphNodesNominalInterface>::NodeHandle as HasId>::Id>
; fn node_add_out_nodes<IntoId1, IntoId2, Iter>(
        &mut self,
        node_id: IntoId1,
        out_nodes_iter: Iter
    )
    where
        IntoId1: Into<<<Self as GraphNodesNominalInterface>::NodeHandle as HasId>::Id>,
        IntoId2: Into<<<Self as GraphNodesNominalInterface>::NodeHandle as HasId>::Id>,
        Iter: IntoIterator<Item = IntoId2>,
        Iter::IntoIter: Clone
; fn node_making<Id>(
        &mut self,
        id: Id
    ) -> <<Self as GraphNodesNominalInterface>::NodeHandle as HasId>::Id
    where
        Id: Into<<<Self as GraphNodesNominalInterface>::NodeHandle as HasId>::Id>
; fn node_add_out_node<IntoId1, IntoId2>(
        &mut self,
        node_id: IntoId1,
        out_node_id: IntoId2
    )
    where
        IntoId1: Into<<<Self as GraphNodesNominalInterface>::NodeHandle as HasId>::Id>,
        IntoId1: Clone,
        IntoId2: Into<<<Self as GraphNodesNominalInterface>::NodeHandle as HasId>::Id>,
        IntoId2: Clone
, { ... } fn make_with_edge_list<IntoIter, Id>(&mut self, into_iter: IntoIter)
    where
        Id: Into<<<Self as GraphNodesNominalInterface>::NodeHandle as HasId>::Id>,
        IntoIter: IntoIterator<Item = Id>,
        IntoIter::IntoIter: ExactSizeIterator<Item = Id>
, { ... } }
Expand description

Graph interface which allow to add more nodes. Know nothing about edges.

Required Methods

Get node with id mutably.

Add out nodes to the node.

Either make new or get existing node.

Provided Methods

Add out edges to the node.

Make edges.

Implementors