Trait dfdx::shapes::ReplaceDimTo

source ·
pub trait ReplaceDimTo<Dst: Shape, Idx: Shape>: Shape {
    type Ax: Axes<Array = [isize; 1]>;

    // Provided methods
    fn check(&self, idx: &Idx) { ... }
    fn replace(&self, idx: Idx) -> Dst { ... }
}
Expand description

Marker for shapes that can be indexed and have a dimension replaced with a new one

Required Associated Types§

source

type Ax: Axes<Array = [isize; 1]>

Provided Methods§

source

fn check(&self, idx: &Idx)

All dimensions of idx up to last dimension (which is new) should be the same as the dimensions of Self

source

fn replace(&self, idx: Idx) -> Dst

Implementations on Foreign Types§

source§

impl<B: Dim, C: Dim, D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(B, New, D, E, F), (B, New)> for (B, C, D, E, F)

§

type Ax = Axis<1>

source§

impl<D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(D, New, F), (D, New)> for (D, E, F)

§

type Ax = Axis<1>

source§

impl<A: Dim, B: Dim, C: Dim, D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(A, B, C, D, New, F), (A, B, C, D, New)> for (A, B, C, D, E, F)

§

type Ax = Axis<4>

source§

impl<A: Dim, B: Dim, C: Dim, D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(New, B, C, D, E, F), (New,)> for (A, B, C, D, E, F)

§

type Ax = Axis<0>

source§

impl<A: Dim, B: Dim, C: Dim, D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(A, B, C, New, E, F), (A, B, C, New)> for (A, B, C, D, E, F)

§

type Ax = Axis<3>

source§

impl<D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(D, E, New), (D, E, New)> for (D, E, F)

§

type Ax = Axis<2>

source§

impl<B: Dim, C: Dim, D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(New, C, D, E, F), (New,)> for (B, C, D, E, F)

§

type Ax = Axis<0>

source§

impl<E: Dim, F: Dim, New: Dim> ReplaceDimTo<(New, F), (New,)> for (E, F)

§

type Ax = Axis<0>

source§

impl<C: Dim, D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(New, D, E, F), (New,)> for (C, D, E, F)

§

type Ax = Axis<0>

source§

impl<B: Dim, C: Dim, D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(B, C, New, E, F), (B, C, New)> for (B, C, D, E, F)

§

type Ax = Axis<2>

source§

impl<A: Dim, B: Dim, C: Dim, D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(A, New, C, D, E, F), (A, New)> for (A, B, C, D, E, F)

§

type Ax = Axis<1>

source§

impl<D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(New, E, F), (New,)> for (D, E, F)

§

type Ax = Axis<0>

source§

impl<Batch: Dim, Seq: Dim, S1: Dim, S2: Dim> ReplaceDimTo<(Batch, Seq, S2), (Batch, Seq)> for (S1, S2)

§

type Ax = Axis<0>

source§

impl<B: Dim, C: Dim, D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(B, C, D, New, F), (B, C, D, New)> for (B, C, D, E, F)

§

type Ax = Axis<3>

source§

impl<C: Dim, D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(C, New, E, F), (C, New)> for (C, D, E, F)

§

type Ax = Axis<1>

source§

impl<F: Dim, New: Dim> ReplaceDimTo<(New,), (New,)> for (F,)

§

type Ax = Axis<0>

source§

impl<A: Dim, B: Dim, C: Dim, D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(A, B, C, D, E, New), (A, B, C, D, E, New)> for (A, B, C, D, E, F)

§

type Ax = Axis<5>

source§

impl<B: Dim, C: Dim, D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(B, C, D, E, New), (B, C, D, E, New)> for (B, C, D, E, F)

§

type Ax = Axis<4>

source§

impl<E: Dim, F: Dim, New: Dim> ReplaceDimTo<(E, New), (E, New)> for (E, F)

§

type Ax = Axis<1>

source§

impl<A: Dim, B: Dim, C: Dim, D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(A, B, New, D, E, F), (A, B, New)> for (A, B, C, D, E, F)

§

type Ax = Axis<2>

source§

impl<C: Dim, D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(C, D, E, New), (C, D, E, New)> for (C, D, E, F)

§

type Ax = Axis<3>

source§

impl<C: Dim, D: Dim, E: Dim, F: Dim, New: Dim> ReplaceDimTo<(C, D, New, F), (C, D, New)> for (C, D, E, F)

§

type Ax = Axis<2>

Implementors§