Trait Splittable

Source
pub trait Splittable<'a, SplitType = ()> {
    type A: 'a;
    type B: 'a;
    type MutA: 'a;
    type MutB: 'a;

    // Required methods
    fn split(&'a self) -> (Self::A, Self::B);
    fn split_mut(&'a mut self) -> (Self::MutA, Self::MutB);
}
Expand description

A type which can be split into disjoint references. SplitType allows a type to be split multiple

Required Associated Types§

Source

type A: 'a

Source

type B: 'a

Source

type MutA: 'a

Source

type MutB: 'a

Required Methods§

Source

fn split(&'a self) -> (Self::A, Self::B)

Source

fn split_mut(&'a mut self) -> (Self::MutA, Self::MutB)

Implementors§

Source§

impl<'a, SplitType, T: Splittable3<'a, SplitType>> Splittable<'a, SplitType> for T

Source§

type A = <T as Splittable3<'a, SplitType>>::A

Source§

type B = <T as Splittable3<'a, SplitType>>::B

Source§

type MutA = <T as Splittable3<'a, SplitType>>::MutA

Source§

type MutB = <T as Splittable3<'a, SplitType>>::MutB