Trait nalgebra::base::dimension::Dim

source ·
pub unsafe trait Dim: Any + Debug + Copy + PartialEq + Send + Sync {
    // Required methods
    fn try_to_usize() -> Option<usize>;
    fn value(&self) -> usize;
    fn from_usize(dim: usize) -> Self;

    // Provided method
    fn is<D: Dim>() -> bool { ... }
Expand description

Trait implemented by any type that can be used as a dimension. This includes type-level integers and Dyn (for dimensions not known at compile-time).

Required Methods§


fn try_to_usize() -> Option<usize>

Gets the compile-time value of Self. Returns None if it is not known, i.e., if Self = Dyn.


fn value(&self) -> usize

Gets the run-time value of self. For type-level integers, this is the same as Self::try_to_usize().unwrap().


fn from_usize(dim: usize) -> Self

Builds an instance of Self from a run-time value. Panics if Self is a type-level integer and dim != Self::try_to_usize().unwrap().

Provided Methods§


fn is<D: Dim>() -> bool

Object Safety§

This trait is not object safe.



impl Dim for Dyn


impl<const T: usize> Dim for Const<T>