use serde::{Deserialize, Serialize};
use crate::{impl_default, impl_display};
#[derive(Clone, Copy, Debug, Eq, PartialEq, Deserialize, Serialize)]
#[serde(rename_all = "snake_case")]
pub enum Operation {
Add,
Remove,
}
impl Operation {
pub const ADD: &str = "add";
pub const REMOVE: &str = "remove";
pub const fn new() -> Self {
Self::Add
}
pub const fn as_str(&self) -> &'static str {
match self {
Self::Add => Self::ADD,
Self::Remove => Self::REMOVE,
}
}
}
impl_default!(Operation);
impl_display!(Operation: str);