pub struct Encoder<'a> { /* private fields */ }
Expand description
Represents MessagePack serialization implementation.
§Note
MessagePack has no specification about how to encode variant types. Thus we are free to do whatever we want, so the given chose may be not ideal for you.
Every Rust variant value can be represented as a tuple of index and a value.
All instances of ErrorKind::Interrupted
are handled by this function and the underlying
operation is retried.
Implementations§
Trait Implementations§
Source§impl<'a> Encoder for Encoder<'a>
impl<'a> Encoder for Encoder<'a>
Source§fn emit_enum<F>(&mut self, _name: &str, f: F) -> Result<(), Error>
fn emit_enum<F>(&mut self, _name: &str, f: F) -> Result<(), Error>
Encodes and attempts to write the enum value into the Write.
Currently we encode variant types as a tuple of id with array of args, like: [id, [args…]]
Source§fn emit_enum_variant<F>(
&mut self,
_name: &str,
id: usize,
len: usize,
f: F,
) -> Result<(), Error>
fn emit_enum_variant<F>( &mut self, _name: &str, id: usize, len: usize, f: F, ) -> Result<(), Error>
Encodes and attempts to write a concrete variant value.
Source§fn emit_enum_variant_arg<F>(&mut self, _idx: usize, f: F) -> Result<(), Error>
fn emit_enum_variant_arg<F>(&mut self, _idx: usize, f: F) -> Result<(), Error>
Encodes and attempts to write a concrete variant value arguments.
Source§type Error = ValueWriteError
type Error = ValueWriteError
The error type for method results.
Source§fn emit_enum_struct_variant<F>(
&mut self,
_name: &str,
_id: usize,
_len: usize,
_f: F,
) -> Result<(), Error>
fn emit_enum_struct_variant<F>( &mut self, _name: &str, _id: usize, _len: usize, _f: F, ) -> Result<(), Error>
Emit a enumeration variant value with no or named data. Read more
Source§fn emit_enum_struct_variant_field<F>(
&mut self,
_name: &str,
_idx: usize,
_f: F,
) -> Result<(), Error>
fn emit_enum_struct_variant_field<F>( &mut self, _name: &str, _idx: usize, _f: F, ) -> Result<(), Error>
Emit a named data item for an enumeration variant. Read more
Source§fn emit_struct<F>(&mut self, _name: &str, len: usize, f: F) -> Result<(), Error>
fn emit_struct<F>(&mut self, _name: &str, len: usize, f: F) -> Result<(), Error>
Emit a struct value. Read more
Source§fn emit_struct_field<F>(
&mut self,
_name: &str,
_idx: usize,
f: F,
) -> Result<(), Error>
fn emit_struct_field<F>( &mut self, _name: &str, _idx: usize, f: F, ) -> Result<(), Error>
Emit a field item for a struct. Read more
Source§fn emit_tuple<F>(&mut self, len: usize, f: F) -> Result<(), Error>
fn emit_tuple<F>(&mut self, len: usize, f: F) -> Result<(), Error>
Emit a tuple value. Read more
Source§fn emit_tuple_arg<F>(&mut self, _idx: usize, f: F) -> Result<(), Error>
fn emit_tuple_arg<F>(&mut self, _idx: usize, f: F) -> Result<(), Error>
Emit a data item for a tuple. Read more
Source§fn emit_tuple_struct<F>(
&mut self,
_name: &str,
len: usize,
f: F,
) -> Result<(), Error>
fn emit_tuple_struct<F>( &mut self, _name: &str, len: usize, f: F, ) -> Result<(), Error>
Emit a tuple struct value. Read more
Source§fn emit_tuple_struct_arg<F>(&mut self, _idx: usize, f: F) -> Result<(), Error>
fn emit_tuple_struct_arg<F>(&mut self, _idx: usize, f: F) -> Result<(), Error>
Emit a data item for a tuple struct. Read more
Source§fn emit_option_some<F>(&mut self, f: F) -> Result<(), Error>
fn emit_option_some<F>(&mut self, f: F) -> Result<(), Error>
Emit the
Some(x)
optional value. Read moreSource§fn emit_seq<F>(&mut self, len: usize, f: F) -> Result<(), Error>
fn emit_seq<F>(&mut self, len: usize, f: F) -> Result<(), Error>
Emit a sequence of values. Read more
Source§fn emit_seq_elt<F>(&mut self, _idx: usize, f: F) -> Result<(), Error>
fn emit_seq_elt<F>(&mut self, _idx: usize, f: F) -> Result<(), Error>
Emit an element in a sequence. Read more
Source§fn emit_map<F>(&mut self, len: usize, f: F) -> Result<(), Error>
fn emit_map<F>(&mut self, len: usize, f: F) -> Result<(), Error>
Emit an associative container (map). Read more
Auto Trait Implementations§
impl<'a> Freeze for Encoder<'a>
impl<'a> !RefUnwindSafe for Encoder<'a>
impl<'a> !Send for Encoder<'a>
impl<'a> !Sync for Encoder<'a>
impl<'a> Unpin for Encoder<'a>
impl<'a> !UnwindSafe for Encoder<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more