Skip to main content

config/prelude/
yaml.rs

1use crate::{yaml, Builder, FileSource};
2
3/// Defines `*.yaml` and `*.yml` file extension methods for a [configuration builder](Builder).
4pub trait YamlExt: Sized {
5    /// Adds a `*.yaml` file as a configuration source.
6    ///
7    /// # Arguments
8    ///
9    /// * `file` - The `*.yaml` [file source](FileSource) information
10    fn add_yaml_file<T: Into<FileSource>>(self, file: T) -> Self;
11}
12
13impl YamlExt for Builder {
14    fn add_yaml_file<F: Into<FileSource>>(mut self, file: F) -> Self {
15        self.add(yaml::Provider::new(file.into()));
16        self
17    }
18}