pub struct ObsidianConfig { /* private fields */ }Expand description
Represents the Obsidian configuration, typically loaded from an obsidian.json file.
Implementations§
Source§impl ObsidianConfig
impl ObsidianConfig
Sourcepub fn load() -> Result<Self>
pub fn load() -> Result<Self>
Attempts to locate and load the system’s obsidian.json file as an ObsidianConfig.
Returns an Error if the filepath doesn’t exist or JSON parsing failed.
Sourcepub fn load_from(config_path: &Path) -> Result<Self>
pub fn load_from(config_path: &Path) -> Result<Self>
Attempts to load obsidian.json file as an ObsidianConfig from the given directory
Path.
Returns an Error if the filepath doesn’t exist or JSON parsing failed.
§Examples
use basalt_core::obsidian::ObsidianConfig;
use std::path::Path;
_ = ObsidianConfig::load_from(Path::new("./dir-with-config-file"));Sourcepub fn vaults(&self) -> Vec<&Vault>
pub fn vaults(&self) -> Vec<&Vault>
Returns an iterator over the vaults in the configuration.
§Examples
use basalt_core::obsidian::{ObsidianConfig, Vault};
let config = ObsidianConfig::from([
("Obsidian", Vault::default()),
("Work", Vault::default()),
]);
let vaults = config.vaults();
assert_eq!(vaults.len(), 2);
assert_eq!(vaults.get(0), Some(&Vault::default()).as_ref());Sourcepub fn get_vault_by_name(&self, name: &str) -> Option<&Vault>
pub fn get_vault_by_name(&self, name: &str) -> Option<&Vault>
Finds a vault by name, returning a reference if it exists.
§Examples
use basalt_core::obsidian::{ObsidianConfig, Vault};
let config = ObsidianConfig::from([
("Obsidian", Vault::default()),
("Work", Vault::default()),
]);
_ = config.get_vault_by_name("Obsidian");Sourcepub fn get_open_vault(&self) -> Option<&Vault>
pub fn get_open_vault(&self) -> Option<&Vault>
Gets the currently opened vault marked by Obsidian.
§Examples
use basalt_core::obsidian::{ObsidianConfig, Vault};
let config = ObsidianConfig::from([
(
"Obsidian",
Vault {
open: true,
..Vault::default()
},
),
("Work", Vault::default()),
]);
_ = config.get_open_vault();Trait Implementations§
Source§impl Clone for ObsidianConfig
impl Clone for ObsidianConfig
Source§fn clone(&self) -> ObsidianConfig
fn clone(&self) -> ObsidianConfig
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ObsidianConfig
impl Debug for ObsidianConfig
Source§impl Default for ObsidianConfig
impl Default for ObsidianConfig
Source§fn default() -> ObsidianConfig
fn default() -> ObsidianConfig
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for ObsidianConfig
impl<'de> Deserialize<'de> for ObsidianConfig
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
Source§impl<const N: usize> From<[(&str, Vault); N]> for ObsidianConfig
impl<const N: usize> From<[(&str, Vault); N]> for ObsidianConfig
Source§fn from(arr: [(&str, Vault); N]) -> Self
fn from(arr: [(&str, Vault); N]) -> Self
§Examples
use basalt_core::obsidian::{ObsidianConfig, Vault};
let config_1 = ObsidianConfig::from([
("Obsidian", Vault::default()),
("My Vault", Vault::default()),
]);
let config_2: ObsidianConfig = [
("Obsidian", Vault::default()),
("My Vault", Vault::default()),
].into();
assert_eq!(config_1, config_2);Source§impl<const N: usize> From<[(String, Vault); N]> for ObsidianConfig
impl<const N: usize> From<[(String, Vault); N]> for ObsidianConfig
Source§fn from(arr: [(String, Vault); N]) -> Self
fn from(arr: [(String, Vault); N]) -> Self
§Examples
use basalt_core::obsidian::{ObsidianConfig, Vault};
let config_1 = ObsidianConfig::from([
(String::from("Obsidian"), Vault::default()),
(String::from("My Vault"), Vault::default()),
]);
let config_2: ObsidianConfig = [
(String::from("Obsidian"), Vault::default()),
(String::from("My Vault"), Vault::default()),
].into();
assert_eq!(config_1, config_2);Source§impl PartialEq for ObsidianConfig
impl PartialEq for ObsidianConfig
impl StructuralPartialEq for ObsidianConfig
Auto Trait Implementations§
impl Freeze for ObsidianConfig
impl RefUnwindSafe for ObsidianConfig
impl Send for ObsidianConfig
impl Sync for ObsidianConfig
impl Unpin for ObsidianConfig
impl UnwindSafe for ObsidianConfig
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