Module de

Module de 

Source
Expand description

Deserialization for converting ConfigValue instances to target types.

The Deserializer type is the main driver of deserialization. The workflow is roughly:

  1. GlobalContext::get<T>() creates Deserializer and calls T::deserialize()
  2. Then call type-specific deserialize methods as in normal serde deserialization.

The purpose of this workflow is to:

  • Retrieve the correct config value based on source location precedence
  • Provide richer error context showing where a config is defined
  • Provide a richer internal API to map to concrete config types without touching underlying ConfigValue directly

Macrosยง

deserialize_method ๐Ÿ”’

Structsยง

ArrayItemDeserializer ๐Ÿ”’
A deserializer for individual ConfigValue items in arrays
ArrayItemMapAccess ๐Ÿ”’
Map access for nested tables within ArrayItemDeserializer
ArrayItemSeqAccess ๐Ÿ”’
Sequence access for nested arrays within ArrayItemDeserializer
ConfigMapAccess ๐Ÿ”’
ConfigSeqAccess ๐Ÿ”’
Deserializer ๐Ÿ”’
Serde deserializer used to convert config values to a target type using GlobalContext::get.
Tuple2Deserializer ๐Ÿ”’
A deserializer which takes two values and deserializes into a tuple of those two values. This is similar to types like StrDeserializer in upstream serde itself.
ValueDeserializer ๐Ÿ”’
This is a deserializer that deserializes into a Value<T> for configuration.

Enumsยง

KeyKind ๐Ÿ”’
ValueSource ๐Ÿ”’
Source of data for ValueDeserializer