pub trait CanonicalEncode {
// Required method
fn encode<W: EncodeSink + ?Sized>(
&self,
writer: &mut W,
) -> Result<(), CodecError>;
}Expand description
Trait for deterministic canonical binary encoding.
Required Methods§
Sourcefn encode<W: EncodeSink + ?Sized>(
&self,
writer: &mut W,
) -> Result<(), CodecError>
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Encodes self into writer using the crate’s canonical binary format.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
Source§impl CanonicalEncode for String
Available on crate feature alloc only.
impl CanonicalEncode for String
Available on crate feature
alloc only.fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl CanonicalEncode for bool
impl CanonicalEncode for bool
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl CanonicalEncode for i8
impl CanonicalEncode for i8
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl CanonicalEncode for i16
impl CanonicalEncode for i16
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl CanonicalEncode for i32
impl CanonicalEncode for i32
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl CanonicalEncode for i64
impl CanonicalEncode for i64
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl CanonicalEncode for i128
impl CanonicalEncode for i128
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl CanonicalEncode for str
impl CanonicalEncode for str
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl CanonicalEncode for u8
impl CanonicalEncode for u8
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl CanonicalEncode for u16
impl CanonicalEncode for u16
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl CanonicalEncode for u32
impl CanonicalEncode for u32
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl CanonicalEncode for u64
impl CanonicalEncode for u64
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl CanonicalEncode for u128
impl CanonicalEncode for u128
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl<A: CanonicalEncode, B: CanonicalEncode, C: CanonicalEncode, D: CanonicalEncode> CanonicalEncode for (A, B, C, D)
impl<A: CanonicalEncode, B: CanonicalEncode, C: CanonicalEncode, D: CanonicalEncode> CanonicalEncode for (A, B, C, D)
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl<A: CanonicalEncode, B: CanonicalEncode, C: CanonicalEncode> CanonicalEncode for (A, B, C)
impl<A: CanonicalEncode, B: CanonicalEncode, C: CanonicalEncode> CanonicalEncode for (A, B, C)
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl<A: CanonicalEncode, B: CanonicalEncode> CanonicalEncode for (A, B)
impl<A: CanonicalEncode, B: CanonicalEncode> CanonicalEncode for (A, B)
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl<A: CanonicalEncode> CanonicalEncode for (A,)
impl<A: CanonicalEncode> CanonicalEncode for (A,)
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl<T: CanonicalEncode, E: CanonicalEncode> CanonicalEncode for Result<T, E>
impl<T: CanonicalEncode, E: CanonicalEncode> CanonicalEncode for Result<T, E>
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl<T: CanonicalEncode, const N: usize> CanonicalEncode for [T; N]
impl<T: CanonicalEncode, const N: usize> CanonicalEncode for [T; N]
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl<T: CanonicalEncode> CanonicalEncode for Option<T>
impl<T: CanonicalEncode> CanonicalEncode for Option<T>
fn encode<W: EncodeSink + ?Sized>( &self, writer: &mut W, ) -> Result<(), CodecError>
Source§impl<T: CanonicalEncode> CanonicalEncode for Vec<T>
Available on crate feature alloc only.
impl<T: CanonicalEncode> CanonicalEncode for Vec<T>
Available on crate feature
alloc only.