struct EmptyMapAccess;
Expand description

MapAccess for a map with no members specified.

This is used to allow a struct enum type to be specified without [ and ], in which case all its members will take their default value:

#[derive(Deserialize, PartialEq, Eq, Debug)]
#[serde(rename_all = "kebab-case")]
enum FlipMode {
    Active {
        #[serde(default)]
        switch1: bool,
        #[serde(default)]
        switch2: bool,
    },
}
#[derive(Deserialize, PartialEq, Eq, Debug)]
struct TestStruct {
    mode: FlipMode,
}
let res: TestStruct = from_key_values("mode=active").unwrap();
assert_eq!(
    res,
    TestStruct {
        mode: FlipMode::Active {
            switch1: false,
            switch2: false
        }
    }
 );

Trait Implementations§

source§

impl<'de> MapAccess<'de> for EmptyMapAccess

§

type Error = ParseError

The error type that can be returned if some error occurs during deserialization.
source§

fn next_key_seed<K>(&mut self, _seed: K) -> Result<Option<K::Value>, ParseError>
where K: DeserializeSeed<'de>,

This returns Ok(Some(key)) for the next key in the map, or Ok(None) if there are no more remaining entries. Read more
source§

fn next_value_seed<V>(&mut self, _seed: V) -> Result<V::Value, ParseError>
where V: DeserializeSeed<'de>,

This returns a Ok(value) for the next value in the map. Read more
source§

fn next_entry_seed<K, V>( &mut self, kseed: K, vseed: V ) -> Result<Option<(<K as DeserializeSeed<'de>>::Value, <V as DeserializeSeed<'de>>::Value)>, Self::Error>
where K: DeserializeSeed<'de>, V: DeserializeSeed<'de>,

This returns Ok(Some((key, value))) for the next (key-value) pair in the map, or Ok(None) if there are no more remaining items. Read more
source§

fn next_key<K>(&mut self) -> Result<Option<K>, Self::Error>
where K: Deserialize<'de>,

This returns Ok(Some(key)) for the next key in the map, or Ok(None) if there are no more remaining entries. Read more
source§

fn next_value<V>(&mut self) -> Result<V, Self::Error>
where V: Deserialize<'de>,

This returns a Ok(value) for the next value in the map. Read more
source§

fn next_entry<K, V>(&mut self) -> Result<Option<(K, V)>, Self::Error>
where K: Deserialize<'de>, V: Deserialize<'de>,

This returns Ok(Some((key, value))) for the next (key-value) pair in the map, or Ok(None) if there are no more remaining items. Read more
source§

fn size_hint(&self) -> Option<usize>

Returns the number of entries remaining in the map, if known.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.