Struct ConfigSetupOptions

Source
pub struct ConfigSetupOptions {
    pub pretty: bool,
    pub format: Option<ConfigFormat>,
    pub save_on_drop: bool,
}
Expand description

Used to configure the Config object

§Attributes

  • pretty - Makes the contents of the config file more humanly-readable. When false, it will try to compact down the config file data so it takes up less storage space. I recommend you keep it on unless you know what you’re doing as most modern systems have enough space to handle spaces and newline characters even at scale.

  • format - An Option containing an enum of type ConfigFormat. Used to specify the format language to use (ex: JSON, TOML, etc.)
    If you don’t select a format (Option::None) it will try to guess the format based on the file extension and enabled features.
    If this step fails, an UnknownFormatError will be returned.

§More options are to be added later!

Pass .. Default::default() at the end of your construction to prevent yourself from getting errors in the future!

§Examples:

use fast_config::{ConfigSetupOptions, ConfigFormat, Config};
use serde::{Serialize, Deserialize};

// Creating a config struct to store our data
#[derive(Serialize, Deserialize)]
pub struct MyData {
    pub some_data: i32
}

fn main() {
    // Creating the options
    let options = ConfigSetupOptions {
        pretty: false,
        format: Some(ConfigFormat::JSON),
        .. Default::default()
    };

    // Creating the data and setting it's default values
    let data = MyData {
        some_data: 12345
    };

    // Creating the config itself
    let mut config = Config::from_options("./config/myconfig", options, data).unwrap();
    // [.. do stuff here]
}

Fields§

§pretty: bool§format: Option<ConfigFormat>§save_on_drop: bool
👎Deprecated: This option can result in I/O during program exit and can potentially corrupt config files! Use [Config::save] while your program is exiting instead!

Trait Implementations§

Source§

impl Clone for ConfigSetupOptions

Source§

fn clone(&self) -> ConfigSetupOptions

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Default for ConfigSetupOptions

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl TryFrom<ConfigSetupOptions> for InternalOptions

Source§

type Error = String

This function converts a ConfigSetupOptions into an internally-used InternalOptions.

This function is not recommended to be used outside the fast_config source code unless you know what you’re doing and accept the risks.
The signature or behaviour of the function may be modified in the future.

Source§

fn try_from(options: ConfigSetupOptions) -> Result<Self, Self::Error>

Performs the conversion.
Source§

impl Copy for ConfigSetupOptions

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.