use enum_map::Enum;
use std::ops::Deref;
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, Enum)]
pub enum BorderStyle {
Simple,
Outset,
None,
}
impl BorderStyle {
pub fn all() -> impl Iterator<Item = Self> {
(0..Self::LENGTH).map(Self::from_usize)
}
}
impl<S: Deref<Target = String>> From<S> for BorderStyle {
fn from(s: S) -> Self {
if &*s == "simple" {
BorderStyle::Simple
} else if &*s == "outset" {
BorderStyle::Outset
} else {
BorderStyle::None
}
}
}