19 lines
499 B
Rust

use std::sync::Arc;
use serde::{Deserialize, Serialize};
#[derive(Deserialize, Serialize)]
#[serde(tag = "type")]
pub enum Validation {
#[serde(rename = "ValidateNotNullOrEmpty")]
NotNullOrEmpty,
#[serde(rename = "ValidateRange")]
Range { min: i32, max: i32 },
#[serde(rename = "ValidateScript")]
Script { value: Arc<str> },
#[serde(rename = "ValidatePattern")]
Pattern { value: Arc<str> },
#[serde(rename = "ValidateSet")]
Set { values: Vec<Arc<str>> },
}