Trait GraphType

Source
pub trait GraphType {
    type Node<'a>: Copy + Eq;
    type Edge<'a>: Copy + Eq;
}
Expand description

Base information of a graph.

Required Associated Types§

Source

type Node<'a>: Copy + Eq

Type of a node.

Source

type Edge<'a>: Copy + Eq

Type of an edge.

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.

Implementations on Foreign Types§

Source§

impl<'g, G> GraphType for &'g G
where G: GraphType,

Source§

type Node<'a> = <G as GraphType>::Node<'a>

Source§

type Edge<'a> = <G as GraphType>::Edge<'a>

Source§

impl<G> GraphType for Rc<G>
where G: GraphType,

Source§

type Node<'a> = <G as GraphType>::Node<'a>

Source§

type Edge<'a> = <G as GraphType>::Edge<'a>

Implementors§

Source§

impl<'g, G> GraphType for Network<'g, G>
where G: GraphType,

Source§

type Node<'a> = <G as GraphType>::Node<'a>

Source§

type Edge<'a> = NetworkEdge<<G as GraphType>::Edge<'a>>

Source§

impl<'g, G> GraphType for ReverseDigraph<'g, G>
where G: GraphType,

Source§

type Node<'a> = <G as GraphType>::Node<'a>

Source§

type Edge<'a> = <G as GraphType>::Edge<'a>

Source§

impl<ID> GraphType for VecGraph<ID>
where ID: PrimInt + Unsigned,

Source§

type Node<'a> = Node<ID>

Source§

type Edge<'a> = Edge<ID>

Source§

impl<ID, N, E> GraphType for LinkedListGraph<ID, N, E>
where ID: PrimInt + Unsigned,

Source§

type Node<'a> = Node<ID>

Source§

type Edge<'a> = Edge<ID>