Trait TypeFn

Source
pub trait TypeFn: Sized {
    type Output<L: Lt>: ?Sized;
}
Expand description

Represents a type that is parameterized over one or more lifetime variables.

When a type implementing TypeFn is needed, it is usually best to use TypeFn! rather than manually implement TypeFn.

§Note

Types implementing this trait are generally meant to be used in generic parameters but not instantiated as values.

Required Associated Types§

Source

type Output<L: Lt>: ?Sized

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl TypeFn for Infallible

Source§

impl TypeFn for ()

Source§

type Output<L: Lt> = ()

Implementors§

Source§

impl<F> TypeFn for Mut<F>
where F: TypeFn,

Source§

type Output<L: Lt> = <L as Lt>::Actual<HktWrapper<dyn for<'y> _LifetimeHktOf<'y, T = &'y mut <F as TypeFn>::Output<L>>>>

Source§

impl<F> TypeFn for Ref<F>
where F: TypeFn,

Source§

type Output<L: Lt> = <L as Lt>::Actual<HktWrapper<dyn for<'y> _LifetimeHktOf<'y, T = &'y <F as TypeFn>::Output<L>>>>

Source§

impl<T: ?Sized> TypeFn for Value<T>

Source§

type Output<L: Lt> = T