aboutsummaryrefslogtreecommitdiffstats
path: root/src/key.rs
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2021-12-14 16:46:19 -0500
committerJesse Luehrs <doy@tozt.net>2021-12-14 16:46:19 -0500
commitbead64f9498f2787fb1d5aa247d79536f2424528 (patch)
tree6827737a841cc7e3c582e9b69e5b1dbe5fc91fa5 /src/key.rs
parent89206651ffb9815aca7f2b010722fe673a25b2ac (diff)
downloadtextmode-bead64f9498f2787fb1d5aa247d79536f2424528.tar.gz
textmode-bead64f9498f2787fb1d5aa247d79536f2424528.zip
clippy
Diffstat (limited to 'src/key.rs')
-rw-r--r--src/key.rs48
1 files changed, 24 insertions, 24 deletions
diff --git a/src/key.rs b/src/key.rs
index 505817f..15c0303 100644
--- a/src/key.rs
+++ b/src/key.rs
@@ -32,32 +32,32 @@ pub enum Key {
impl Key {
/// Returns bytes generated by the given key press.
+ #[must_use]
pub fn into_bytes(self) -> Vec<u8> {
- use Key::*;
match self {
- String(s) => s.into_bytes(),
- Char(c) => c.to_string().into_bytes(),
- Bytes(s) => s,
- Byte(c) => vec![c],
- Ctrl(c) => vec![c - b'a' + 1],
- Meta(c) => vec![b'\x1b', c],
- Backspace => b"\x7f".to_vec(),
- Escape => b"\x1b".to_vec(),
- Up => b"\x1b[A".to_vec(),
- Down => b"\x1b[B".to_vec(),
- Right => b"\x1b[C".to_vec(),
- Left => b"\x1b[D".to_vec(),
- KeypadUp => b"\x1bOA".to_vec(),
- KeypadDown => b"\x1bOB".to_vec(),
- KeypadRight => b"\x1bOC".to_vec(),
- KeypadLeft => b"\x1bOD".to_vec(),
- Home => b"\x1b[H".to_vec(),
- End => b"\x1b[F".to_vec(),
- Insert => b"\x1b[2~".to_vec(),
- Delete => b"\x1b[3~".to_vec(),
- PageUp => b"\x1b[5~".to_vec(),
- PageDown => b"\x1b[6~".to_vec(),
- F(c) => match c {
+ Key::String(s) => s.into_bytes(),
+ Key::Char(c) => c.to_string().into_bytes(),
+ Key::Bytes(s) => s,
+ Key::Byte(c) => vec![c],
+ Key::Ctrl(c) => vec![c - b'a' + 1],
+ Key::Meta(c) => vec![b'\x1b', c],
+ Key::Backspace => b"\x7f".to_vec(),
+ Key::Escape => b"\x1b".to_vec(),
+ Key::Up => b"\x1b[A".to_vec(),
+ Key::Down => b"\x1b[B".to_vec(),
+ Key::Right => b"\x1b[C".to_vec(),
+ Key::Left => b"\x1b[D".to_vec(),
+ Key::KeypadUp => b"\x1bOA".to_vec(),
+ Key::KeypadDown => b"\x1bOB".to_vec(),
+ Key::KeypadRight => b"\x1bOC".to_vec(),
+ Key::KeypadLeft => b"\x1bOD".to_vec(),
+ Key::Home => b"\x1b[H".to_vec(),
+ Key::End => b"\x1b[F".to_vec(),
+ Key::Insert => b"\x1b[2~".to_vec(),
+ Key::Delete => b"\x1b[3~".to_vec(),
+ Key::PageUp => b"\x1b[5~".to_vec(),
+ Key::PageDown => b"\x1b[6~".to_vec(),
+ Key::F(c) => match c {
1 => b"\x1bOP".to_vec(),
2 => b"\x1bOQ".to_vec(),
3 => b"\x1bOR".to_vec(),