diff options
author | Jesse Luehrs <doy@tozt.net> | 2021-12-14 03:49:13 -0500 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2021-12-14 04:05:54 -0500 |
commit | 2083eae2c5b480ccad672fb2fbb1b2bb5774a606 (patch) | |
tree | 9db649b8f73a35d23839f1e189d7e1599306193a /src/term.rs | |
parent | 160942c40cbeb7503147c0895217644161fcc84b (diff) | |
download | vt100-rust-2083eae2c5b480ccad672fb2fbb1b2bb5774a606.tar.gz vt100-rust-2083eae2c5b480ccad672fb2fbb1b2bb5774a606.zip |
replace all uses of unwrap(), expect(), and indexing with unreachable!()
and also document why they are unreachable
Diffstat (limited to 'src/term.rs')
-rw-r--r-- | src/term.rs | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/term.rs b/src/term.rs index 4719d41..b6a0576 100644 --- a/src/term.rs +++ b/src/term.rs @@ -86,9 +86,13 @@ impl BufWrite for MoveTo { buf.extend_from_slice(b"\x1b[H"); } else { buf.extend_from_slice(b"\x1b["); - itoa::write(&mut *buf, self.row + 1).unwrap(); + itoa::write(&mut *buf, self.row + 1) + // write to a vec can never fail + .unwrap_or_else(|_| unreachable!()); buf.push(b';'); - itoa::write(&mut *buf, self.col + 1).unwrap(); + itoa::write(&mut *buf, self.col + 1) + // write to a vec can never fail + .unwrap_or_else(|_| unreachable!()); buf.push(b'H'); } } @@ -288,7 +292,8 @@ impl BufWrite for MoveRight { 1 => buf.extend_from_slice(b"\x1b[C"), n => { buf.extend_from_slice(b"\x1b["); - itoa::write(&mut *buf, n).unwrap(); + // write to a vec can never fail + itoa::write(&mut *buf, n).unwrap_or_else(|_| unreachable!()); buf.push(b'C'); } } @@ -320,7 +325,8 @@ impl BufWrite for EraseChar { 1 => buf.extend_from_slice(b"\x1b[X"), n => { buf.extend_from_slice(b"\x1b["); - itoa::write(&mut *buf, n).unwrap(); + // write to a vec can never fail + itoa::write(&mut *buf, n).unwrap_or_else(|_| unreachable!()); buf.push(b'X'); } } |