rest-sql 0.1.0

RSQL/FIQL filter parser and validator for REST APIs — parse, validate, compile to native DB queries
Documentation
/// Raw AST — unvalidated, produced directly by the parser.
#[derive(Debug, Clone, PartialEq)]
pub enum Ast {
    And(Vec<Ast>),
    Or(Vec<Ast>),
    Constraint(Constraint),
}

#[derive(Debug, Clone, PartialEq)]
pub struct Constraint {
    pub field: String,
    pub operator: Operator,
    pub value: Value,
}

#[derive(Debug, Clone, PartialEq)]
pub enum Operator {
    Eq,
    Neq,
    Lt,
    Lte,
    Gt,
    Gte,
    In,
    Out,
    Like,
    Ilike,
    Between,
    Null,
    NotNull,
}

#[derive(Debug, Clone, PartialEq)]
pub enum Value {
    Null,
    Bool(bool),
    Int(i64),
    Float(f64),
    String(String),
    Date(String),
    DateTime(String),
    List(Vec<Value>),
}