15 releases
| 0.3.12 | May 17, 2025 |
|---|---|
| 0.3.11 | Jan 16, 2025 |
| 0.3.10 | Dec 6, 2024 |
| 0.3.9 | Oct 23, 2024 |
| 0.3.2 | Jul 26, 2023 |
#2 in #rlp
660,575 downloads per month
Used in 616 crates
(70 directly)
48KB
1K
SLoC
alloy-rlp
This crate provides Ethereum RLP (de)serialization functionality. RLP is commonly used for Ethereum EL datastructures, and its documentation can be found at ethereum.org.
Usage
We strongly recommend deriving RLP traits via the RlpEncodable and
RlpDecodable derive macros.
Trait methods can then be accessed via the Encodable and Decodable traits.
Example
# #[cfg(feature = "derive")] {
use alloy_rlp::{RlpEncodable, RlpDecodable, Decodable, Encodable};
#[derive(Debug, RlpEncodable, RlpDecodable, PartialEq)]
pub struct MyStruct {
pub a: u64,
pub b: Vec<u8>,
}
let my_struct = MyStruct {
a: 42,
b: vec![1, 2, 3],
};
let mut buffer = Vec::<u8>::new();
let encoded = my_struct.encode(&mut buffer);
let decoded = MyStruct::decode(&mut buffer.as_slice()).unwrap();
assert_eq!(my_struct, decoded);
# }
Dependencies
~150–310KB