[−][src]Function safe_transmute::safe_transmute_one
pub fn safe_transmute_one<T: PodTransmutable>(bytes: &[u8]) -> Result<T, Error>
Transmute a byte slice into a single instance of a POD.
The byte slice must have at least enough bytes to fill a single instance of a type, extraneous data is ignored.
Errors
An error is returned in one of the following situations:
- The data does not have a memory alignment compatible with
T
. You will have to make a copy anyway, or modify how the data was originally made. - The data does not have enough bytes for a single value
T
.
Examples
// Little-endian assert_eq!(safe_transmute_one::<u32>(&[0x00, 0x00, 0x00, 0x01])?, 0x0100_0000);