Skip to main content

Line

Struct Line 

Source
pub struct Line {
    pub spans: Vec<Span>,
}
Expand description

A horizontal sequence of Spans rendered as a single line.

§Examples

use retroglyph::text::{Line, Span};
use retroglyph::style::Style;
use retroglyph::color::Color;

let line = Line::from(vec![
    Span::raw("HP: "),
    Span::styled("100", Style::new().fg(Color::GREEN)),
]);
assert_eq!(line.width(), 7);

Fields§

§spans: Vec<Span>

The spans that make up this line.

Implementations§

Source§

impl Line

Source

pub fn new() -> Self

Creates an empty line.

Source

pub fn raw(content: impl Into<String>) -> Self

Creates a line from a single unstyled string.

Source

pub fn width(&self) -> usize

Returns the total display width of this line in terminal columns.

Accounts for wide characters (CJK, emoji) that occupy two columns.

Trait Implementations§

Source§

impl Clone for Line

Source§

fn clone(&self) -> Line

Returns a duplicate of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for Line

Source§

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

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

impl Default for Line

Source§

fn default() -> Line

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

impl From<&str> for Line

Source§

fn from(s: &str) -> Self

Converts to this type from the input type.
Source§

impl From<Span> for Line

Source§

fn from(span: Span) -> Self

Converts to this type from the input type.
Source§

impl From<String> for Line

Source§

fn from(s: String) -> Self

Converts to this type from the input type.
Source§

impl From<Vec<Span>> for Line

Source§

fn from(spans: Vec<Span>) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for Line

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · 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 Line

Source§

impl StructuralPartialEq for Line

Auto Trait Implementations§

§

impl Freeze for Line

§

impl RefUnwindSafe for Line

§

impl Send for Line

§

impl Sync for Line

§

impl Unpin for Line

§

impl UnsafeUnpin for Line

§

impl UnwindSafe for Line

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.