use ;
/// Produces type IDs that are compatible with `TypeId::of::<T>`, but without
/// `T: 'static` bound.
///
/// This function must be used with extreme discretion, as no lifetime checking
/// is done. Meaning, this function returns the same `TypeId` for `Struct<'a>`
/// and `Struct<'b>`, regardless of the relationship of `'a` and `'b`.
///
/// It is however a safe function since `TypeId` itself doesn't allow one to do
/// anything dangerous in safe code. In this crate, it's only used to specialize
/// behavior based on the type, there is no transmuting going on outside of this
/// function.
pub Sized>