Function safe_transmute::transmute_many
source · pub fn transmute_many<T: TriviallyTransmutable, G: Guard>(
bytes: &[u8]
) -> Result<&[T], Error<'_, u8, T>>
Expand description
Transmute a byte slice into a sequence of values of the given type.
§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 comply with the policies of the given guard
G
.
§Examples
// Little-endian
assert_eq!(transmute_many::<u16, SingleManyGuard>(&[0x00, 0x01, 0x00, 0x02])?,
&[0x0100, 0x0200]);