Trait safe_transmute::PodTransmutable
[−]
[src]
pub trait PodTransmutable { }
Type that can be non-unsafe
ly transmuted into
In most cases this is a POD class or a trivially copyable class.
Marker trait for guarded_transmute_pod_*()
functions.
Warning: if you transmute into a floating-point type you will have a chance to create a signaling NaN,
which, while not illegal, can be unwieldy. Check out util::designalise_f{32,64}()
for a remedy.
Nota bene: bool
s aren't actually non-unsafe
to transmute, because they're restricted to being 0
or 1
,
which means it's UB to transmute an arbitrary byte into a bool
.