vortex_proto/generated/
vortex.expr.rs

1// This file is @generated by prost-build.
2/// Captures a generic representation of expressions in Vortex.
3/// Expression deserializers can be registered with a Vortex session to handle parsing this into
4/// an in-memory expression for execution.
5#[derive(Clone, PartialEq, ::prost::Message)]
6pub struct Expr {
7    #[prost(string, tag = "1")]
8    pub id: ::prost::alloc::string::String,
9    #[prost(message, repeated, tag = "2")]
10    pub children: ::prost::alloc::vec::Vec<Expr>,
11    #[prost(bytes = "vec", optional, tag = "3")]
12    pub metadata: ::core::option::Option<::prost::alloc::vec::Vec<u8>>,
13}
14/// Options for `vortex.literal`
15#[derive(Clone, PartialEq, ::prost::Message)]
16pub struct LiteralOpts {
17    #[prost(message, optional, tag = "1")]
18    pub value: ::core::option::Option<super::scalar::Scalar>,
19}
20/// Options for `vortex.pack`
21#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
22pub struct PackOpts {
23    #[prost(string, repeated, tag = "1")]
24    pub paths: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
25    #[prost(bool, tag = "2")]
26    pub nullable: bool,
27}
28/// Options for `vortex.getitem`
29#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
30pub struct GetItemOpts {
31    #[prost(string, tag = "1")]
32    pub path: ::prost::alloc::string::String,
33}
34/// Options for `vortex.binary`
35#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
36pub struct BinaryOpts {
37    #[prost(enumeration = "binary_opts::BinaryOp", tag = "1")]
38    pub op: i32,
39}
40/// Nested message and enum types in `BinaryOpts`.
41pub mod binary_opts {
42    #[derive(
43        Clone,
44        Copy,
45        Debug,
46        PartialEq,
47        Eq,
48        Hash,
49        PartialOrd,
50        Ord,
51        ::prost::Enumeration
52    )]
53    #[repr(i32)]
54    pub enum BinaryOp {
55        Eq = 0,
56        NotEq = 1,
57        Gt = 2,
58        Gte = 3,
59        Lt = 4,
60        Lte = 5,
61        And = 6,
62        Or = 7,
63        Add = 8,
64        Sub = 9,
65        Mul = 10,
66        Div = 11,
67    }
68    impl BinaryOp {
69        /// String value of the enum field names used in the ProtoBuf definition.
70        ///
71        /// The values are not transformed in any way and thus are considered stable
72        /// (if the ProtoBuf definition does not change) and safe for programmatic use.
73        pub fn as_str_name(&self) -> &'static str {
74            match self {
75                Self::Eq => "Eq",
76                Self::NotEq => "NotEq",
77                Self::Gt => "Gt",
78                Self::Gte => "Gte",
79                Self::Lt => "Lt",
80                Self::Lte => "Lte",
81                Self::And => "And",
82                Self::Or => "Or",
83                Self::Add => "Add",
84                Self::Sub => "Sub",
85                Self::Mul => "Mul",
86                Self::Div => "Div",
87            }
88        }
89        /// Creates an enum from field names used in the ProtoBuf definition.
90        pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
91            match value {
92                "Eq" => Some(Self::Eq),
93                "NotEq" => Some(Self::NotEq),
94                "Gt" => Some(Self::Gt),
95                "Gte" => Some(Self::Gte),
96                "Lt" => Some(Self::Lt),
97                "Lte" => Some(Self::Lte),
98                "And" => Some(Self::And),
99                "Or" => Some(Self::Or),
100                "Add" => Some(Self::Add),
101                "Sub" => Some(Self::Sub),
102                "Mul" => Some(Self::Mul),
103                "Div" => Some(Self::Div),
104                _ => None,
105            }
106        }
107    }
108}
109#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
110pub struct BetweenOpts {
111    #[prost(bool, tag = "1")]
112    pub lower_strict: bool,
113    #[prost(bool, tag = "2")]
114    pub upper_strict: bool,
115}
116#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
117pub struct LikeOpts {
118    #[prost(bool, tag = "1")]
119    pub negated: bool,
120    #[prost(bool, tag = "2")]
121    pub case_insensitive: bool,
122}
123#[derive(Clone, PartialEq, ::prost::Message)]
124pub struct CastOpts {
125    #[prost(message, optional, tag = "1")]
126    pub target: ::core::option::Option<super::dtype::DType>,
127}
128#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
129pub struct FieldNames {
130    #[prost(string, repeated, tag = "1")]
131    pub names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
132}
133#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
134pub struct SelectOpts {
135    #[prost(oneof = "select_opts::Opts", tags = "1, 2")]
136    pub opts: ::core::option::Option<select_opts::Opts>,
137}
138/// Nested message and enum types in `SelectOpts`.
139pub mod select_opts {
140    #[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)]
141    pub enum Opts {
142        #[prost(message, tag = "1")]
143        Include(super::FieldNames),
144        #[prost(message, tag = "2")]
145        Exclude(super::FieldNames),
146    }
147}