Trait Assertable

Source
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>,

Source§

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>,

Source§

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

Source§

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