pub struct Encoder;
Expand description
A TBON encoder
Trait Implementations§
source§impl<'en> Encoder<'en> for Encoder
impl<'en> Encoder<'en> for Encoder
§type Ok = Pin<Box<dyn Stream<Item = Result<Bytes, Error>> + Send + Unpin + 'en>>
type Ok = Pin<Box<dyn Stream<Item = Result<Bytes, Error>> + Send + Unpin + 'en>>
The output type produced by this
Encoder
.§type EncodeMap = MapEncoder<'en>
type EncodeMap = MapEncoder<'en>
Type returned from
encode_map
for streaming the content of the map.§type EncodeSeq = SequenceEncoder<'en>
type EncodeSeq = SequenceEncoder<'en>
Type returned from
encode_seq
for streaming the content of the sequence.§type EncodeTuple = SequenceEncoder<'en>
type EncodeTuple = SequenceEncoder<'en>
Type returned from
encode_tuple
for streaming the content of the tuple.source§fn encode_bytes<B: Into<Bytes>>(self, bytes: B) -> Result<Self::Ok, Self::Error>
fn encode_bytes<B: Into<Bytes>>(self, bytes: B) -> Result<Self::Ok, Self::Error>
Encode a binary value.
source§fn encode_array_bool<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = bool> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
fn encode_array_bool<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = bool> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
Encode an array of
bool
s.source§fn encode_array_i8<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = i8> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
fn encode_array_i8<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = i8> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
Encode an array of
i8
s.source§fn encode_array_i16<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = i16> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
fn encode_array_i16<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = i16> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
Encode an array of
i16
s.source§fn encode_array_i32<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = i32> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
fn encode_array_i32<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = i32> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
Encode an array of
i32
s.source§fn encode_array_i64<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = i64> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
fn encode_array_i64<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = i64> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
Encode an array of
i64
s.source§fn encode_array_u8<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = u8> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
fn encode_array_u8<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = u8> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
Encode an array of
u8
s.source§fn encode_array_u16<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = u16> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
fn encode_array_u16<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = u16> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
Encode an array of
u16
s.source§fn encode_array_u32<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = u32> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
fn encode_array_u32<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = u32> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
Encode an array of
u32
s.source§fn encode_array_u64<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = u64> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
fn encode_array_u64<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = u64> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
Encode an array of
u64
s.source§fn encode_array_f32<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = f32> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
fn encode_array_f32<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = f32> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
Encode an array of
f32
s.source§fn encode_array_f64<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = f64> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
fn encode_array_f64<T, S>(self, chunks: S) -> Result<Self::Ok, Self::Error>where
T: IntoIterator<Item = f64> + Send + Unpin + 'en,
S: Stream<Item = T> + Send + Unpin + 'en,
<T as IntoIterator>::IntoIter: Send + Unpin + 'en,
Encode an array of
f64
s.source§fn encode_some<T: IntoStream<'en> + 'en>(
self,
value: T
) -> Result<Self::Ok, Self::Error>
fn encode_some<T: IntoStream<'en> + 'en>( self, value: T ) -> Result<Self::Ok, Self::Error>
Encode a
Some(T)
value.source§fn encode_map(
self,
size_hint: Option<usize>
) -> Result<Self::EncodeMap, Self::Error>
fn encode_map( self, size_hint: Option<usize> ) -> Result<Self::EncodeMap, Self::Error>
Begin encoding a map.
This call must be followed by zero or more calls to
encode_key
and encode_value
,
then end
. Read moresource§fn encode_map_stream<K, V, S>(self, map: S) -> Result<Self::Ok, Self::Error>where
K: IntoStream<'en> + 'en,
V: IntoStream<'en> + 'en,
S: Stream<Item = (K, V)> + Send + Unpin + 'en,
fn encode_map_stream<K, V, S>(self, map: S) -> Result<Self::Ok, Self::Error>where
K: IntoStream<'en> + 'en,
V: IntoStream<'en> + 'en,
S: Stream<Item = (K, V)> + Send + Unpin + 'en,
Given a stream of encodable key-value pairs, return a stream encoded as a map.
source§fn encode_seq(
self,
size_hint: Option<usize>
) -> Result<Self::EncodeSeq, Self::Error>
fn encode_seq( self, size_hint: Option<usize> ) -> Result<Self::EncodeSeq, Self::Error>
Begin encoding a variably sized sequence.
This call must be followed by zero or more calls to
encode_element
, then end
. Read moresource§fn encode_seq_stream<T: IntoStream<'en> + 'en, S: Stream<Item = T> + Send + Unpin + 'en>(
self,
seq: S
) -> Result<Self::Ok, Self::Error>
fn encode_seq_stream<T: IntoStream<'en> + 'en, S: Stream<Item = T> + Send + Unpin + 'en>( self, seq: S ) -> Result<Self::Ok, Self::Error>
Given a stream of encodable values, return a stream encoded as a sequence.
source§fn encode_tuple(self, len: usize) -> Result<Self::EncodeTuple, Self::Error>
fn encode_tuple(self, len: usize) -> Result<Self::EncodeTuple, Self::Error>
Begin encoding a statically sized sequence whose length will be known at decoding time
without looking at the encoded data.
This call must be followed by zero or more calls to
encode_element
, then end
.source§fn collect_bytes<B: IntoIterator<Item = u8>>(
self,
bytes: B
) -> Result<Self::Ok, Self::Error>
fn collect_bytes<B: IntoIterator<Item = u8>>( self, bytes: B ) -> Result<Self::Ok, Self::Error>
Collect an iterator of bytes.
source§fn collect_seq<T, I>(self, iter: I) -> Result<Self::Ok, Self::Error>where
T: IntoStream<'en> + 'en,
I: IntoIterator<Item = T>,
fn collect_seq<T, I>(self, iter: I) -> Result<Self::Ok, Self::Error>where
T: IntoStream<'en> + 'en,
I: IntoIterator<Item = T>,
Collect an iterator as a sequence. Read more
Auto Trait Implementations§
impl RefUnwindSafe for Encoder
impl Send for Encoder
impl Sync for Encoder
impl Unpin for Encoder
impl UnwindSafe for Encoder
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