use serde::Serialize;
#[derive(Debug, Clone, Serialize)]
pub struct DatabaseFilter {
pub column: String,
pub operator: FilterOperator,
pub value: serde_json::Value,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize)] pub enum FilterOperator {
Eq,
Neq,
Gt,
Gte,
Lt,
Lte,
In,
}
impl std::fmt::Display for FilterOperator {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
let s = match self {
FilterOperator::Eq => "eq",
FilterOperator::Neq => "neq",
FilterOperator::Gt => "gt",
FilterOperator::Gte => "gte",
FilterOperator::Lt => "lt",
FilterOperator::Lte => "lte",
FilterOperator::In => "in",
};
write!(f, "{}", s)
}
}