Trait DAG

Source
pub trait DAG: Graph {
    // Required method
    fn predecessor_edges(
        &self,
        node_index: Self::NodeIndex,
    ) -> Vec<Self::NodeIndex>;

    // Provided methods
    fn topological_sort_with_order_indicator<OrderIndicator, FOrd, Set>(
        &self,
        index_set: Set,
        order_indicator: FOrd,
    ) -> Vec<Self::NodeIndex>
       where OrderIndicator: Ord,
             FOrd: Fn(Self::NodeIndex) -> OrderIndicator,
             Set: SetLike<Self::NodeIndex> + Default + Clone + IntoIterator<Item = Self::NodeIndex> { ... }
    fn topological_sort<Set>(&self, index_set: Set) -> Vec<Self::NodeIndex>
       where Set: SetLike<Self::NodeIndex> + Default + Clone + IntoIterator<Item = Self::NodeIndex> { ... }
}

Required Methods§

Source

fn predecessor_edges(&self, node_index: Self::NodeIndex) -> Vec<Self::NodeIndex>

Provided Methods§

Source

fn topological_sort_with_order_indicator<OrderIndicator, FOrd, Set>( &self, index_set: Set, order_indicator: FOrd, ) -> Vec<Self::NodeIndex>
where OrderIndicator: Ord, FOrd: Fn(Self::NodeIndex) -> OrderIndicator, Set: SetLike<Self::NodeIndex> + Default + Clone + IntoIterator<Item = Self::NodeIndex>,

Source

fn topological_sort<Set>(&self, index_set: Set) -> Vec<Self::NodeIndex>
where Set: SetLike<Self::NodeIndex> + Default + Clone + IntoIterator<Item = Self::NodeIndex>,

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<T: TreeGraph> DAG for T