[−][src]Function safe_transmute::guarded_transmute_pod_many_pedantic
pub fn guarded_transmute_pod_many_pedantic<T: PodTransmutable>(
bytes: &[u8]
) -> Result<&[T], Error>
View a byte slice as a slice of POD.
The byte slice must have at least enough bytes to fill a single instance of a type, and should not have extraneous data.
Errors
An error is raised 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!(guarded_transmute_pod_many_pedantic::<u16>(&[0x0F, 0x0E, 0x0A, 0x0B])?, &[0x0E0F, 0x0B0A]);