Skip to main content

Module cmp

Module cmp 

Source
Expand description

Comparison kernels for Arrays.

These kernels can leverage SIMD if available on your system. Currently no runtime detection is provided, you should enable the specific SIMD intrinsics using RUSTFLAGS="-C target-feature=+avx2" for example. See the documentation here for more information.

StructsΒ§

ReeInfo πŸ”’
Run-end encoding metadata for one side of a comparison. Holds a reference to the original REE array for deferred typed access to run_ends.
SideInfo πŸ”’
Per-side metadata for a comparison operand.

EnumsΒ§

Op πŸ”’

TraitsΒ§

ArrayOrd πŸ”’

FunctionsΒ§

apply πŸ”’
Perform a potentially vectored op on the provided ArrayOrd
apply_op πŸ”’
Applies op to possibly scalar ArrayOrd
apply_op_ree_segments πŸ”’
Compare two REE arrays by walking both run_ends simultaneously, comparing once per aligned segment and bulk-filling the result.
apply_op_vectored πŸ”’
Applies op to possibly scalar ArrayOrd with the given indices
apply_ree πŸ”’
Dispatch op for a REE-vs-REE comparison (no dictionary on either side) using segment-based bulk comparison.
collect_bool πŸ”’
Invokes f with values 0..len collecting the boolean results into a new BooleanBuffer
compare_byte_view
Compares two [GenericByteViewArray] at index left_idx and right_idx
compare_op πŸ”’
Perform op on the provided Datum
distinct
Perform left IS DISTINCT FROM right operation on two [Datum]
eq
Perform left == right operation on two [Datum].
expand_from_runs πŸ”’
Expand a physical-length BooleanBuffer to logical length by bulk-appending each run’s result. Zero allocation β€” downcasts internally to access typed run_ends directly.
gt
Perform left > right operation on two [Datum].
gt_eq
Perform left >= right operation on two [Datum].
logical_indices πŸ”’
Build a logical→physical index vector for one side of a non-scalar comparison.
lt
Perform left < right operation on two [Datum].
lt_eq
Perform left <= right operation on two [Datum].
neq
Perform left != right operation on two [Datum].
not_distinct
Perform left IS NOT DISTINCT FROM right operation on two [Datum]
ree_info_opt πŸ”’
If array is RunEndEncoded, return its physical values array and run metadata.
ree_physical_indices πŸ”’
scalar_index πŸ”’
supports_distinct πŸ”’
Returns true if distinct (via compare_op) can handle this data type.
take_bits πŸ”’