Crate endiantype[][src]

Expand description

Endian Type

endiantype is an no-std, endian-aware implementation of primitive types like u8, u16, etc.

All endian types are implemented in a transparent way that it can directly replace the original types with almost zero overhead.

Usage

Add this to your Cargo.toml

endiantype = "0.1.3"

to use in a [no_std] environment, you need to disable default features.

endiantype = { version = "0.1.3", default-features = false}

and import endian-ware types from this crate.

use endiantype::types::*;

Features

Here is some features of endian_type crate.

[no-std] Support

This crate can be used without std support with no requirements or additional features needed as it only relies on core.

Drop-in replacement

This crate provides sufficient default operations for endian-aware types.

For example, you can directly compare a primitive type with a endian-aware type.

use endiantype::*;
let num_le = u16_le::from_native(10);
assert!(num_le < 11);

Other bit-wise ops like &, | and arithmetic ops like +, - are also supported.

use endiantype::*;
let a = u32_le::from_native(1);
let b = u32_be::from_native(2);
assert!(a+b == 3);

Re-exports

pub use types::*;

Modules

Structs

Big endian types

Little endian types