use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct Condition {
#[serde(rename = "operator")]
pub operator: OperatorTrue,
#[serde(rename = "param")]
pub param: String,
#[serde(rename = "value")]
pub value: String,
}
impl Condition {
pub fn new(operator: OperatorTrue, param: String, value: String) -> Condition {
Condition {
operator,
param,
value,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum OperatorTrue {
#[serde(rename = "eq")]
Eq,
#[serde(rename = "neq")]
Neq,
#[serde(rename = "gt")]
Gt,
#[serde(rename = "gte")]
Gte,
#[serde(rename = "lt")]
Lt,
#[serde(rename = "lte")]
Lte,
}
impl Default for OperatorTrue {
fn default() -> OperatorTrue {
Self::Eq
}
}