Function morton_encoding::morton_decode_generic [−][src]
pub fn morton_decode_generic<Coor, Key, Coors>(
key: Key,
siz_rat: NonZeroUsize
) -> Coors where
Coor: ToPrimitive + PrimInt,
Key: ValidKey<Coor>,
Coors: FromIterator<Coor>,
Receives a Key
value and returns an iterator of Coor
values that were decoded from it.
Returns an empty iterator if the Key
value is too small for so many Coor
values.
Examples
assert_eq!(morton_decode_generic::<_, _, Vec<u8>>(3u16, nz(2)), vec!(1, 1)); assert_eq!(morton_decode_generic::<u16, u32, Vec<u16>>(0, nz(4)), vec!()); let input = vec!(1u8, 2); let encoded_input: u16 = morton_encode_generic(input.clone()); let reassembled_input: Vec<u8> = morton_decode_generic(encoded_input, nz(2)); assert_eq!(input, reassembled_input);