term_detect/
structs.rs

1use std::ffi::OsStr;
2
3/// Simple wrapper around a String
4#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord)]
5pub struct Terminal(pub String);
6
7impl Default for Terminal {
8    fn default() -> Self {
9        Terminal("xterm".to_owned())
10    }
11}
12
13impl From<String> for Terminal {
14    fn from(value: String) -> Self {
15        Self(value)
16    }
17}
18
19impl From<&str> for Terminal {
20    fn from(value: &str) -> Self {
21        Self(value.to_owned())
22    }
23}
24
25impl AsRef<OsStr> for Terminal {
26    fn as_ref(&self) -> &OsStr {
27        OsStr::new(&self.0)
28    }
29}