diff options
author | Jesse Luehrs <doy@tozt.net> | 2019-11-11 05:00:49 -0500 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2019-11-11 05:00:49 -0500 |
commit | c61c85a7985358d726cc0ba0649ce9b269b62d5c (patch) | |
tree | e26d6e4964e2845fbadc7381ecf4a1f5d2e18ce7 /src/grid.rs | |
parent | 805f9348bfdbfea6cc48e2f03946ec84de4a3c53 (diff) | |
download | vt100-rust-c61c85a7985358d726cc0ba0649ce9b269b62d5c.tar.gz vt100-rust-c61c85a7985358d726cc0ba0649ce9b269b62d5c.zip |
stop using formats at all
they are too slow
Diffstat (limited to 'src/grid.rs')
-rw-r--r-- | src/grid.rs | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/src/grid.rs b/src/grid.rs index 2d515ac..242a152 100644 --- a/src/grid.rs +++ b/src/grid.rs @@ -1,6 +1,5 @@ +use crate::term::BufWrite as _; use std::convert::TryInto as _; -use std::fmt::Write as _; -use std::io::Write as _; #[derive(Clone, Debug)] pub struct Grid { @@ -170,7 +169,7 @@ impl Grid { for row in self.visible_rows() { row.write_contents(contents, 0, self.size.cols); if !row.wrapped() { - writeln!(contents).unwrap(); + contents.push_str("\n"); } } @@ -183,13 +182,8 @@ impl Grid { &self, contents: &mut Vec<u8>, ) -> crate::attrs::Attrs { - write!( - contents, - "{}{}", - crate::term::ClearAttrs::default(), - crate::term::ClearScreen::default() - ) - .unwrap(); + crate::term::ClearAttrs::default().write_buf(contents); + crate::term::ClearScreen::default().write_buf(contents); let mut prev_attrs = crate::attrs::Attrs::default(); let mut prev_pos = Pos::default(); @@ -211,8 +205,7 @@ impl Grid { } if prev_pos != self.pos { - write!(contents, "{}", crate::term::MoveTo::new(self.pos)) - .unwrap(); + crate::term::MoveTo::new(self.pos).write_buf(contents); } prev_attrs @@ -246,8 +239,7 @@ impl Grid { } if prev_pos != self.pos { - write!(contents, "{}", crate::term::MoveTo::new(self.pos)) - .unwrap(); + crate::term::MoveTo::new(self.pos).write_buf(contents); } prev_attrs |