Trait indicatif::TermLike

source ·
pub trait TermLike: Debug + Send + Sync {
    // Required methods
    fn width(&self) -> u16;
    fn move_cursor_up(&self, n: usize) -> Result<()>;
    fn move_cursor_down(&self, n: usize) -> Result<()>;
    fn move_cursor_right(&self, n: usize) -> Result<()>;
    fn move_cursor_left(&self, n: usize) -> Result<()>;
    fn write_line(&self, s: &str) -> Result<()>;
    fn write_str(&self, s: &str) -> Result<()>;
    fn clear_line(&self) -> Result<()>;
    fn flush(&self) -> Result<()>;
}
Expand description

A trait for minimal terminal-like behavior.

Anything that implements this trait can be used a draw target via ProgressDrawTarget::term_like.

Required Methods§

source

fn width(&self) -> u16

Return the terminal width

source

fn move_cursor_up(&self, n: usize) -> Result<()>

Move the cursor up by n lines

source

fn move_cursor_down(&self, n: usize) -> Result<()>

Move the cursor down by n lines

source

fn move_cursor_right(&self, n: usize) -> Result<()>

Move the cursor right by n lines

source

fn move_cursor_left(&self, n: usize) -> Result<()>

Move the cursor left by n lines

source

fn write_line(&self, s: &str) -> Result<()>

Write a string and add a newline.

source

fn write_str(&self, s: &str) -> Result<()>

Write a string

source

fn clear_line(&self) -> Result<()>

Clear the current line and reset the cursor to beginning of the line

source

fn flush(&self) -> Result<()>

Implementations on Foreign Types§

source§

impl TermLike for Term

Implementors§