pub struct Dag { /* private fields */ }Expand description
DAG 结构
Implementations§
Source§impl Dag
impl Dag
pub fn new() -> Self
Sourcepub fn add_node(&mut self, node: Node) -> Layer2Result<()>
pub fn add_node(&mut self, node: Node) -> Layer2Result<()>
添加节点
Sourcepub fn topological_sort(&self) -> Layer2Result<Vec<String>>
pub fn topological_sort(&self) -> Layer2Result<Vec<String>>
拓扑排序
Sourcepub fn get_dependencies(&self, node_id: &str) -> Vec<String>
pub fn get_dependencies(&self, node_id: &str) -> Vec<String>
获取节点的依赖
Sourcepub fn get_successors(&self, node_id: &str) -> Vec<String>
pub fn get_successors(&self, node_id: &str) -> Vec<String>
获取节点的后继
Sourcepub fn node_count(&self) -> usize
pub fn node_count(&self) -> usize
节点数量
Sourcepub fn edge_count(&self) -> usize
pub fn edge_count(&self) -> usize
边数量
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Dag
impl RefUnwindSafe for Dag
impl Send for Dag
impl Sync for Dag
impl Unpin for Dag
impl UnsafeUnpin for Dag
impl UnwindSafe for Dag
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more