pub trait MaybeEquivalence<A, B> {
    // Required methods
    fn convert(a: &A) -> Option<B>;
    fn convert_back(b: &B) -> Option<A>;
}
Expand description

Definition for a bi-directional, fallible conversion between two types.

Required Methods§

fn convert(a: &A) -> Option<B>

Attempt to convert reference of A into value of B, returning None if not possible.

fn convert_back(b: &B) -> Option<A>

Attempt to convert reference of B into value of A, returning None if not possible.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

§

impl<A, B> MaybeEquivalence<A, B> for ()

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0> MaybeEquivalence<A, B> for (TupleElement0,)
where TupleElement0: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>, TupleElement13: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>, TupleElement13: MaybeEquivalence<A, B>, TupleElement14: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>, TupleElement13: MaybeEquivalence<A, B>, TupleElement14: MaybeEquivalence<A, B>, TupleElement15: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>, TupleElement13: MaybeEquivalence<A, B>, TupleElement14: MaybeEquivalence<A, B>, TupleElement15: MaybeEquivalence<A, B>, TupleElement16: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>, TupleElement13: MaybeEquivalence<A, B>, TupleElement14: MaybeEquivalence<A, B>, TupleElement15: MaybeEquivalence<A, B>, TupleElement16: MaybeEquivalence<A, B>, TupleElement17: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>, TupleElement13: MaybeEquivalence<A, B>, TupleElement14: MaybeEquivalence<A, B>, TupleElement15: MaybeEquivalence<A, B>, TupleElement16: MaybeEquivalence<A, B>, TupleElement17: MaybeEquivalence<A, B>, TupleElement18: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>, TupleElement13: MaybeEquivalence<A, B>, TupleElement14: MaybeEquivalence<A, B>, TupleElement15: MaybeEquivalence<A, B>, TupleElement16: MaybeEquivalence<A, B>, TupleElement17: MaybeEquivalence<A, B>, TupleElement18: MaybeEquivalence<A, B>, TupleElement19: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>, TupleElement13: MaybeEquivalence<A, B>, TupleElement14: MaybeEquivalence<A, B>, TupleElement15: MaybeEquivalence<A, B>, TupleElement16: MaybeEquivalence<A, B>, TupleElement17: MaybeEquivalence<A, B>, TupleElement18: MaybeEquivalence<A, B>, TupleElement19: MaybeEquivalence<A, B>, TupleElement20: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>, TupleElement13: MaybeEquivalence<A, B>, TupleElement14: MaybeEquivalence<A, B>, TupleElement15: MaybeEquivalence<A, B>, TupleElement16: MaybeEquivalence<A, B>, TupleElement17: MaybeEquivalence<A, B>, TupleElement18: MaybeEquivalence<A, B>, TupleElement19: MaybeEquivalence<A, B>, TupleElement20: MaybeEquivalence<A, B>, TupleElement21: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>, TupleElement13: MaybeEquivalence<A, B>, TupleElement14: MaybeEquivalence<A, B>, TupleElement15: MaybeEquivalence<A, B>, TupleElement16: MaybeEquivalence<A, B>, TupleElement17: MaybeEquivalence<A, B>, TupleElement18: MaybeEquivalence<A, B>, TupleElement19: MaybeEquivalence<A, B>, TupleElement20: MaybeEquivalence<A, B>, TupleElement21: MaybeEquivalence<A, B>, TupleElement22: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>, TupleElement13: MaybeEquivalence<A, B>, TupleElement14: MaybeEquivalence<A, B>, TupleElement15: MaybeEquivalence<A, B>, TupleElement16: MaybeEquivalence<A, B>, TupleElement17: MaybeEquivalence<A, B>, TupleElement18: MaybeEquivalence<A, B>, TupleElement19: MaybeEquivalence<A, B>, TupleElement20: MaybeEquivalence<A, B>, TupleElement21: MaybeEquivalence<A, B>, TupleElement22: MaybeEquivalence<A, B>, TupleElement23: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>, TupleElement13: MaybeEquivalence<A, B>, TupleElement14: MaybeEquivalence<A, B>, TupleElement15: MaybeEquivalence<A, B>, TupleElement16: MaybeEquivalence<A, B>, TupleElement17: MaybeEquivalence<A, B>, TupleElement18: MaybeEquivalence<A, B>, TupleElement19: MaybeEquivalence<A, B>, TupleElement20: MaybeEquivalence<A, B>, TupleElement21: MaybeEquivalence<A, B>, TupleElement22: MaybeEquivalence<A, B>, TupleElement23: MaybeEquivalence<A, B>, TupleElement24: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>, TupleElement13: MaybeEquivalence<A, B>, TupleElement14: MaybeEquivalence<A, B>, TupleElement15: MaybeEquivalence<A, B>, TupleElement16: MaybeEquivalence<A, B>, TupleElement17: MaybeEquivalence<A, B>, TupleElement18: MaybeEquivalence<A, B>, TupleElement19: MaybeEquivalence<A, B>, TupleElement20: MaybeEquivalence<A, B>, TupleElement21: MaybeEquivalence<A, B>, TupleElement22: MaybeEquivalence<A, B>, TupleElement23: MaybeEquivalence<A, B>, TupleElement24: MaybeEquivalence<A, B>, TupleElement25: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25, TupleElement26> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25, TupleElement26)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>, TupleElement13: MaybeEquivalence<A, B>, TupleElement14: MaybeEquivalence<A, B>, TupleElement15: MaybeEquivalence<A, B>, TupleElement16: MaybeEquivalence<A, B>, TupleElement17: MaybeEquivalence<A, B>, TupleElement18: MaybeEquivalence<A, B>, TupleElement19: MaybeEquivalence<A, B>, TupleElement20: MaybeEquivalence<A, B>, TupleElement21: MaybeEquivalence<A, B>, TupleElement22: MaybeEquivalence<A, B>, TupleElement23: MaybeEquivalence<A, B>, TupleElement24: MaybeEquivalence<A, B>, TupleElement25: MaybeEquivalence<A, B>, TupleElement26: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25, TupleElement26, TupleElement27> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25, TupleElement26, TupleElement27)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>, TupleElement13: MaybeEquivalence<A, B>, TupleElement14: MaybeEquivalence<A, B>, TupleElement15: MaybeEquivalence<A, B>, TupleElement16: MaybeEquivalence<A, B>, TupleElement17: MaybeEquivalence<A, B>, TupleElement18: MaybeEquivalence<A, B>, TupleElement19: MaybeEquivalence<A, B>, TupleElement20: MaybeEquivalence<A, B>, TupleElement21: MaybeEquivalence<A, B>, TupleElement22: MaybeEquivalence<A, B>, TupleElement23: MaybeEquivalence<A, B>, TupleElement24: MaybeEquivalence<A, B>, TupleElement25: MaybeEquivalence<A, B>, TupleElement26: MaybeEquivalence<A, B>, TupleElement27: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25, TupleElement26, TupleElement27, TupleElement28> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25, TupleElement26, TupleElement27, TupleElement28)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>, TupleElement13: MaybeEquivalence<A, B>, TupleElement14: MaybeEquivalence<A, B>, TupleElement15: MaybeEquivalence<A, B>, TupleElement16: MaybeEquivalence<A, B>, TupleElement17: MaybeEquivalence<A, B>, TupleElement18: MaybeEquivalence<A, B>, TupleElement19: MaybeEquivalence<A, B>, TupleElement20: MaybeEquivalence<A, B>, TupleElement21: MaybeEquivalence<A, B>, TupleElement22: MaybeEquivalence<A, B>, TupleElement23: MaybeEquivalence<A, B>, TupleElement24: MaybeEquivalence<A, B>, TupleElement25: MaybeEquivalence<A, B>, TupleElement26: MaybeEquivalence<A, B>, TupleElement27: MaybeEquivalence<A, B>, TupleElement28: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

