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    }
66    impl BinaryOp {
67        /// String value of the enum field names used in the ProtoBuf definition.
68        ///
69        /// The values are not transformed in any way and thus are considered stable
70        /// (if the ProtoBuf definition does not change) and safe for programmatic use.
71        pub fn as_str_name(&self) -> &'static str {
72            match self {
73                Self::Eq => "Eq",
74                Self::NotEq => "NotEq",
75                Self::Gt => "Gt",
76                Self::Gte => "Gte",
77                Self::Lt => "Lt",
78                Self::Lte => "Lte",
79                Self::And => "And",
80                Self::Or => "Or",
81                Self::Add => "Add",
82                Self::Sub => "Sub",
83            }
84        }
85        /// Creates an enum from field names used in the ProtoBuf definition.
86        pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
87            match value {
88                "Eq" => Some(Self::Eq),
89                "NotEq" => Some(Self::NotEq),
90                "Gt" => Some(Self::Gt),
91                "Gte" => Some(Self::Gte),
92                "Lt" => Some(Self::Lt),
93                "Lte" => Some(Self::Lte),
94                "And" => Some(Self::And),
95                "Or" => Some(Self::Or),
96                "Add" => Some(Self::Add),
97                "Sub" => Some(Self::Sub),
98                _ => None,
99            }
100        }
101    }
102}
103#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
104pub struct BetweenOpts {
105    #[prost(bool, tag = "1")]
106    pub lower_strict: bool,
107    #[prost(bool, tag = "2")]
108    pub upper_strict: bool,
109}
110#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
111pub struct LikeOpts {
112    #[prost(bool, tag = "1")]
113    pub negated: bool,
114    #[prost(bool, tag = "2")]
115    pub case_insensitive: bool,
116}
117#[derive(Clone, PartialEq, ::prost::Message)]
118pub struct CastOpts {
119    #[prost(message, optional, tag = "1")]
120    pub target: ::core::option::Option<super::dtype::DType>,
121}
122#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
123pub struct FieldNames {
124    #[prost(string, repeated, tag = "1")]
125    pub names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
126}
127#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
128pub struct SelectOpts {
129    #[prost(oneof = "select_opts::Opts", tags = "1, 2")]
130    pub opts: ::core::option::Option<select_opts::Opts>,
131}
132/// Nested message and enum types in `SelectOpts`.
133pub mod select_opts {
134    #[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)]
135    pub enum Opts {
136        #[prost(message, tag = "1")]
137        Include(super::FieldNames),
138        #[prost(message, tag = "2")]
139        Exclude(super::FieldNames),
140    }
141}