pub struct Config {
pub package_manager: PackageManager,
pub pkgs: Packages,
}
Expand description
Contains the expected configuration in the toml file.
Fields§
§package_manager: PackageManager
§pkgs: Packages
Implementations§
source§impl Config
impl Config
sourcepub fn build(file_contents: String) -> Result<Config, Error>
pub fn build(file_contents: String) -> Result<Config, Error>
Builds a config from the contents of a toml file.
§Example
use frontier::config::Config;
let config_contents = "\
[package_manager]
name = \"pacman\"
[pkgs]
install = [
\"neofetch\",
\"neovim\",
\"lolcat\",
]".to_string();
let config = Config::build(config_contents);
assert!(config.is_ok());
dbg!(config.unwrap());
sourcepub fn pkgs_to_install(&self) -> Result<Vec<&str>, &'static str>
pub fn pkgs_to_install(&self) -> Result<Vec<&str>, &'static str>
Gets the packages to install from the [pkgs] section as a vec, filters out any non-string elements.
pub fn pkg_mgr(&self) -> Result<&PkgMgrs, &'static str>
pub fn args_to_pkg_mgr(&self) -> Result<Vec<&str>, &'static str>
Trait Implementations§
source§impl<'de> Deserialize<'de> for Config
impl<'de> Deserialize<'de> for Config
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for Config
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnwindSafe for Config
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more