Struct termion::raw::RawTerminal

source ·
pub struct RawTerminal<W: Write + AsFd> { /* private fields */ }
Expand description

A terminal restorer, which keeps the previous state of the terminal, and restores it, when dropped.

Restoring will entirely bring back the old TTY state.

Implementations§

source§

impl<W: Write + AsFd> RawTerminal<W>

source

pub fn suspend_raw_mode(&self) -> Result<()>

Temporarily switch to original mode

source

pub fn activate_raw_mode(&self) -> Result<()>

Temporarily switch to raw mode

Trait Implementations§

source§

impl<W: Write + AsFd> AsFd for RawTerminal<W>

source§

fn as_fd(&self) -> BorrowedFd<'_>

Borrows the file descriptor. Read more
source§

impl<W: Write + AsFd> Deref for RawTerminal<W>

§

type Target = W

The resulting type after dereferencing.
source§

fn deref(&self) -> &W

Dereferences the value.
source§

impl<W: Write + AsFd> DerefMut for RawTerminal<W>

source§

fn deref_mut(&mut self) -> &mut W

Mutably dereferences the value.
source§

impl<W: Write + AsFd> Drop for RawTerminal<W>

source§

fn drop(&mut self)

Executes the destructor for this type. Read more
source§

impl<W: Write + AsFd> Write for RawTerminal<W>

source§

fn write(&mut self, buf: &[u8]) -> Result<usize>

Write a buffer into this writer, returning how many bytes were written. Read more
source§

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

Flush this output stream, ensuring that all intermediately buffered contents reach their destination. Read more
1.36.0 · source§

fn write_vectored(&mut self, bufs: &[IoSlice<'_>]) -> Result<usize, Error>

Like write, except that it writes from a slice of buffers. Read more
source§

fn is_write_vectored(&self) -> bool

🔬This is a nightly-only experimental API. (can_vector)
Determines if this Writer has an efficient write_vectored implementation. Read more
1.0.0 · source§

fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>

Attempts to write an entire buffer into this writer. Read more
source§

fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>

🔬This is a nightly-only experimental API. (write_all_vectored)
Attempts to write multiple buffers into this writer. Read more
1.0.0 · source§

fn write_fmt(&mut self, fmt: Arguments<'_>) -> Result<(), Error>

Writes a formatted string into this writer, returning any error encountered. Read more
1.0.0 · source§

fn by_ref(&mut self) -> &mut Self
where Self: Sized,

Creates a “by reference” adapter for this instance of Write. Read more

Auto Trait Implementations§

§

impl<W> Freeze for RawTerminal<W>
where W: Freeze,

§

impl<W> RefUnwindSafe for RawTerminal<W>
where W: RefUnwindSafe,

§

impl<W> Send for RawTerminal<W>
where W: Send,

§

impl<W> Sync for RawTerminal<W>
where W: Sync,

§

impl<W> Unpin for RawTerminal<W>
where W: Unpin,

§

impl<W> UnwindSafe for RawTerminal<W>
where W: UnwindSafe,

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<W> DetectColors for W
where W: Write,

source§

fn available_colors(&mut self) -> Result<u16, Error>

How many ANSI colors are supported (from 8 to 256)? Read more
source§

impl<W> DetectCursorPos for W
where W: Write,

source§

fn cursor_pos(&mut self) -> Result<(u16, u16), Error>

Get the (1,1)-based cursor position from the terminal.
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<W> IntoAlternateScreen for W
where W: Write,

source§

fn into_alternate_screen(self) -> Result<AlternateScreen<Self>>

Switch the terminal controlled by this writer to use the alternate screen. The terminal will be restored to the main screen when the AlternateScreen returned by this function is dropped.
source§

impl<W> IntoRawMode for W
where W: Write + AsFd,

source§

fn into_raw_mode(self) -> Result<RawTerminal<W>, Error>

Switch to raw mode. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

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>,

§

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.