fn clean_up_terminal(&mut self) -> crossterm::Result<()> {
        self.out.queue(SetAttribute(Attribute::Reset))?;
        self.out
            .queue(SetColors(Colors::new(Color::Reset, Color::Reset)))?;
        self.out.queue(cursor::Show)?;
        crossterm::terminal::disable_raw_mode()?;
        self.terminal_state_dirty = false;
        Ok(())
    }
/// Reset terminal state, as before exiting.
/// This will be run on drop but errors will not be reported in that case.
Reset terminal state, as before exiting.
This will be run on drop but errors will not be reported in that case.
Reset terminal state as before exiting . This will be run on drop but errors will not be reported in that case .
fn clean_up_terminal(&mut self) -> crossterm::Result<()> {
        self.out.queue(SetAttribute(Attribute::Reset))?;
        self.out
            .queue(SetColors(Colors::new(Color::Reset, Color::Reset)))?;
        self.out.queue(cursor::Show)?;
        crossterm::terminal::disable_raw_mode()?;
        self.terminal_state_dirty = false;
        Ok(())
    }
fn clean_up_terminal ( & mut self ) -> crossterm :: Result < ( ) > { self . out . queue ( SetAttribute ( Attribute :: Reset ) ) ? ; self . out . queue ( SetColors ( Colors :: new ( Color :: Reset , Color :: Reset ) ) ) ? ; self . out . queue ( cursor :: Show ) ? ; crossterm :: terminal :: disable_raw_mode ( ) ? ; self . terminal_state_dirty = false ; Ok ( ( ) ) }
Reset terminal state, as before exiting.
Reset terminal state as before exiting .
&mut self