#[cfg(feature = "serde")]
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
#[non_exhaustive]
pub enum CompOp {
Equal,
NotEqual,
GreaterThan,
LessThan,
GreaterEqual,
LessEqual,
}
impl CompOp {
pub fn as_str(&self) -> &'static str {
match self {
Self::Equal => "=",
Self::NotEqual => "!=",
Self::GreaterThan => ">",
Self::LessThan => "<",
Self::GreaterEqual => ">=",
Self::LessEqual => "<=",
}
}
}
impl std::fmt::Display for CompOp {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
f.write_str(self.as_str())
}
}