Trait proc_bitfield::UnsafeFrom
source · pub trait UnsafeFrom<T> {
// Required method
unsafe fn unsafe_from(_: T) -> Self;
}
Expand description
Unsafe equivalent of From
.
Used to do unsafe value-to-value conversions while consuming the input value. It is the
reciprocal of UnsafeInto
.
One should always prefer implementing UnsafeFrom
over UnsafeInto
because implementing
UnsafeFrom
automatically provides one with an implementation of UnsafeInto
thanks to the
blanket implementation.
Prefer using UnsafeInto
over using UnsafeFrom
when specifying trait bounds on a generic
function. This way, types that directly implement UnsafeInto
can be used as arguments as
well.
Note: This trait must not fail. The UnsafeFrom
trait is intended for unsafe but perfect
conversions. If the conversion can fail or is not perfect, use TryFrom
.
§Generic Implementations
UnsafeFrom<T> for U
impliesUnsafeInto
<U> for T
UnsafeFrom
, likeFrom
, is reflexive, which means thatUnsafeFrom<T> for T
is implementedFrom
<T> for U
impliesUnsafeFrom<T> for U
Into
<U> for T
impliesUnsafeFrom<T> for U
Required Methods§
sourceunsafe fn unsafe_from(_: T) -> Self
unsafe fn unsafe_from(_: T) -> Self
Unsafely converts to this type from the input type.
Object Safety§
This trait is not object safe.