nlist/imply_trait.rs
1#![allow(dead_code)]
2
3/// Hack for implying a trait on type parameters.
4///
5/// credit: https://docs.rs/imply-hack/latest/imply_hack/
6pub trait Imply<T: ?Sized>: imply_inner::ImplyInner<T, Is = T> {}
7
8impl<T: ?Sized, U: ?Sized> Imply<T> for U {}
9
10mod imply_inner {
11 pub trait ImplyInner<T: ?Sized> {
12 type Is: ?Sized;
13 }
14
15 impl<T: ?Sized, U: ?Sized> ImplyInner<T> for U {
16 type Is = T;
17 }
18}