§

impl<A, B, TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25, TupleElement26, TupleElement27, TupleElement28, TupleElement29> MaybeEquivalence<A, B> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25, TupleElement26, TupleElement27, TupleElement28, TupleElement29)
where TupleElement0: MaybeEquivalence<A, B>, TupleElement1: MaybeEquivalence<A, B>, TupleElement2: MaybeEquivalence<A, B>, TupleElement3: MaybeEquivalence<A, B>, TupleElement4: MaybeEquivalence<A, B>, TupleElement5: MaybeEquivalence<A, B>, TupleElement6: MaybeEquivalence<A, B>, TupleElement7: MaybeEquivalence<A, B>, TupleElement8: MaybeEquivalence<A, B>, TupleElement9: MaybeEquivalence<A, B>, TupleElement10: MaybeEquivalence<A, B>, TupleElement11: MaybeEquivalence<A, B>, TupleElement12: MaybeEquivalence<A, B>, TupleElement13: MaybeEquivalence<A, B>, TupleElement14: MaybeEquivalence<A, B>, TupleElement15: MaybeEquivalence<A, B>, TupleElement16: MaybeEquivalence<A, B>, TupleElement17: MaybeEquivalence<A, B>, TupleElement18: MaybeEquivalence<A, B>, TupleElement19: MaybeEquivalence<A, B>, TupleElement20: MaybeEquivalence<A, B>, TupleElement21: MaybeEquivalence<A, B>, TupleElement22: MaybeEquivalence<A, B>, TupleElement23: MaybeEquivalence<A, B>, TupleElement24: MaybeEquivalence<A, B>, TupleElement25: MaybeEquivalence<A, B>, TupleElement26: MaybeEquivalence<A, B>, TupleElement27: MaybeEquivalence<A, B>, TupleElement28: MaybeEquivalence<A, B>, TupleElement29: MaybeEquivalence<A, B>,

§

fn convert(a: &A) -> Option<B>

§

fn convert_back(b: &B) -> Option<A>

Implementors§

§

impl<A, B> MaybeEquivalence<A, B> for ConvertInto
where A: Clone + Into<B>, B: Clone + Into<A>,

§

impl<A, B> MaybeEquivalence<A, B> for TryConvertInto
where A: Clone + TryInto<B>, B: Clone + TryInto<A>,

§

impl<T> MaybeEquivalence<T, T> for Identity
where T: Clone,

§

impl<X, Y, T> MaybeEquivalence<X, Y> for ConvertToValue<T>
where T: Get<Y>,