Trait GraphEdgesExtendableInterface

Source
pub trait GraphEdgesExtendableInterface:
    GraphNodesNominalInterface
    + GraphEdgesNominalInterface
    + GraphNodesExtendableInterface {
    // Required methods
    fn _edge_id_generate(
        &mut self,
        node1: <Self::NodeHandle as HasId>::Id,
        node2: <Self::NodeHandle as HasId>::Id,
    ) -> <Self::EdgeHandle as HasId>::Id;
    fn _edge_add(
        &mut self,
        edge_id: <Self::EdgeHandle as HasId>::Id,
        node1: <Self::NodeHandle as HasId>::Id,
        node2: <Self::NodeHandle as HasId>::Id,
    );

    // Provided method
    fn _edge_make_for_nodes<IntoNodeId1, IntoNodeId2>(
        &mut self,
        node1: IntoNodeId1,
        node2: IntoNodeId2,
    ) -> <Self::EdgeHandle as HasId>::Id
       where IntoNodeId1: Into<<Self::NodeHandle as HasId>::Id>,
             IntoNodeId2: Into<<Self::NodeHandle as HasId>::Id> { ... }
}
Expand description

Graph interface which allow to add more edges.

Required Methods§

Source

fn _edge_id_generate( &mut self, node1: <Self::NodeHandle as HasId>::Id, node2: <Self::NodeHandle as HasId>::Id, ) -> <Self::EdgeHandle as HasId>::Id

Either make new or get existing edge for specified nodes.

Source

fn _edge_add( &mut self, edge_id: <Self::EdgeHandle as HasId>::Id, node1: <Self::NodeHandle as HasId>::Id, node2: <Self::NodeHandle as HasId>::Id, )

Either make new or get existing edge for specified nodes.

Provided Methods§

Source

fn _edge_make_for_nodes<IntoNodeId1, IntoNodeId2>( &mut self, node1: IntoNodeId1, node2: IntoNodeId2, ) -> <Self::EdgeHandle as HasId>::Id
where IntoNodeId1: Into<<Self::NodeHandle as HasId>::Id>, IntoNodeId2: Into<<Self::NodeHandle as HasId>::Id>,

Either make new or get existing edge for specified nodes.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<NodeId, EdgeId, Kind> GraphEdgesExtendableInterface for CellNodeFactory<NodeId, EdgeId, Kind>

Source§

impl<NodeId, EdgeId, Kind> GraphEdgesExtendableInterface for NodeFactory<NodeId, EdgeId, Kind>