ValueEncoder

Trait ValueEncoder 

Source
pub trait ValueEncoder {
    // Required method
    fn encode_directly(&self) -> Vec<u8> ;

    // Provided methods
    fn encode_key<K: Into<String>>(key: K) -> Vec<u8>  { ... }
    fn encode_for_key<K: Into<String>>(&self, key: K) -> Vec<u8>  { ... }
}
Expand description

encoder methods for values (and primitive types). This is an extension trait.

Required Methods§

Source

fn encode_directly(&self) -> Vec<u8>

encodes the value directly (= without key).

Provided Methods§

Source

fn encode_key<K: Into<String>>(key: K) -> Vec<u8>

encodes a given key.

Source

fn encode_for_key<K: Into<String>>(&self, key: K) -> Vec<u8>

encodes a key to the value.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl ValueEncoder for bool

Source§

impl ValueEncoder for f32

Source§

impl ValueEncoder for i64

Source§

impl ValueEncoder for str

Source§

impl ValueEncoder for u8

Source§

impl ValueEncoder for u16

Source§

impl ValueEncoder for u32

Source§

impl ValueEncoder for u64

Source§

impl ValueEncoder for String

Source§

impl ValueEncoder for Vec<u8>

Source§

impl ValueEncoder for Vec<u64>

Source§

impl ValueEncoder for [u8; 12]

Source§

impl ValueEncoder for [u8; 16]

Source§

impl ValueEncoder for [u8; 32]

Source§

impl ValueEncoder for [u8; 64]

Source§

impl<H> ValueEncoder for Vec<H>
where H: HeaderCoding,

Source§

impl<K, V> ValueEncoder for BTreeMap<K, V>

Source§

impl<K, V> ValueEncoder for HashMap<K, V>
where K: ValueEncoder + Ord, V: ValueEncoder + Ord,

Implementors§

Source§

impl ValueEncoder for zff::header::KDFParameters

Source§

impl ValueEncoder for zff::header::version1::KDFParameters