Skip to main content

CoveringSpace

Trait CoveringSpace 

Source
pub trait CoveringSpace: Space {
    type CoverIso: Copy + Send + Sync + 'static;

    // Required methods
    fn cover_identity(&self) -> Self::CoverIso;
    fn cover_compose(
        &self,
        a: Self::CoverIso,
        b: Self::CoverIso,
    ) -> Self::CoverIso;
    fn cover_inverse(&self, a: Self::CoverIso) -> Self::CoverIso;
    fn cover_apply(&self, iso: Self::CoverIso, p: Self::Point) -> Self::Point;
    fn cover_transport(
        &self,
        iso: Self::CoverIso,
        at: Self::Point,
        v: Self::Vector,
    ) -> Self::Vector;
}

Required Associated Types§

Source

type CoverIso: Copy + Send + Sync + 'static

Required Methods§

Source

fn cover_identity(&self) -> Self::CoverIso

Source

fn cover_compose(&self, a: Self::CoverIso, b: Self::CoverIso) -> Self::CoverIso

Source

fn cover_inverse(&self, a: Self::CoverIso) -> Self::CoverIso

Source

fn cover_apply(&self, iso: Self::CoverIso, p: Self::Point) -> Self::Point

Source

fn cover_transport( &self, iso: Self::CoverIso, at: Self::Point, v: Self::Vector, ) -> Self::Vector

Implementors§