Expand description
§Confpiler (crate)
This crate provides a mechanism for “compiling” an ordered set of configuration files into a single, flattened representation suitable for exporting to environment variables.
Transforming
## default.yaml
foo:
bar: 10
baz: false
hoof: doof
## production.yaml
foo:
baz: trueinto something like
"FOO__BAR": "10"
"FOO__BAZ": "false"
"HOOF": "doof"via
use confpiler::FlatConfig;
let (conf, warnings) = FlatConfig::builder()
.add_config("foo/default")
.add_config("foo/production")
.build()
.expect("invalid config");All values are converted to strings, with simple arrays being collapsed to
delimited strings (with the default separator being ,).
This does not support arrays containing more complex values like other arrays and maps.
§The following formats are currently supported:
- JOSN
- TOML
- YAML
- INI
Modules§
- error
- Crate error definitions and associated conversions
Structs§
- Flat
Config - A representation of a flattened, compiled configuration.
- Flat
Config Builder - This is the builder for FlatConfig.
Enums§
- Merge
Warning - An enumeration of possible warning values regarding config merging.