1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
use crate::{NotVoid, PureMaybe, StaticMaybe}; /// A sealed trait for specifically either `T`, `()`. pub trait PureStaticMaybe<T>: PureMaybe<T> + StaticMaybe<T> where T: ?Sized { } impl<T> PureStaticMaybe<T> for T where T: ?Sized { } impl<T> PureStaticMaybe<T> for () where T: NotVoid + ?Sized { }