[−][src]Trait ssz::Encode
Provides SSZ encoding (serialization) via the as_ssz_bytes(&self)
method.
See examples/
for manual implementations or the crate root for implementations using
#[derive(Encode)]
.
Required methods
fn is_ssz_fixed_len() -> bool
Returns true
if this object has a fixed-length.
I.e., there are no variable length items in this object or any of it's contained objects.
fn ssz_append(&self, buf: &mut Vec<u8>)
Append the encoding self
to buf
.
Note, variable length objects need only to append their "variable length" portion, they do not need to provide their offset.
Provided methods
fn ssz_fixed_len() -> usize
The number of bytes this object occupies in the fixed-length portion of the SSZ bytes.
By default, this is set to BYTES_PER_LENGTH_OFFSET
which is suitable for variable length
objects, but not fixed-length objects. Fixed-length objects must return a value which
represents their length.
fn as_ssz_bytes(&self) -> Vec<u8>
Returns the full-form encoding of this object.
The default implementation of this method should suffice for most cases.
Implementations on Foreign Types
impl Encode for u8
[src]
fn is_ssz_fixed_len() -> bool
[src]
fn ssz_fixed_len() -> usize
[src]
fn ssz_append(&self, buf: &mut Vec<u8>)
[src]
impl Encode for u16
[src]
fn is_ssz_fixed_len() -> bool
[src]
fn ssz_fixed_len() -> usize
[src]
fn ssz_append(&self, buf: &mut Vec<u8>)
[src]
impl Encode for u32
[src]
fn is_ssz_fixed_len() -> bool
[src]
fn ssz_fixed_len() -> usize
[src]
fn ssz_append(&self, buf: &mut Vec<u8>)
[src]
impl Encode for u64
[src]
fn is_ssz_fixed_len() -> bool
[src]
fn ssz_fixed_len() -> usize
[src]
fn ssz_append(&self, buf: &mut Vec<u8>)
[src]
impl Encode for usize
[src]
fn is_ssz_fixed_len() -> bool
[src]
fn ssz_fixed_len() -> usize
[src]
fn ssz_append(&self, buf: &mut Vec<u8>)
[src]
impl<A: Encode, B: Encode> Encode for (A, B)
[src]
fn is_ssz_fixed_len() -> bool
[src]
fn ssz_fixed_len() -> usize
[src]
fn ssz_append(&self, buf: &mut Vec<u8>)
[src]
impl<A: Encode, B: Encode, C: Encode> Encode for (A, B, C)
[src]
fn is_ssz_fixed_len() -> bool
[src]
fn ssz_fixed_len() -> usize
[src]
fn ssz_append(&self, buf: &mut Vec<u8>)
[src]
impl<A: Encode, B: Encode, C: Encode, D: Encode> Encode for (A, B, C, D)
[src]
fn is_ssz_fixed_len() -> bool
[src]
fn ssz_fixed_len() -> usize
[src]
fn ssz_append(&self, buf: &mut Vec<u8>)
[src]
impl<A: Encode, B: Encode, C: Encode, D: Encode, E: Encode> Encode for (A, B, C, D, E)
[src]
fn is_ssz_fixed_len() -> bool
[src]
fn ssz_fixed_len() -> usize
[src]
fn ssz_append(&self, buf: &mut Vec<u8>)
[src]
impl<A: Encode, B: Encode, C: Encode, D: Encode, E: Encode, F: Encode> Encode for (A, B, C, D, E, F)
[src]
fn is_ssz_fixed_len() -> bool
[src]
fn ssz_fixed_len() -> usize
[src]
fn ssz_append(&self, buf: &mut Vec<u8>)
[src]
impl<A: Encode, B: Encode, C: Encode, D: Encode, E: Encode, F: Encode, G: Encode> Encode for (A, B, C, D, E, F, G)
[src]
fn is_ssz_fixed_len() -> bool
[src]
fn ssz_fixed_len() -> usize
[src]
fn ssz_append(&self, buf: &mut Vec<u8>)
[src]
impl<A: Encode, B: Encode, C: Encode, D: Encode, E: Encode, F: Encode, G: Encode, H: Encode> Encode for (A, B, C, D, E, F, G, H)
[src]
fn is_ssz_fixed_len() -> bool
[src]
fn ssz_fixed_len() -> usize
[src]
fn ssz_append(&self, buf: &mut Vec<u8>)
[src]
impl<A: Encode, B: Encode, C: Encode, D: Encode, E: Encode, F: Encode, G: Encode, H: Encode, I: Encode> Encode for (A, B, C, D, E, F, G, H, I)
[src]
fn is_ssz_fixed_len() -> bool
[src]
fn ssz_fixed_len() -> usize
[src]
fn ssz_append(&self, buf: &mut Vec<u8>)
[src]
impl<A: Encode, B: Encode, C: Encode, D: Encode, E: Encode, F: Encode, G: Encode, H: Encode, I: Encode, J: Encode> Encode for (A, B, C, D, E, F, G, H, I, J)
[src]
fn is_ssz_fixed_len() -> bool
[src]
fn ssz_fixed_len() -> usize
[src]
fn ssz_append(&self, buf: &mut Vec<u8>)
[src]
impl<A: Encode, B: Encode, C: Encode, D: Encode, E: Encode, F: Encode, G: Encode, H: Encode, I: Encode, J: Encode, K: Encode> Encode for (A, B, C, D, E, F, G, H, I, J, K)
[src]
fn is_ssz_fixed_len() -> bool
[src]
fn ssz_fixed_len() -> usize
[src]
fn ssz_append(&self, buf: &mut Vec<u8>)
[src]
impl<A: Encode, B: Encode, C: Encode, D: Encode, E: Encode, F: Encode, G: Encode, H: Encode, I: Encode, J: Encode, K: Encode, L: Encode> Encode for (A, B, C, D, E, F, G, H, I, J, K, L)
[src]
fn is_ssz_fixed_len() -> bool
[src]
fn ssz_fixed_len() -> usize
[src]
fn ssz_append(&self, buf: &mut Vec<u8>)
[src]
impl<T: Encode> Encode for Option<T>
[src]
The SSZ "union" type.