pub trait HierarchyUtil: HierarchyBase {
    // Provided methods
    fn is_top_level_cell(&self, cell: &Self::CellId) -> bool { ... }
    fn is_leaf_cell(&self, cell: &Self::CellId) -> bool { ... }
    fn each_top_level_cell(
        &self
    ) -> Box<dyn Iterator<Item = Self::CellId>, Global> { ... }
    fn each_leaf_cell(&self) -> Box<dyn Iterator<Item = Self::CellId>, Global> { ... }
    fn each_cell_bottom_to_top(
        &self
    ) -> Box<dyn Iterator<Item = Self::CellId>, Global> { ... }
}
Expand description

Non-modifying utility functions for the cell hierarchy.. Import the this trait to use the utility functions all types that implement the HierarchyBase trait.

Provided Methods§

source

fn is_top_level_cell(&self, cell: &Self::CellId) -> bool

Check if the cell is a top level cell. This is done by checking that no other cells have an instance of this cell.

source

fn is_leaf_cell(&self, cell: &Self::CellId) -> bool

Check if the cell is a leaf cell. This is done by checking that this cell contains no other cell instances.

source

fn each_top_level_cell(&self) -> Box<dyn Iterator<Item = Self::CellId>, Global>

Iterate over all top level cells.

source

fn each_leaf_cell(&self) -> Box<dyn Iterator<Item = Self::CellId>, Global>

Iterate over all leaf cells, i.e. cells which contain no other cells.

source

fn each_cell_bottom_to_top( &self ) -> Box<dyn Iterator<Item = Self::CellId>, Global>

Iterate over topologically sorted cells (from leaf-cells to top-cells).

Implementors§

source§

impl<N> HierarchyUtil for Nwhere N: HierarchyBase,