#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Disjunction {
#[prost(message, repeated, tag = "1")]
pub conjunctions: ::prost::alloc::vec::Vec<Conjunction>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Conjunction {
#[prost(message, repeated, tag = "1")]
pub predicates: ::prost::alloc::vec::Vec<Predicate>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Predicate {
#[prost(message, optional, tag = "1")]
pub lhs: ::core::option::Option<super::dtype::FieldPath>,
#[prost(enumeration = "Operator", tag = "2")]
pub op: i32,
#[prost(oneof = "predicate::Rhs", tags = "3, 4")]
pub rhs: ::core::option::Option<predicate::Rhs>,
}
pub mod predicate {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Rhs {
#[prost(message, tag = "3")]
Field(super::super::dtype::FieldPath),
#[prost(message, tag = "4")]
Scalar(super::super::scalar::Scalar),
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Operator {
Unknown = 0,
Eq = 1,
Neq = 2,
Lt = 3,
Lte = 4,
Gt = 5,
Gte = 6,
}
impl Operator {
pub fn as_str_name(&self) -> &'static str {
match self {
Operator::Unknown => "UNKNOWN",
Operator::Eq => "EQ",
Operator::Neq => "NEQ",
Operator::Lt => "LT",
Operator::Lte => "LTE",
Operator::Gt => "GT",
Operator::Gte => "GTE",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"UNKNOWN" => Some(Self::Unknown),
"EQ" => Some(Self::Eq),
"NEQ" => Some(Self::Neq),
"LT" => Some(Self::Lt),
"LTE" => Some(Self::Lte),
"GT" => Some(Self::Gt),
"GTE" => Some(Self::Gte),
_ => None,
}
}
}