Expand description
Provides traits and implementations for packing and unpacking two numbers into a single value.
§Implementations
- Pack two
bool
intou8
/i8
,u16
/i16
,u32
/i32
,u64
/i64
,usize
/isize
- Pack two
u8
intou16
/i16
,u32
/i32
,u64
/i64
,usize
/isize
- Pack two
u16
intou32
/i32
,u64
/i64
,usize
/isize
(if target pointer width is 32 or 64) - Pack two
u32
intou64
/i64
,usize
/isize
(if target pointer width is 64) - Pack two
i8
intou16
/i16
,u32
/i32
,u64
/i64
,usize
/isize
- Pack two
i16
intou32
/i32
,u64
/i64
,usize
/isize
(if target pointer width is 32 or 64) - Pack two
i32
intou64
/i64
,usize
/isize
(if target pointer width is 64) - Pack two
f32
intou64
/i64
,usize
/isize
(if target pointer width is 64)
§Example
Pack two u8
into u16
.
use num_packer::U8Packer;
let packed = u16::pack_u8(200, 55);
let (first, second) = packed.unpack_u8();
assert_eq!((first, second), (200, 55));
Traits§
- Bool
Packer - Trait for packing and unpacking two
bool
values into a single value. - F32Packer
- Trait for packing and unpacking two
f32
values into a single value. - I8Packer
- Trait for packing and unpacking two
i8
values into a single value. - I16Packer
- Trait for packing and unpacking two
i16
values into a single value. - I32Packer
- Trait for packing and unpacking two
i32
values into a single value. - U8Packer
- Trait for packing and unpacking two
u8
values into a single value. - U16Packer
- Trait for packing and unpacking two
u16
values into a single value. - U32Packer
- Trait for packing and unpacking two
u32
values into a single value.