GitHub - SoftbearStudios/bitcode: A binary encoder/decoder for Rust (original) (raw)

Documentation crates.io Build

A binary encoder/decoder with the following goals:

In contrast, these are non-goals:

See rust_serialization_benchmark for benchmarks.

Example

use bitcode::{Encode, Decode};

#[derive(Encode, Decode, PartialEq, Debug)] struct Foo<'a> { x: u32, y: &'a str, }

let original = Foo { x: 10, y: "abc", };

let encoded: Vec = bitcode::encode(&original); // No error let decoded: Foo<'_> = bitcode::decode(&encoded).unwrap(); assert_eq!(original, decoded);

Adding Support for Libraries

See the instructions here!

Implementation Details

serde

A serde integration is gated behind the "serde" feature flag. Click here to learn more.

#![no_std]

All std-only functionality is gated behind the (default) "std" feature.

alloc is required.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.