Distance

Trait Distance 

Source
pub trait Distance<D> {
    type Output: Num;

    // Required method
    fn distance(&self, other: &Self, desc: D) -> Self::Output;
}
Expand description

The abstract notion of the distance between two values.

This can be used to calculate the distance between two arbitrary values without storing their difference as an intermediate result.

Required Associated Types§

Source

type Output: Num

The resulting type of the distance function.

Mathematically, a distance metric is a mapping from 2-tuples of vectors of a vector space V into the non-negative real numbers, so Output will usually be a floating point type or in some cases an unsigned integer type.

Required Methods§

Source

fn distance(&self, other: &Self, desc: D) -> Self::Output

Calculates the distance between self and other.

§Panics

An implementation of distance may panic if the operands do not fit together, e.g. have different sizes etc.

§Example
use num_complex::Complex;

use norman::Distance;
use norman::desc::Abs;

assert_eq!(Complex::new(2.0, 5.0).distance(&Complex::new(-1.0, 1.0), Abs::new()), 5.0);

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.

Implementations on Foreign Types§

Source§

impl Distance<Abs> for f32

Source§

type Output = f32

Source§

fn distance(&self, other: &Self, _desc: Abs) -> <Self as Distance<Abs>>::Output

Source§

impl Distance<Abs> for f64

Source§

type Output = f64

Source§

fn distance(&self, other: &Self, _desc: Abs) -> <Self as Distance<Abs>>::Output

Source§

impl Distance<Abs> for i8

Source§

type Output = u8

Source§

fn distance(&self, other: &Self, _desc: Abs) -> <Self as Distance<Abs>>::Output

Source§

impl Distance<Abs> for i16

Source§

type Output = u16

Source§

fn distance(&self, other: &Self, _desc: Abs) -> <Self as Distance<Abs>>::Output

Source§

impl Distance<Abs> for i32

Source§

type Output = u32

Source§

fn distance(&self, other: &Self, _desc: Abs) -> <Self as Distance<Abs>>::Output

Source§

impl Distance<Abs> for i64

Source§

type Output = u64

Source§

fn distance(&self, other: &Self, _desc: Abs) -> <Self as Distance<Abs>>::Output

Source§

impl Distance<Abs> for i128

Source§

type Output = u128

Source§

fn distance(&self, other: &Self, _desc: Abs) -> <Self as Distance<Abs>>::Output

Source§

impl Distance<Abs> for isize

Source§

type Output = usize

Source§

fn distance(&self, other: &Self, _desc: Abs) -> <Self as Distance<Abs>>::Output

Source§

impl Distance<Abs> for u8

Source§

type Output = u8

Source§

fn distance(&self, other: &Self, _desc: Abs) -> <Self as Distance<Abs>>::Output

Source§

impl Distance<Abs> for u16

Source§

type Output = u16

Source§

fn distance(&self, other: &Self, _desc: Abs) -> <Self as Distance<Abs>>::Output

Source§

impl Distance<Abs> for u32

Source§

type Output = u32

Source§

fn distance(&self, other: &Self, _desc: Abs) -> <Self as Distance<Abs>>::Output

Source§

impl Distance<Abs> for u64

Source§

type Output = u64

Source§

fn distance(&self, other: &Self, _desc: Abs) -> <Self as Distance<Abs>>::Output

Source§

impl Distance<Abs> for u128

Source§

type Output = u128

Source§

fn distance(&self, other: &Self, _desc: Abs) -> <Self as Distance<Abs>>::Output

Source§

impl Distance<Abs> for usize

Source§

type Output = usize

Source§

fn distance(&self, other: &Self, _desc: Abs) -> <Self as Distance<Abs>>::Output

Source§

impl<F: Float, C: FloatChecker<F>> Distance<Abs> for NoisyFloat<F, C>

Source§

type Output = NoisyFloat<F, C>

Source§

fn distance(&self, other: &Self, _desc: Abs) -> Self

Source§

impl<S, D, T, R> Distance<PNorm> for ArrayBase<S, D>
where S: Data<Elem = T>, D: Dimension, T: Distance<Abs, Output = R>, R: Float + From<f32>,

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, desc: PNorm) -> <Self as Distance<Sup>>::Output

Source§

impl<S, D, T, R> Distance<PNormReal> for ArrayBase<S, D>
where S: Data<Elem = T>, D: Dimension, T: Distance<Abs, Output = R> + Debug, R: Float + From<f32>,

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<Sup>>::Output

Source§

impl<S, D, T, R> Distance<Sup> for ArrayBase<S, D>
where S: Data<Elem = T>, D: Dimension, T: Distance<Abs, Output = R>, R: Num + PartialOrd,

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Float> Distance<Abs> for Complex<T>

Source§

fn distance(&self, other: &Self, _desc: Abs) -> T

Calculates the usual euclidean norm of the complex number.

Source§

type Output = T

Source§

impl<T: Float> Distance<Sup> for Complex<T>

Source§

fn distance(&self, other: &Self, _desc: Sup) -> T

Calculates the supremum norm of the complex number, i.e. the maximum of the absolute values of real and imaginary part.

Source§

type Output = T

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 0]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 1]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 2]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 3]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 4]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 5]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 6]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 7]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 8]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 9]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 10]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 11]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 12]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 13]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 14]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 15]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 16]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 17]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 18]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 19]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 20]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 21]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 22]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 23]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 24]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 25]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 26]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 27]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 28]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 29]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 30]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 31]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for [T; 32]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for VecDeque<T>

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNorm> for Vec<T>

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNorm, ) -> <Self as Distance<PNorm>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 0]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 1]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 2]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 3]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 4]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 5]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 6]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 7]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 8]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 9]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 10]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 11]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 12]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 13]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 14]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 15]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 16]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 17]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 18]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 19]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 20]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 21]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 22]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 23]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 24]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 25]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 26]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 27]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 28]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 29]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 30]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 31]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for [T; 32]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for VecDeque<T>

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Float + From<f32>> Distance<PNormReal> for Vec<T>

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance( &self, other: &Self, desc: PNormReal, ) -> <Self as Distance<PNormReal>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 0]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 1]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 2]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 3]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 4]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 5]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 6]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 7]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 8]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 9]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 10]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 11]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 12]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 13]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 14]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 15]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 16]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 17]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 18]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 19]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 20]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 21]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 22]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 23]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 24]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 25]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 26]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 27]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 28]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 29]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 30]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 31]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for [T; 32]

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for VecDeque<T>

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Source§

impl<T: Distance<Abs, Output = R>, R: Num + PartialOrd> Distance<Sup> for Vec<T>

Source§

type Output = <T as Distance<Abs>>::Output

Source§

fn distance(&self, other: &Self, _desc: Sup) -> <Self as Distance<Sup>>::Output

Implementors§