vortex_array/compute/
mod.rs

1//! Compute kernels on top of Vortex Arrays.
2//!
3//! We aim to provide a basic set of compute kernels that can be used to efficiently index, slice,
4//! and filter Vortex Arrays in their encoded forms.
5//!
6//! Every array encoding has the ability to implement their own efficient implementations of these
7//! operators, else we will decode, and perform the equivalent operator from Arrow.
8
9pub use between::{BetweenFn, BetweenOptions, StrictComparison, between};
10pub use binary_numeric::{
11    BinaryNumericFn, add, add_scalar, binary_numeric, div, div_scalar, mul, mul_scalar, sub,
12    sub_scalar,
13};
14pub use boolean::{
15    BinaryBooleanFn, BinaryOperator, and, and_kleene, binary_boolean, or, or_kleene,
16};
17pub use cast::{CastFn, try_cast};
18pub use compare::{CompareFn, Operator, compare, compare_lengths_to_empty, scalar_cmp};
19pub use fill_forward::{FillForwardFn, fill_forward};
20pub use fill_null::{FillNullFn, fill_null};
21pub use filter::{FilterFn, filter};
22pub use invert::{InvertFn, invert};
23pub use is_constant::*;
24pub use like::{LikeFn, LikeOptions, like};
25pub use mask::{MaskFn, mask};
26pub use min_max::{MinMaxFn, MinMaxResult, min_max};
27pub use scalar_at::{ScalarAtFn, scalar_at};
28pub use search_sorted::*;
29pub use slice::{SliceFn, slice};
30pub use sum::*;
31pub use take::{TakeFn, take, take_into};
32pub use take_from::TakeFromFn;
33pub use to_arrow::*;
34pub use uncompressed_size::*;
35
36mod between;
37mod binary_numeric;
38mod boolean;
39mod cast;
40mod compare;
41mod fill_forward;
42mod fill_null;
43mod filter;
44mod invert;
45mod is_constant;
46mod like;
47mod mask;
48mod min_max;
49mod scalar_at;
50mod search_sorted;
51mod slice;
52mod sum;
53mod take;
54mod take_from;
55mod to_arrow;
56mod uncompressed_size;
57
58#[cfg(feature = "test-harness")]
59pub mod test_harness {
60    pub use crate::compute::binary_numeric::test_harness::test_binary_numeric;
61    pub use crate::compute::mask::test_harness::test_mask;
62}