Skip to main content

StyledText

Struct StyledText 

Source
pub struct StyledText { /* private fields */ }
Expand description

One text flow carrying any number of styles.

The source is stored once. Its private ranges are canonical: they are non-empty, cover the source in order, end only at whole-string grapheme boundaries, and never place equal styles beside each other. Newline and horizontal tab are admitted source controls; layout replaces tabs under this value’s policy, while direct text rendering preserves them.

Implementations§

Source§

impl StyledText

Source

pub fn new(text: impl Into<String>, style: TextStyle) -> Self

Creates one uniformly styled text flow.

§Panics

Panics when text contains a control character other than newline or horizontal tab. Rendered ANSI belongs to the output domain, not this source-text domain.

Source

pub fn try_from_spans<I, S>(spans: I) -> Result<Self, StyledTextError>
where I: IntoIterator<Item = S>, S: Into<TextSpan>,

Joins input segments into one validated, canonical text flow.

§Panics

Panics when any segment contains a control character other than newline or horizontal tab.

Source

pub fn as_str(&self) -> &str

Returns the joined plain-text source.

Source

pub fn spans(&self) -> impl Iterator<Item = (&str, &TextStyle)>

Returns the canonical styled segments in source order.

Source

pub fn tab_policy(self, tab_policy: TabPolicy) -> Self

Sets the policy used when this text participates in layout.

Direct text rendering preserves the source tab characters and ignores this layout-only property.

Source

pub fn reset_tab_policy(self) -> Self

Restores the default layout policy of four spaces per tab.

Source

pub const fn get_tab_policy(&self) -> Option<&TabPolicy>

Returns the explicitly configured layout policy, if any.

Trait Implementations§

Source§

impl Clone for StyledText

Source§

fn clone(&self) -> StyledText

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for StyledText

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for StyledText

Source§

fn default() -> StyledText

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

impl From<&str> for StyledText

Source§

fn from(text: &str) -> Self

Converts to this type from the input type.
Source§

impl From<String> for StyledText

Source§

fn from(text: String) -> Self

Converts to this type from the input type.
Source§

impl From<StyledText> for BlockTitle

Source§

fn from(text: StyledText) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for StyledText

Source§

fn eq(&self, other: &StyledText) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for StyledText

Source§

impl StructuralPartialEq for StyledText

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.