27 lines
930 B
Rust
27 lines
930 B
Rust
#[macro_export]
|
|
macro_rules! get_32_le {
|
|
( $bytes: expr, $base: expr, $offset: literal, $T: ident ) => {
|
|
$bytes[$base + $offset] as $T
|
|
+ (($bytes[$base + $offset + 1] as $T) << 8)
|
|
+ (($bytes[$base + $offset + 2] as $T) << 16)
|
|
+ (($bytes[$base + $offset + 3] as $T) << 24)
|
|
};
|
|
}
|
|
|
|
#[macro_export]
|
|
macro_rules! get_64_le {
|
|
( $bytes: expr, $base: expr, $offset: literal, $T: ident ) => {
|
|
$bytes[$base + $offset] as $T
|
|
+ (($bytes[$base + $offset + 1] as $T) << 8)
|
|
+ (($bytes[$base + $offset + 2] as $T) << 16)
|
|
+ (($bytes[$base + $offset + 3] as $T) << 24)
|
|
+ (($bytes[$base + $offset + 4] as $T) << 32)
|
|
+ (($bytes[$base + $offset + 5] as $T) << 40)
|
|
+ (($bytes[$base + $offset + 6] as $T) << 48)
|
|
+ (($bytes[$base + $offset + 7] as $T) << 56)
|
|
};
|
|
}
|
|
|
|
pub use get_32_le;
|
|
pub use get_64_le;
|