MappingExt

Trait MappingExt 

Source
pub trait MappingExt: Sized {
    // Required methods
    fn size(&self) -> usize;
    fn pair(self, other: Mapping) -> Mapping;
    fn pairs(ms: RVec<Mapping>) -> Mapping;
    fn divide_span(
        &self,
        divisor: &Mapping,
        span: usize,
    ) -> RResult<Division<Span>, DivisionError>;
    fn divide_relaxed(&self, divisor: &Mapping) -> Division<Relaxed>;
    fn divide_strict(&self, divisor: &Mapping) -> Division<Strict>;
    fn factorize(&self) -> FMapping;
}
Expand description

Methods for Mapping.

Required Methods§

Source

fn size(&self) -> usize

Returns the size of the mapping expression.

Source

fn pair(self, other: Mapping) -> Mapping

Pairs two mapping expressions and simplifies.

Source

fn pairs(ms: RVec<Mapping>) -> Mapping

Pairs multiple mapping expressions and simplifies.

Source

fn divide_span( &self, divisor: &Mapping, span: usize, ) -> RResult<Division<Span>, DivisionError>

Divides the mapping expression by a single-term divisor with a span.

Source

fn divide_relaxed(&self, divisor: &Mapping) -> Division<Relaxed>

Divides the mapping expression without exposing analysis.

Source

fn divide_strict(&self, divisor: &Mapping) -> Division<Strict>

Divides the mapping expression.

Source

fn factorize(&self) -> FMapping

Factorizes the mapping expression into factor representation.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§