pub trait LightningEncode {
// Required method
fn lightning_encode<E: Write>(&self, e: E) -> Result<usize, Error>;
// Provided method
fn lightning_serialize(&self) -> Result<Vec<u8>, Error> { ... }
}
Expand description
Lightning-network specific encoding as defined in BOLT-1, 2, 3…
Required Methods§
Sourcefn lightning_encode<E: Write>(&self, e: E) -> Result<usize, Error>
fn lightning_encode<E: Write>(&self, e: E) -> Result<usize, Error>
Encode with the given std::io::Write
instance; must return result
with either amount of bytes encoded – or implementation-specific
error type.
Provided Methods§
Sourcefn lightning_serialize(&self) -> Result<Vec<u8>, Error>
fn lightning_serialize(&self) -> Result<Vec<u8>, Error>
Serializes data as a byte array using
LightningEncode::lightning_encode
function.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementations on Foreign Types§
Source§impl LightningEncode for &str
impl LightningEncode for &str
Source§impl LightningEncode for &[u8]
impl LightningEncode for &[u8]
Source§impl LightningEncode for u8
impl LightningEncode for u8
Source§impl LightningEncode for u16
impl LightningEncode for u16
Source§impl LightningEncode for u32
impl LightningEncode for u32
Source§impl LightningEncode for u64
impl LightningEncode for u64
Source§impl LightningEncode for usize
impl LightningEncode for usize
Source§impl LightningEncode for Box<[u8]>
impl LightningEncode for Box<[u8]>
Source§impl LightningEncode for String
impl LightningEncode for String
Source§impl LightningEncode for FlagVec
impl LightningEncode for FlagVec
Source§impl LightningEncode for Slice32
impl LightningEncode for Slice32
Source§impl LightningEncode for u24
impl LightningEncode for u24
Source§impl LightningEncode for Script
impl LightningEncode for Script
Source§impl<K, V> LightningEncode for (K, V)
Two-component tuples are encoded as they were fields in the parent
data structure
impl<K, V> LightningEncode for (K, V)
Two-component tuples are encoded as they were fields in the parent data structure