RawDomain

Trait RawDomain 

Source
pub trait RawDomain {
    type Key;

    // Required method
    fn len(&self) -> usize;

    // Provided method
    fn is_empty(&self) -> bool { ... }
}
Expand description

RawDomain is a trait that defines the behavior of a store that holds the vertices associated with a hyperedge or hyperfacet. It is used to abstract over different implementations of edge storage, such as arrays, vectors, or sets.

note: The trait is sealed to prevent external implementations, ensuring that only the crate can define how edges are stored. This is to maintain consistency and prevent misuse of the trait in different contexts.

Required Associated Types§

Required Methods§

Source

fn len(&self) -> usize

returns the number of vertices associated with the edge.

Provided Methods§

Source

fn is_empty(&self) -> bool

returns true if there are no points.

Implementations on Foreign Types§

Source§

impl<I> RawDomain for &[VertexId<I>]
where I: RawIndex,

Source§

type Key = IndexBase<I>

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

impl<I> RawDomain for (VertexId<I>, VertexId<I>)
where I: RawIndex,

Source§

type Key = IndexBase<I>

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

impl<I> RawDomain for BTreeSet<VertexId<I>>
where I: RawIndex,

Source§

type Key = IndexBase<I>

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

impl<I> RawDomain for VecDeque<VertexId<I>>
where I: RawIndex,

Source§

type Key = IndexBase<I>

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

impl<I> RawDomain for Vec<VertexId<I>>
where I: RawIndex,

Source§

type Key = IndexBase<I>

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

impl<I> RawDomain for [VertexId<I>]
where I: RawIndex,

Source§

type Key = IndexBase<I>

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

impl<I, S> RawDomain for HashSet<VertexId<I>, S>
where I: RawIndex, S: BuildHasher,

Source§

type Key = IndexBase<I>

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Source§

impl<const N: usize, I> RawDomain for [VertexId<I>; N]
where I: RawIndex,

Source§

type Key = IndexBase<I>

Source§

fn len(&self) -> usize

Source§

fn is_empty(&self) -> bool

Implementors§