pub struct ParsedParamAttrs {
pub wire_name: Option<String>,
pub location: Option<ParamLocation>,
pub default_value: Option<String>,
pub short_flag: Option<char>,
pub help_text: Option<String>,
pub positional: bool,
pub env_var: Option<String>,
pub file_key: Option<String>,
pub nested: bool,
pub env_prefix: Option<String>,
pub nested_serde: bool,
}Expand description
Parsed result of #[param(...)] attributes.
Fields§
§wire_name: Option<String>§location: Option<ParamLocation>§default_value: Option<String>§short_flag: Option<char>§help_text: Option<String>§positional: bool§env_var: Option<String>Environment variable name (from #[param(env = "VAR")]). Used by #[derive(Config)].
file_key: Option<String>Config file key override (from #[param(file_key = "a.b.c")]). Used by #[derive(Config)].
nested: boolMarks a field as a nested Config sub-struct (from #[param(nested)]).
The field’s type must also #[derive(Config)]. TOML loading delegates to
the child’s Config::load, using the field name (or file_key) as the
sub-table name. Env var loading narrows the prefix with the field name.
env_prefix: Option<String>Env-var prefix override for a nested field (from #[param(env_prefix = "SEARCH")]).
When set, env vars for the child struct use {env_prefix}_{CHILD_FIELD} instead
of {parent_prefix}_{field_name}_{CHILD_FIELD}. Only meaningful with nested.
nested_serde: boolSerde-passthrough flag for nested fields (from #[param(nested, serde)]).
When true (implies nested = true), the TOML sub-table for this field is
deserialized via serde::Deserialize instead of Config::load. Env-var
overrides are silently skipped for the serde-nested subtree; use
#[serde(default)] in the child type for defaults. Only meaningful with
nested.
Trait Implementations§
Source§impl Clone for ParsedParamAttrs
impl Clone for ParsedParamAttrs
Source§fn clone(&self) -> ParsedParamAttrs
fn clone(&self) -> ParsedParamAttrs
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more