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