pub trait Assertable<'a> {
    type Output: RawAssertable<'a>;

    // Required method
    fn do_assert(self) -> Self::Output;
}
Expand description

A trait representing any type that is assertable by beeing turned into another assertable type.

Required Associated Types§

source

type Output: RawAssertable<'a>

The other assertable type the assert should be turned into.

Useful types
Tuples

This may be a tuple type (T1, …, T32) as RawAssertable is implemented for tuples of up to a length of 32. If more assets need to be combined, you can just nest multiple tuples.

RawAssert

Actual impl here: RawAssert

This is useful for wrapper types around Generatable types.

Required Methods§

source

fn do_assert(self) -> Self::Output

Implementors§

source§

impl<'a, G, A> Assertable<'a> for WithGenerics<'a, Assert<'a, G, A>>where G: Generatable<'a, A> + Eq + Ord, A: Eq + Ord + TidAble<'a>,

§

type Output = RawAssert<'a, G, A>

source§

impl<'a, T, A> Assertable<'a> for Assert<'a, T, A>where T: Generatable<'a, A> + Eq + Ord, A: Eq + Ord + TidAble<'a>,

§

type Output = RawAssert<'a, T, A>

source§

impl<'a, T, U> Assertable<'a> for ResolvedBounds<'a, T, U>where U: AssertableWithBounds<'a, T>,

§

type Output = <U as AssertableWithBounds<'a, T>>::Output