mod cli;
pub(crate) mod cli_tokens;
mod config_flag;
mod defaults;
mod env;
mod r#override;
#[cfg(test)]
mod override_tests;
pub(crate) use cli::{CliFieldMetadata, build_cli_field_metadata, build_cli_struct_fields};
pub(crate) use config_flag::build_config_flag_field;
pub(crate) use defaults::{build_default_struct_fields, build_default_struct_init};
pub(crate) use env::{
build_config_env_var, build_env_provider, compute_config_env_var, compute_dotfile_name,
default_app_name,
};
pub(crate) use r#override::{CollectionStrategies, collect_collection_strategies};
#[cfg(test)]
#[expect(
unused_imports,
reason = "Collection override helpers are exercised only in macro tests"
)]
pub(crate) use r#override::{build_collection_logic, build_override_struct};