Trait strict_encoding::TypedWrite
source · pub trait TypedWrite: Sized {
type TupleWriter: WriteTuple<Parent = Self>;
type StructWriter: WriteStruct<Parent = Self>;
type UnionDefiner: DefineUnion<Parent = Self>;
type RawWriter: WriteRaw;
// Required methods
fn write_union<T: StrictUnion>(
self,
inner: impl FnOnce(Self::UnionDefiner) -> Result<Self>,
) -> Result<Self>;
fn write_enum<T: StrictEnum>(self, value: T) -> Result<Self>
where u8: From<T>;
fn write_tuple<T: StrictTuple>(
self,
inner: impl FnOnce(Self::TupleWriter) -> Result<Self>,
) -> Result<Self>;
fn write_struct<T: StrictStruct>(
self,
inner: impl FnOnce(Self::StructWriter) -> Result<Self>,
) -> Result<Self>;
// Provided method
fn write_newtype<T: StrictTuple>(
self,
value: &impl StrictEncode,
) -> Result<Self> { ... }
}
Required Associated Types§
type TupleWriter: WriteTuple<Parent = Self>
type StructWriter: WriteStruct<Parent = Self>
type UnionDefiner: DefineUnion<Parent = Self>
type RawWriter: WriteRaw
Required Methods§
fn write_union<T: StrictUnion>( self, inner: impl FnOnce(Self::UnionDefiner) -> Result<Self>, ) -> Result<Self>
fn write_enum<T: StrictEnum>(self, value: T) -> Result<Self>
fn write_tuple<T: StrictTuple>( self, inner: impl FnOnce(Self::TupleWriter) -> Result<Self>, ) -> Result<Self>
fn write_struct<T: StrictStruct>( self, inner: impl FnOnce(Self::StructWriter) -> Result<Self>, ) -> Result<Self>
Provided Methods§
fn write_newtype<T: StrictTuple>( self, value: &impl StrictEncode, ) -> Result<Self>
Object Safety§
This trait is not object safe.