struct ValueDeserializer<'gctx> {
hits: u32,
source: ValueSource<'gctx>,
}Expand description
This is a deserializer that deserializes into a Value<T> for
configuration.
This is a special deserializer because it deserializes one of its struct fields into the location that this configuration value was defined in.
See more comments in value.rs for the protocol used here.
Fields§
§hits: u32§source: ValueSource<'gctx>Implementations§
Source§impl<'gctx> ValueDeserializer<'gctx>
impl<'gctx> ValueDeserializer<'gctx>
fn new(de: Deserializer<'gctx>) -> Result<ValueDeserializer<'gctx>, ConfigError>
fn with_cv(cv: CV) -> ValueDeserializer<'gctx>
fn definition(&self) -> &Definition
Trait Implementations§
Source§impl<'de, 'gctx> MapAccess<'de> for ValueDeserializer<'gctx>
impl<'de, 'gctx> MapAccess<'de> for ValueDeserializer<'gctx>
Source§type Error = ConfigError
type Error = ConfigError
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>, Self::Error>where
K: DeserializeSeed<'de>,
fn next_key_seed<K>(&mut self, seed: K) -> Result<Option<K::Value>, Self::Error>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 moreSource§fn next_value_seed<V>(&mut self, seed: V) -> Result<V::Value, Self::Error>where
V: DeserializeSeed<'de>,
fn next_value_seed<V>(&mut self, seed: V) -> Result<V::Value, Self::Error>where
V: DeserializeSeed<'de>,
This returns a
Ok(value) for the next value in the map. Read moreSource§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>,
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 moreSource§fn next_key<K>(&mut self) -> Result<Option<K>, Self::Error>where
K: Deserialize<'de>,
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 moreSource§fn next_value<V>(&mut self) -> Result<V, Self::Error>where
V: Deserialize<'de>,
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 moreSource§fn next_entry<K, V>(&mut self) -> Result<Option<(K, V)>, Self::Error>where
K: Deserialize<'de>,
V: Deserialize<'de>,
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 moreAuto Trait Implementations§
impl<'gctx> Freeze for ValueDeserializer<'gctx>
impl<'gctx> RefUnwindSafe for ValueDeserializer<'gctx>
impl<'gctx> Send for ValueDeserializer<'gctx>
impl<'gctx> Sync for ValueDeserializer<'gctx>
impl<'gctx> Unpin for ValueDeserializer<'gctx>
impl<'gctx> UnwindSafe for ValueDeserializer<'gctx>
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
impl<T> ErasedDestructor for Twhere
T: 'static,
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 104 bytes