pub unsafe trait GetStaticEquivalent_{
type StaticEquivalent:'static;
}
pub type GetStaticEquivalent<T>=
<T as GetStaticEquivalent_>::StaticEquivalent;
pub struct Unsized<T:?Sized>(fn(&T));
unsafe impl GetStaticEquivalent_ for str{
type StaticEquivalent=Unsized<str>;
}
unsafe impl<T> GetStaticEquivalent_ for [T]
where
T:GetStaticEquivalent_
{
type StaticEquivalent=Unsized<[T::StaticEquivalent]>;
}
unsafe impl<T:?Sized> GetStaticEquivalent_ for Unsized<T>
where
T:GetStaticEquivalent_
{
type StaticEquivalent=Unsized<T::StaticEquivalent>;
}