pub trait InsertIntoTemplate<'a, T, A>where
    T: Generatable<'a, A> + 'a,
    A: 'a + TidAble<'a>,{
    type Output: RawAssertable<'a>;

    // Required method
    fn test<B>(self, ty: impl Into<MaybeBorrowed<'a, A>>) -> Self::Output
       where B: TypeEq<This = A>;
}

Required Associated Types§

source

type Output: RawAssertable<'a>

The type of the Assert generated by the Template Self

Required Methods§

source

fn test<B>(self, ty: impl Into<MaybeBorrowed<'a, A>>) -> Self::Outputwhere B: TypeEq<This = A>,

Test some type against the template Self and turn it into Self::Output. So that the type may either be borrowed or owned, any type that can be turned into MaybeBorrowed<T::Assert>

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl<'a, T, A> InsertIntoTemplate<'a, T, A> for &'a Twhere T: Generatable<'a, A> + 'a + Ord + Eq, A: Ord + Eq + 'a + TidAble<'a>,

§

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

source§

fn test<B>(self, ty: impl Into<MaybeBorrowed<'a, A>>) -> Assert<'a, T, A>where B: TypeEq<This = A>,

Implementors§

source§

impl<'a, T, A> InsertIntoTemplate<'a, T, A> for WithGenerics<'a, MaybeBorrowed<'a, T>>where T: Generatable<'a, A> + Eq + Ord, A: Eq + Ord + 'a + TidAble<'a>,

§

type Output = WithGenerics<'a, Assert<'a, T, A>>

source§

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

§

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

source§

impl<'a, T, A> InsertIntoTemplate<'a, T, A> for Twhere T: Generatable<'a, A> + 'a + Ord + Eq, A: Ord + Eq + 'a + TidAble<'a>,

§

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