Function safe_transmute::to_bytes::transmute_one_to_bytes
source · pub fn transmute_one_to_bytes<S: TriviallyTransmutable>(from: &S) -> &[u8] ⓘ
Expand description
Transmute a single instance of a trivially transmutable type into a slice of its bytes.
§Examples
An u32
:
// Little-endian
assert_eq!(transmute_one_to_bytes(&0x0123_4567),
&[0x67, 0x45, 0x23, 0x01]);
An arbitrary type:
#[repr(C)]
#[derive(Clone, Copy)]
struct Gene {
x1: u8,
x2: u8,
}
unsafe impl TriviallyTransmutable for Gene {}
assert_eq!(transmute_one_to_bytes(&Gene {
x1: 0x42,
x2: 0x69,
}),
&[0x42, 0x69]);