2 releases
0.2.1 | Jun 4, 2019 |
---|---|
0.2.0 | Jun 4, 2019 |
#11 in #eos
Used in eosio_bytes
15KB
280 lines
This crate provides three derive macros for eosio_bytes
traits.
Examples
use eosio_bytes::{Read, Write, NumBytes};
#[derive(Read, Write, NumBytes, PartialEq, Debug)]
struct Thing(u8);
let thing = Thing(30);
// Number of bytes
assert_eq!(thing.num_bytes(), 1);
// Read bytes
assert_eq!(thing, Thing::read(&mut [30_u8], &mut 0).unwrap());
// Write bytes
let mut bytes = vec![0_u8; 1];
thing.write(&mut bytes, &mut 0).unwrap();
assert_eq!(vec![30], bytes);
lib.rs
:
This crate provides three derive macros for eosio_bytes
traits.
Examples
use eosio_bytes::{Read, Write, NumBytes};
#[derive(Read, Write, NumBytes, PartialEq, Debug)]
struct Thing(u8);
let thing = Thing(30);
// Number of bytes
assert_eq!(thing.num_bytes(), 1);
// Read bytes
assert_eq!(thing, Thing::read(&mut [30_u8], &mut 0).unwrap());
// Write bytes
let mut bytes = vec![0_u8; 1];
thing.write(&mut bytes, &mut 0).unwrap();
assert_eq!(vec![30], bytes);
Dependencies
~2MB
~48K SLoC