pub struct TreeLevelSpecificConfiguration { /* private fields */ }
Expand description
This struct should define level-specific overrides for breadth and density at each tree layer.
Why: Standard breadth/density might not capture nuanced expansions or contractions in certain layers.
How: Provide arrays where index i corresponds to level i. If index i exceeds depth
, that’s invalid.
Benefit: Gradual expansions (or contractions) of the tree shape across layers.
Implementations§
Source§impl TreeLevelSpecificConfiguration
impl TreeLevelSpecificConfiguration
Sourcepub fn set_breadth_per_level(
&mut self,
val: Vec<u8>,
) -> &mut TreeLevelSpecificConfiguration
pub fn set_breadth_per_level( &mut self, val: Vec<u8>, ) -> &mut TreeLevelSpecificConfiguration
This array should map each level to a breadth override, e.g. [3,4,6]
.
If length > depth, it’s invalid. Larger numbers → more sibling nodes at that level.
Sourcepub fn set_density_per_level(
&mut self,
val: Vec<u8>,
) -> &mut TreeLevelSpecificConfiguration
pub fn set_density_per_level( &mut self, val: Vec<u8>, ) -> &mut TreeLevelSpecificConfiguration
This array should map each level to a density override, e.g. [2,3,5]
.
If length > depth, it’s invalid. Higher numbers → more variants at leaf nodes at that level.
Source§impl TreeLevelSpecificConfiguration
impl TreeLevelSpecificConfiguration
Sourcepub fn breadth_per_level(&self) -> &Vec<u8> ⓘ
pub fn breadth_per_level(&self) -> &Vec<u8> ⓘ
This array should map each level to a breadth override, e.g. [3,4,6]
.
If length > depth, it’s invalid. Larger numbers → more sibling nodes at that level.
Sourcepub fn density_per_level(&self) -> &Vec<u8> ⓘ
pub fn density_per_level(&self) -> &Vec<u8> ⓘ
This array should map each level to a density override, e.g. [2,3,5]
.
If length > depth, it’s invalid. Higher numbers → more variants at leaf nodes at that level.
Trait Implementations§
Source§impl AiJsonTemplate for TreeLevelSpecificConfiguration
impl AiJsonTemplate for TreeLevelSpecificConfiguration
Source§fn to_template() -> Value
fn to_template() -> Value
Source§impl Clone for TreeLevelSpecificConfiguration
impl Clone for TreeLevelSpecificConfiguration
Source§fn clone(&self) -> TreeLevelSpecificConfiguration
fn clone(&self) -> TreeLevelSpecificConfiguration
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Default for TreeLevelSpecificConfiguration
impl Default for TreeLevelSpecificConfiguration
Source§fn default() -> TreeLevelSpecificConfiguration
fn default() -> TreeLevelSpecificConfiguration
Source§impl<'de> Deserialize<'de> for TreeLevelSpecificConfiguration
impl<'de> Deserialize<'de> for TreeLevelSpecificConfiguration
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<TreeLevelSpecificConfiguration, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<TreeLevelSpecificConfiguration, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl From<JustifiedTreeLevelSpecificConfiguration> for TreeLevelSpecificConfiguration
impl From<JustifiedTreeLevelSpecificConfiguration> for TreeLevelSpecificConfiguration
Source§fn from(
value: JustifiedTreeLevelSpecificConfiguration,
) -> TreeLevelSpecificConfiguration
fn from( value: JustifiedTreeLevelSpecificConfiguration, ) -> TreeLevelSpecificConfiguration
Source§impl LoadFromFile for TreeLevelSpecificConfigurationwhere
TreeLevelSpecificConfiguration: for<'de> Deserialize<'de>,
impl LoadFromFile for TreeLevelSpecificConfigurationwhere
TreeLevelSpecificConfiguration: for<'de> Deserialize<'de>,
type Error = SaveLoadError
fn load_from_file<'async_trait>(
filename: impl AsRef<Path> + Send + 'async_trait,
) -> Pin<Box<dyn Future<Output = Result<TreeLevelSpecificConfiguration, <TreeLevelSpecificConfiguration as LoadFromFile>::Error>> + Send + 'async_trait>>where
TreeLevelSpecificConfiguration: 'async_trait,
Source§impl PartialEq for TreeLevelSpecificConfiguration
impl PartialEq for TreeLevelSpecificConfiguration
Source§fn eq(&self, other: &TreeLevelSpecificConfiguration) -> bool
fn eq(&self, other: &TreeLevelSpecificConfiguration) -> bool
self
and other
values to be equal, and is used by ==
.Source§impl SaveToFile for TreeLevelSpecificConfiguration
impl SaveToFile for TreeLevelSpecificConfiguration
type Error = SaveLoadError
fn save_to_file<'life0, 'async_trait>(
&'life0 self,
filename: impl AsRef<Path> + Send + 'async_trait,
) -> Pin<Box<dyn Future<Output = Result<(), <TreeLevelSpecificConfiguration as SaveToFile>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
TreeLevelSpecificConfiguration: 'async_trait,
Source§impl Serialize for TreeLevelSpecificConfiguration
impl Serialize for TreeLevelSpecificConfiguration
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl StructuralPartialEq for TreeLevelSpecificConfiguration
Auto Trait Implementations§
impl Freeze for TreeLevelSpecificConfiguration
impl RefUnwindSafe for TreeLevelSpecificConfiguration
impl Send for TreeLevelSpecificConfiguration
impl Sync for TreeLevelSpecificConfiguration
impl Unpin for TreeLevelSpecificConfiguration
impl UnwindSafe for TreeLevelSpecificConfiguration
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<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
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> IntoCollection<T> for T
impl<T> IntoCollection<T> for T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> LoadFromDirectory for Twhere
T: LoadFromFile + Send,
<T as LoadFromFile>::Error: Display + From<SaveLoadError> + From<Error> + Send + 'static,
impl<T> LoadFromDirectory for Twhere
T: LoadFromFile + Send,
<T as LoadFromFile>::Error: Display + From<SaveLoadError> + From<Error> + Send + 'static,
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>
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);