Trait repr_offset::alignment::CombineAlignment[][src]

pub trait CombineAlignment<Rhs: Alignment> {
    type Output: Alignment;
}

Trait that combines two Alignment types, determines the return type of FieldOffset + FieldOffset.

Associated Types

type Output: Alignment[src]

This is Aligned if both Self and the Rhs parameter are Aligned, otherwise it is Unaligned.

Loading content...

Implementors

impl<A: Alignment> CombineAlignment<A> for Aligned[src]

type Output = A

impl<A: Alignment> CombineAlignment<A> for Unaligned[src]

impl<A: Alignment, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, CombTuples> CombineAlignment<A> for (A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11) where
    (): CombineAlignment<A>,
    (A0, A1, A2, A3): CombineAlignment<Aligned>,
    (A4, A5, A6, A7): CombineAlignment<Aligned>,
    (A8, A9, A10, A11): CombineAlignment<Aligned>,
    (CombineAlignmentOut<(A0, A1, A2, A3), Aligned>, CombineAlignmentOut<(A4, A5, A6, A7), Aligned>, CombineAlignmentOut<(A8, A9, A10, A11), Aligned>): CombineAlignment<CombineAlignmentOut<(), A>, Output = CombTuples>,
    CombTuples: Alignment
[src]

type Output = CombTuples

impl<A: Alignment, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, CombTuples> CombineAlignment<A> for (A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10) where
    (A8, A9, A10): CombineAlignment<A>,
    (A0, A1, A2, A3): CombineAlignment<Aligned>,
    (A4, A5, A6, A7): CombineAlignment<Aligned>,
    (CombineAlignmentOut<(A0, A1, A2, A3), Aligned>, CombineAlignmentOut<(A4, A5, A6, A7), Aligned>): CombineAlignment<CombineAlignmentOut<(A8, A9, A10), A>, Output = CombTuples>,
    CombTuples: Alignment
[src]

type Output = CombTuples

impl<A: Alignment, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, CombTuples> CombineAlignment<A> for (A0, A1, A2, A3, A4, A5, A6, A7, A8, A9) where
    (A8, A9): CombineAlignment<A>,
    (A0, A1, A2, A3): CombineAlignment<Aligned>,
    (A4, A5, A6, A7): CombineAlignment<Aligned>,
    (CombineAlignmentOut<(A0, A1, A2, A3), Aligned>, CombineAlignmentOut<(A4, A5, A6, A7), Aligned>): CombineAlignment<CombineAlignmentOut<(A8, A9), A>, Output = CombTuples>,
    CombTuples: Alignment
[src]

type Output = CombTuples

impl<A: Alignment, A0, A1, A2, A3, A4, A5, A6, A7, A8, CombTuples> CombineAlignment<A> for (A0, A1, A2, A3, A4, A5, A6, A7, A8) where
    (A8,): CombineAlignment<A>,
    (A0, A1, A2, A3): CombineAlignment<Aligned>,
    (A4, A5, A6, A7): CombineAlignment<Aligned>,
    (CombineAlignmentOut<(A0, A1, A2, A3), Aligned>, CombineAlignmentOut<(A4, A5, A6, A7), Aligned>): CombineAlignment<CombineAlignmentOut<(A8,), A>, Output = CombTuples>,
    CombTuples: Alignment
[src]

type Output = CombTuples

impl<A: Alignment, A0, A1, A2, A3, A4, A5, A6, A7, CombTuples> CombineAlignment<A> for (A0, A1, A2, A3, A4, A5, A6, A7) where
    (): CombineAlignment<A>,
    (A0, A1, A2, A3): CombineAlignment<Aligned>,
    (A4, A5, A6, A7): CombineAlignment<Aligned>,
    (CombineAlignmentOut<(A0, A1, A2, A3), Aligned>, CombineAlignmentOut<(A4, A5, A6, A7), Aligned>): CombineAlignment<CombineAlignmentOut<(), A>, Output = CombTuples>,
    CombTuples: Alignment
[src]

type Output = CombTuples

impl<A: Alignment, A0, A1, A2, A3, A4, A5, A6, CombTuples> CombineAlignment<A> for (A0, A1, A2, A3, A4, A5, A6) where
    (A4, A5, A6): CombineAlignment<A>,
    (A0, A1, A2, A3): CombineAlignment<Aligned>,
    (CombineAlignmentOut<(A0, A1, A2, A3), Aligned>,): CombineAlignment<CombineAlignmentOut<(A4, A5, A6), A>, Output = CombTuples>,
    CombTuples: Alignment
[src]

type Output = CombTuples

impl<A: Alignment, A0, A1, A2, A3, A4, A5, CombTuples> CombineAlignment<A> for (A0, A1, A2, A3, A4, A5) where
    (A4, A5): CombineAlignment<A>,
    (A0, A1, A2, A3): CombineAlignment<Aligned>,
    (CombineAlignmentOut<(A0, A1, A2, A3), Aligned>,): CombineAlignment<CombineAlignmentOut<(A4, A5), A>, Output = CombTuples>,
    CombTuples: Alignment
[src]

type Output = CombTuples

impl<A: Alignment, A0, A1, A2, A3, A4, CombTuples> CombineAlignment<A> for (A0, A1, A2, A3, A4) where
    (A4,): CombineAlignment<A>,
    (A0, A1, A2, A3): CombineAlignment<Aligned>,
    (CombineAlignmentOut<(A0, A1, A2, A3), Aligned>,): CombineAlignment<CombineAlignmentOut<(A4,), A>, Output = CombTuples>,
    CombTuples: Alignment
[src]

type Output = CombTuples

impl<Carry: Alignment> CombineAlignment<Carry> for ()[src]

type Output = Carry

impl<Carry: Alignment> CombineAlignment<Carry> for (Aligned, Aligned)[src]

type Output = Carry

impl<Carry: Alignment> CombineAlignment<Carry> for (Aligned, Aligned, Aligned)[src]

type Output = Carry

impl<Carry: Alignment> CombineAlignment<Carry> for (Aligned, Aligned, Aligned, Aligned)[src]

type Output = Carry

impl<Carry: Alignment> CombineAlignment<Carry> for (Aligned, Aligned, Aligned, Unaligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Aligned, Aligned, Unaligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Aligned, Aligned, Unaligned, Aligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Aligned, Aligned, Unaligned, Unaligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Aligned, Unaligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Aligned, Unaligned, Aligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Aligned, Unaligned, Aligned, Aligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Aligned, Unaligned, Aligned, Unaligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Aligned, Unaligned, Unaligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Aligned, Unaligned, Unaligned, Aligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Aligned, Unaligned, Unaligned, Unaligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Aligned,)[src]

type Output = Carry

impl<Carry: Alignment> CombineAlignment<Carry> for (Unaligned, Aligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Unaligned, Aligned, Aligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Unaligned, Aligned, Aligned, Aligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Unaligned, Aligned, Aligned, Unaligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Unaligned, Aligned, Unaligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Unaligned, Aligned, Unaligned, Aligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Unaligned, Aligned, Unaligned, Unaligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Unaligned, Unaligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Unaligned, Unaligned, Aligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Unaligned, Unaligned, Aligned, Aligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Unaligned, Unaligned, Aligned, Unaligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Unaligned, Unaligned, Unaligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Unaligned, Unaligned, Unaligned, Aligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Unaligned, Unaligned, Unaligned, Unaligned)[src]

impl<Carry: Alignment> CombineAlignment<Carry> for (Unaligned,)[src]

Loading content...