Element

Trait Element 

Source
pub trait Element {
    // Required methods
    fn width(&self) -> usize;
    fn render(&self) -> impl DoubleEndedIterator<Item = RenderChunk<'_>>;
}
Expand description

A particular widget that can be rendered to the TUI.

Required Methods§

Source

fn width(&self) -> usize

The width of the element, in columns.

Source

fn render(&self) -> impl DoubleEndedIterator<Item = RenderChunk<'_>>

Renders the element into a sequence of chunks.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl Element for ()

Source§

fn width(&self) -> usize

Source§

fn render(&self) -> impl DoubleEndedIterator<Item = RenderChunk<'_>>

Source§

impl<A> Element for (A,)
where A: Element,

Source§

fn width(&self) -> usize

Source§

fn render(&self) -> impl DoubleEndedIterator<Item = RenderChunk<'_>>

Source§

impl<A, B> Element for (A, B)
where A: Element, B: Element,

Source§

fn width(&self) -> usize

Source§

fn render(&self) -> impl DoubleEndedIterator<Item = RenderChunk<'_>>

Source§

impl<A, B, C> Element for (A, B, C)
where A: Element, B: Element, C: Element,

Source§

fn width(&self) -> usize

Source§

fn render(&self) -> impl DoubleEndedIterator<Item = RenderChunk<'_>>

Source§

impl<A, B, C, D> Element for (A, B, C, D)
where A: Element, B: Element, C: Element, D: Element,

Source§

fn width(&self) -> usize

Source§

fn render(&self) -> impl DoubleEndedIterator<Item = RenderChunk<'_>>

Source§

impl<A, B, C, D, E> Element for (A, B, C, D, E)
where A: Element, B: Element, C: Element, D: Element, E: Element,

Source§

fn width(&self) -> usize

Source§

fn render(&self) -> impl DoubleEndedIterator<Item = RenderChunk<'_>>

Source§

impl<A, B, C, D, E, F> Element for (A, B, C, D, E, F)
where A: Element, B: Element, C: Element, D: Element, E: Element, F: Element,

Source§

fn width(&self) -> usize

Source§

fn render(&self) -> impl DoubleEndedIterator<Item = RenderChunk<'_>>

Source§

impl<A, B, C, D, E, F, G> Element for (A, B, C, D, E, F, G)
where A: Element, B: Element, C: Element, D: Element, E: Element, F: Element, G: Element,

Source§

fn width(&self) -> usize

Source§

fn render(&self) -> impl DoubleEndedIterator<Item = RenderChunk<'_>>

Source§

impl<A, B, C, D, E, F, G, H> Element for (A, B, C, D, E, F, G, H)
where A: Element, B: Element, C: Element, D: Element, E: Element, F: Element, G: Element, H: Element,

Source§

fn width(&self) -> usize

Source§

fn render(&self) -> impl DoubleEndedIterator<Item = RenderChunk<'_>>

Source§

impl<A, B, C, D, E, F, G, H, I> Element for (A, B, C, D, E, F, G, H, I)
where A: Element, B: Element, C: Element, D: Element, E: Element, F: Element, G: Element, H: Element, I: Element,

Source§

fn width(&self) -> usize

Source§

fn render(&self) -> impl DoubleEndedIterator<Item = RenderChunk<'_>>

Source§

impl<A, B, C, D, E, F, G, H, I, J> Element for (A, B, C, D, E, F, G, H, I, J)
where A: Element, B: Element, C: Element, D: Element, E: Element, F: Element, G: Element, H: Element, I: Element, J: Element,

Source§

fn width(&self) -> usize

Source§

fn render(&self) -> impl DoubleEndedIterator<Item = RenderChunk<'_>>

Source§

impl<E: Element + ?Sized> Element for &E

Source§

fn width(&self) -> usize

Source§

fn render(&self) -> impl DoubleEndedIterator<Item = RenderChunk<'_>>

Source§

impl<E: Element> Element for Option<E>

Source§

fn width(&self) -> usize

Source§

fn render(&self) -> impl DoubleEndedIterator<Item = RenderChunk<'_>>

Source§

impl<E: Element> Element for [E]

Source§

fn width(&self) -> usize

Source§

fn render(&self) -> impl DoubleEndedIterator<Item = RenderChunk<'_>>

Source§

impl<E: Element, const N: usize> Element for [E; N]

Source§

fn width(&self) -> usize

Source§

fn render(&self) -> impl DoubleEndedIterator<Item = RenderChunk<'_>>

Implementors§