Struct protobuf_codec::field::MapFieldEncoder
[−]
[src]
pub struct MapFieldEncoder<F, K, V, M: IntoIterator> { /* fields omitted */ }
Encoder for map fields which have scalar values.
Methods
impl<F, K, V, M> MapFieldEncoder<F, K, V, M> where
F: Copy + Into<FieldNum>,
K: SizedEncode + MapKeyEncode,
V: SizedEncode + ValueEncode,
M: IntoIterator<Item = (K::Item, V::Item)>, [src]
F: Copy + Into<FieldNum>,
K: SizedEncode + MapKeyEncode,
V: SizedEncode + ValueEncode,
M: IntoIterator<Item = (K::Item, V::Item)>,
pub fn new(field_num: F, key_encoder: K, value_encoder: V) -> Self[src]
Makes a new MapFieldEncoder instance.
Trait Implementations
impl<F: Default, K: Default, V: Default, M: Default + IntoIterator> Default for MapFieldEncoder<F, K, V, M>[src]
fn default() -> MapFieldEncoder<F, K, V, M>[src]
Returns the "default value" for a type. Read more
impl<F, K, V, M> Encode for MapFieldEncoder<F, K, V, M> where
F: Copy + Into<FieldNum>,
K: SizedEncode + MapKeyEncode,
V: SizedEncode + ValueEncode,
M: IntoIterator<Item = (K::Item, V::Item)>, [src]
F: Copy + Into<FieldNum>,
K: SizedEncode + MapKeyEncode,
V: SizedEncode + ValueEncode,
M: IntoIterator<Item = (K::Item, V::Item)>,
type Item = M
The type of items to be encoded.
fn encode(&mut self, buf: &mut [u8], eos: Eos) -> Result<usize>[src]
Encodes the items in the encoder and writes the encoded bytes to the given buffer. Read more
fn start_encoding(&mut self, item: Self::Item) -> Result<()>[src]
Tries to start encoding the given item. Read more
fn is_idle(&self) -> bool[src]
Returns true if there are no items to be encoded in the encoder, otherwise false. Read more
fn requiring_bytes(&self) -> ByteCount[src]
Returns the number of bytes required to encode all the items in the encoder. Read more
impl<F, K, V, M> FieldEncode for MapFieldEncoder<F, K, V, M> where
F: Copy + Into<FieldNum>,
K: SizedEncode + MapKeyEncode,
V: SizedEncode + ValueEncode,
M: IntoIterator<Item = (K::Item, V::Item)>, [src]
F: Copy + Into<FieldNum>,
K: SizedEncode + MapKeyEncode,
V: SizedEncode + ValueEncode,
M: IntoIterator<Item = (K::Item, V::Item)>,
impl<F, K, V, M: IntoIterator> Debug for MapFieldEncoder<F, K, V, M>[src]
Auto Trait Implementations
impl<F, K, V, M> Send for MapFieldEncoder<F, K, V, M> where
F: Send,
K: Send,
M: Send,
V: Send,
<M as IntoIterator>::IntoIter: Send,
F: Send,
K: Send,
M: Send,
V: Send,
<M as IntoIterator>::IntoIter: Send,
impl<F, K, V, M> Sync for MapFieldEncoder<F, K, V, M> where
F: Sync,
K: Sync,
M: Sync,
V: Sync,
<M as IntoIterator>::IntoIter: Sync,
F: Sync,
K: Sync,
M: Sync,
V: Sync,
<M as IntoIterator>::IntoIter: Sync,