pub struct ConfigTree<T> { /* private fields */ }Expand description
A loaded config tree in traversal order.
§Type Parameters
T: Loaded source value type stored by each node.
Implementations§
Source§impl<T> ConfigTree<T>
Accessors for a loaded config tree.
impl<T> ConfigTree<T>
Accessors for a loaded config tree.
Sourcepub fn nodes(&self) -> &[ConfigNode<T>]
pub fn nodes(&self) -> &[ConfigNode<T>]
Returns loaded tree nodes in traversal order.
§Arguments
self: Loaded config tree being inspected.
§Returns
Returns loaded nodes in traversal order.
§Examples
use std::{io, path::Path};
use rust_config_tree::{ConfigSource, load_config_tree};
let tree = load_config_tree(
"root.yaml",
|_path: &Path| -> io::Result<ConfigSource<&'static str>> {
Ok(ConfigSource::new("root", Vec::new()))
},
)?;
assert_eq!(tree.nodes().len(), 1);Sourcepub fn into_nodes(self) -> Vec<ConfigNode<T>>
pub fn into_nodes(self) -> Vec<ConfigNode<T>>
Decomposes the tree into its nodes.
§Arguments
self: Loaded config tree to decompose.
§Returns
Returns the loaded nodes, preserving traversal order.
§Examples
use std::{io, path::Path};
use rust_config_tree::{ConfigSource, load_config_tree};
let tree = load_config_tree(
"root.yaml",
|_path: &Path| -> io::Result<ConfigSource<&'static str>> {
Ok(ConfigSource::new("root", Vec::new()))
},
)?;
assert_eq!(tree.into_nodes().len(), 1);Sourcepub fn into_values(self) -> Vec<T>
pub fn into_values(self) -> Vec<T>
Decomposes the tree into loaded values, discarding paths and includes.
§Arguments
self: Loaded config tree to decompose.
§Returns
Returns loaded source values in traversal order.
§Examples
use std::{io, path::Path};
use rust_config_tree::{ConfigSource, load_config_tree};
let tree = load_config_tree(
"root.yaml",
|_path: &Path| -> io::Result<ConfigSource<&'static str>> {
Ok(ConfigSource::new("root", Vec::new()))
},
)?;
assert_eq!(tree.into_values(), vec!["root"]);Trait Implementations§
Source§impl<T: Clone> Clone for ConfigTree<T>
impl<T: Clone> Clone for ConfigTree<T>
Source§fn clone(&self) -> ConfigTree<T>
fn clone(&self) -> ConfigTree<T>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl<T: Debug> Debug for ConfigTree<T>
impl<T: Debug> Debug for ConfigTree<T>
Source§impl<T: PartialEq> PartialEq for ConfigTree<T>
impl<T: PartialEq> PartialEq for ConfigTree<T>
impl<T: Eq> Eq for ConfigTree<T>
impl<T> StructuralPartialEq for ConfigTree<T>
Auto Trait Implementations§
impl<T> Freeze for ConfigTree<T>
impl<T> RefUnwindSafe for ConfigTree<T>where
T: RefUnwindSafe,
impl<T> Send for ConfigTree<T>where
T: Send,
impl<T> Sync for ConfigTree<T>where
T: Sync,
impl<T> Unpin for ConfigTree<T>where
T: Unpin,
impl<T> UnsafeUnpin for ConfigTree<T>
impl<T> UnwindSafe for ConfigTree<T>where
T: UnwindSafe,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the foreground set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red() and
green(), which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg():
use yansi::{Paint, Color};
painted.fg(Color::White);Set foreground color to white using white().
use yansi::Paint;
painted.white();Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the background set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red() and
on_green(), which have the same functionality but
are pithier.
§Example
Set background color to red using fg():
use yansi::{Paint, Color};
painted.bg(Color::Red);Set background color to red using on_red().
use yansi::Paint;
painted.on_red();Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute value.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold() and
underline(), which have the same functionality
but are pithier.
§Example
Make text bold using attr():
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);Make text bold using using bold().
use yansi::Paint;
painted.bold();Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi Quirk value.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask() and
wrap(), which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk():
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);Enable wrapping using wrap().
use yansi::Paint;
painted.wrap();Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
fn clear(&self) -> Painted<&T>
renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted only when both stdout and stderr are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);