tmux_interface/options/common/
switch.rs1use super::constants::*;
2use crate::Error;
3use std::fmt;
4use std::str::FromStr;
5
6#[derive(PartialEq, Clone, Debug)]
7pub enum Switch {
8 On,
9 Off,
10}
11
12impl fmt::Display for Switch {
13 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
14 match self {
15 Self::On => write!(f, "{}", ON),
16 Self::Off => write!(f, "{}", OFF),
17 }
18 }
19}
20
21impl FromStr for Switch {
22 type Err = Error;
23
24 fn from_str(s: &str) -> Result<Self, Error> {
25 match s {
26 ON => Ok(Self::On),
27 OFF => Ok(Self::Off),
28 _ => Err(Error::ParseSwitch),
29 }
30 }
31}