diff --git a/docs/quickstart.html b/docs/quickstart.html index 42e1bc4070..164b541f8e 100644 --- a/docs/quickstart.html +++ b/docs/quickstart.html @@ -444,9 +444,9 @@
Use compress()
to compress the Vortex array and check the relative size:
>>> cvtx = vortex.compress(vtx)
>>> cvtx.nbytes
-16835
+16756
>>> cvtx.nbytes / vtx.nbytes
-0.119...
+0.118...
Vortex uses nearly ten times fewer bytes than Arrow. Fewer bytes means more of your data fits in
diff --git a/docs/rust/.rustc_info.json b/docs/rust/.rustc_info.json
index 30d68b489a..3e8562d9f5 100644
--- a/docs/rust/.rustc_info.json
+++ b/docs/rust/.rustc_info.json
@@ -1 +1 @@
-{"rustc_fingerprint":5366816641448209794,"outputs":{"16992575326180275217":{"success":true,"status":"","code":0,"stdout":"rustc 1.83.0-nightly (d6c8169c1 2024-09-03)\nbinary: rustc\ncommit-hash: d6c8169c186ab16a3404cd0d0866674018e8a19e\ncommit-date: 2024-09-03\nhost: x86_64-unknown-linux-gnu\nrelease: 1.83.0-nightly\nLLVM version: 19.1.0\n","stderr":""},"16328442174039370641":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.so\nlib___.so\nlib___.a\nlib___.so\n/home/runner/.rustup/toolchains/nightly-2024-09-04-x86_64-unknown-linux-gnu\noff\npacked\nunpacked\n___\ndebug_assertions\nfmt_debug=\"full\"\noverflow_checks\npanic=\"unwind\"\nproc_macro\nrelocation_model=\"pic\"\ntarget_abi=\"\"\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"gnu\"\ntarget_family=\"unix\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_has_atomic\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_has_atomic_equal_alignment=\"16\"\ntarget_has_atomic_equal_alignment=\"32\"\ntarget_has_atomic_equal_alignment=\"64\"\ntarget_has_atomic_equal_alignment=\"8\"\ntarget_has_atomic_equal_alignment=\"ptr\"\ntarget_has_atomic_load_store\ntarget_has_atomic_load_store=\"16\"\ntarget_has_atomic_load_store=\"32\"\ntarget_has_atomic_load_store=\"64\"\ntarget_has_atomic_load_store=\"8\"\ntarget_has_atomic_load_store=\"ptr\"\ntarget_os=\"linux\"\ntarget_pointer_width=\"64\"\ntarget_thread_local\ntarget_vendor=\"unknown\"\nub_checks\nunix\n","stderr":""}},"successes":{}}
\ No newline at end of file
+{"rustc_fingerprint":16115307561098489730,"outputs":{"16328442174039370641":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.so\nlib___.so\nlib___.a\nlib___.so\n/home/runner/.rustup/toolchains/nightly-2024-09-04-x86_64-unknown-linux-gnu\noff\npacked\nunpacked\n___\ndebug_assertions\nfmt_debug=\"full\"\noverflow_checks\npanic=\"unwind\"\nproc_macro\nrelocation_model=\"pic\"\ntarget_abi=\"\"\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"gnu\"\ntarget_family=\"unix\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_has_atomic\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_has_atomic_equal_alignment=\"16\"\ntarget_has_atomic_equal_alignment=\"32\"\ntarget_has_atomic_equal_alignment=\"64\"\ntarget_has_atomic_equal_alignment=\"8\"\ntarget_has_atomic_equal_alignment=\"ptr\"\ntarget_has_atomic_load_store\ntarget_has_atomic_load_store=\"16\"\ntarget_has_atomic_load_store=\"32\"\ntarget_has_atomic_load_store=\"64\"\ntarget_has_atomic_load_store=\"8\"\ntarget_has_atomic_load_store=\"ptr\"\ntarget_os=\"linux\"\ntarget_pointer_width=\"64\"\ntarget_thread_local\ntarget_vendor=\"unknown\"\nub_checks\nunix\n","stderr":""},"16992575326180275217":{"success":true,"status":"","code":0,"stdout":"rustc 1.83.0-nightly (d6c8169c1 2024-09-03)\nbinary: rustc\ncommit-hash: d6c8169c186ab16a3404cd0d0866674018e8a19e\ncommit-date: 2024-09-03\nhost: x86_64-unknown-linux-gnu\nrelease: 1.83.0-nightly\nLLVM version: 19.1.0\n","stderr":""}},"successes":{}}
\ No newline at end of file
diff --git a/docs/rust/doc/search-index.js b/docs/rust/doc/search-index.js
index 1befe2b1ee..1698d98e7d 100644
--- a/docs/rust/doc/search-index.js
+++ b/docs/rust/doc/search-index.js
@@ -1,4 +1,4 @@
-var searchIndex = new Map(JSON.parse('[["pyvortex",{"t":"J","n":["TOKIO_RUNTIME"],"q":[[0,"pyvortex"]],"i":"`","f":"`","D":"`","p":[],"r":[],"b":[],"c":"OjAAAAAAAAA=","e":"OjAAAAEAAAAAAAEAEAAAAAAAAQA="}],["vortex",{"t":"FKFKKKPGFPKKKKKPKPPPKKKPCCNENNCNCMMNNNNNNNNNNNNNNNNNNNENCENNNNNNNNNNNCCNEENNEEMNNNCNNNNEEEEENNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNEQNNNNNNNMNNNMNNMNNNMMNMNNNMNNMNNMNNMNNMNNEENNNMNNNNNNCMNNNNMNNNNMNNCNNNNNNEEEEEENNNCCMNNNNNNCNMNNNNNNNNNNNMNNNNCCCNNNNNNEKMCCIIIIIPPIIIPPUFFFFFFFFFFFFFFFFFFTFFFFFFFFFFFFFFFFFFFFFNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFNNNNNNNNNNNNNNNNCHHFKKKNNNMMNHHNNNMNNNCHHKKFFFFFFNMNNNNNNNNNNNNNNNNNNNMNNNNNNMNNNNNNMNNNNNNNNNNNNNNNNNNHNMNNNNNNMNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKHHHMHMPPKGKKKPKKKGFPPPKPPKPKKFPPPPGPPPKGKKGKKPPKKFHHHMNNNNNNNNNNNNNNNNNOMNNNNNNNNNNNNNNNNNNNNNNHMNNNNNNNNNNNNNNNNHMNHMNHMNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNHMNNNNNMNHMNOHHNNHMNHHMNMNHNHMNHNNOHMNHMNNHMNNNNNNNNNNNNNNNNNNHNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNRKKFIKTRMNNNNNNNMNNNNNNNNNNMCNNCNNNNNNSSSSSSSSSSSSSSSSSSSSSSSSSFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKIKFKFFSFNNNMMNNNNNNNNNNNNMNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNKMQKPPPPPPPSPGKKFFPPPNHNNNNNNNMNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNCNNNNNNNNNMNNNNNNMNNNNNNNNNNNNNNNNNNNNMNMNNMHNNMNHNNNNNNNNNNNNNNNKFKFNNNNNMNNNNNNNNNNNNNNNNNNNNNFFNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPPPPKTGPPGGKNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMMNNMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKKKKKKKKKNNNNNNNNNNMNNNMNMKKMNNN","n":["ArrayChildrenIterator","ArrayDType","ArrayData","ArrayLen","ArrayMetadata","ArrayTrait","Bool","Canonical","Context","Extension","GetArrayMetadata","IntoArrayData","IntoArrayVariant","IntoCanonical","IntoCanonicalVTable","List","MetadataVTable","Null","Primitive","Struct","ToArrayData","TryDeserializeArrayMetadata","TrySerializeArrayMetadata","VarBinView","accessor","aliases","all_buffer_offsets","alp","apply_until_stop","arbitrary","array","array_metadata","arrow","as_any","as_any_arc","as_binary_array","as_bool_array","as_constant","as_extension_array","as_list_array","as_null_array","as_primitive_array","as_ref","","as_struct_array","as_utf8_array","borrow","","","","borrow_mut","","","","buffer","","builders","bytebool","child","children","clone","","","clone_into","","","clone_to_uninit","","","compress","compute","cumulative_nbuffers","datetime_dtype","datetime_parts","default","depth_first_traversal","dict","dtype","","","","empty","encoding","","","","encodings","error","expr","fastlanes","file","flatbuffers","fmt","","","","from","","","","","","","","","","","","","","","","","","","","","","","from_arrow","","","","","","","","from_iter","","","","","","","","","","","","","","","fsst","impl_encoding","index_cmp","inherit_statistics","","into","","","","into_array","","into_array_iterator","into_array_stream","into_arrow","","","into_bool","","","into_buffer","into_canonical","","","into_extension","","","into_iter","into_list","","","into_null","","","into_primitive","","","into_struct","","","into_varbinview","","","io","ipc","is_arrow","is_canonical","is_constant","is_empty","","","","is_encoding","is_valid","","iter","len","","","","","load_metadata","logical_validity","","lookup_encoding","map_until_stop_and_collect","metadata","","metadata_bytes","nbytes","","","","nchildren","new","next","proto","roaring","runend","runend_bool","sampling_compressor","scalar","search_sorted_by","statistics","","stats","stream","to_array","","","to_owned","","","to_string","tree","tree_display","try_deserialize_metadata","try_from","","","","","try_into","","","","try_new_owned","try_new_viewed","try_serialize_metadata","type_id","","","","validity","variants","visitor","vzip","","","","with_encoding","with_encodings","zigzag","ArrayAccessor","with_iterator","hash_map","hash_set","DefaultHashBuilder","Entry","HashMap","HashTable","IntoIter","Occupied","Vacant","Entry","HashSet","IntoIter","Occupied","Vacant","BinaryView","BoolArray","BoolEncoding","BoolMetadata","BooleanBuffer","Buffers","ChunkedArray","ChunkedEncoding","ChunkedMetadata","ConstantArray","ConstantEncoding","ConstantMetadata","ExtensionArray","ExtensionEncoding","ExtensionMetadata","Inlined","ListArray","ListEncoding","ListMetadata","MAX_INLINED_SIZE","NullArray","NullEncoding","NullMetadata","PrimitiveArray","PrimitiveEncoding","PrimitiveMetadata","Ref","SparseArray","SparseEncoding","SparseMetadata","StructArray","StructEncoding","StructMetadata","TemporalArray","VarBinArray","VarBinEncoding","VarBinMetadata","VarBinViewArray","VarBinViewEncoding","VarBinViewMetadata","Views","accept","","","","","","","","","","","apply_until_stop","","arbitrary","array_iterator","array_len","","array_stream","array_validity","","as_any","","","","","","","","","","","","","","","","","","","","","","as_any_arc","","","","","","","","","","","as_binary_array","","","","","as_bool_array","","","","as_extension_array","","","","as_inlined","as_list_array","","","","as_null_array","","","","as_primitive_array","","","","as_ref","","","","","","","","","","","as_struct_array","","","","as_u128","as_utf8_array","","","","","as_view","binary_boolean","","binary_boolean_fn","","","binary_views","bit_chunks","bitand","bitor","bitxor","boolean_buffer","borrow","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","borrow_mut","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","buffer","","","buffer_count","buffer_index","buffers","builder","bytes","bytes_at","","cast","","cast_fn","","","children","chunk","chunk_offsets","chunks","clone","","","","","","","","","","","","","","","","","","","","","","","","","","","clone_into","","","","","","","","","","","","","","","","","","","","","","","","","","","clone_to_uninit","","","","","","","","","","","","","","","","","","","","","","","","","","","collect_bool","compare","","","compare_fn","","","compute","compute_statistics","","","","","","","","","","","","","","","compute_varbin_statistics","count_set_bits","decode_batch","deserialize","","","","","","","","","","","dtype","","","","","","","","","","","elements","elements_at","encoding","","","","","","","","","","","eq","equivalent","","","ext_dtype","field","","","","fill_forward","","fill_forward_fn","","fill_null","","fill_null_fn","","fill_scalar","filter","","","","","","","filter_fn","","","","","","","first_offset","fmt","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","from","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","from_bytes","from_fields","from_indices","from_iter","","","","","","","","","","","","","","from_iter_bin","from_iter_nonnull","from_iter_nullable_bin","from_iter_nullable_str","from_iter_str","from_nullable_vec","from_vec","","get_as_cast","id","","","","","","","","","","","","indices","indices_offset","inherit_statistics","","","","","","","","","","","inner","into","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","into_array","","","","","","","","","","","into_arrow","into_bool","","","","","","","","","","","into_boolean_builder","into_buffer","","into_canonical","","","","","","","","","","","into_extension","","","","","","","","","","","into_inner","into_iter","","","into_list","","","","","","","","","","","into_maybe_null_slice","into_null","","","","","","","","","","","into_parts","into_primitive","","","","","","","","","","","into_struct","","","","","","","","","","","into_varbinview","","","","","","","","","","","invert","","","","invert_fn","","","","is_empty","","","","","","","","","","","","","is_inlined","is_set","is_valid","","","","","","","","","","","","","","","","","","","","","","","","iter","len","","","","","","","","","","","","","load_metadata","","","","","","","","","","","logical_validity","","","","","","","","","","","","","","","","","","","","","","map_until_stop_and_collect","","max_index","maybe_from","","","","","","","","","","","maybe_null_slice","min_index","nbytes","","","","","","","","","","","nchunks","new","","","","","","","","new_date","new_inlined","new_set","new_time","new_timestamp","new_unset","new_view","next","","not","offset","","offset_at","","offsets","","patch","","prefix","project","","","","","ptr_eq","raw_kv_value","","","","","","","","","","","rechunk","reinterpret_cast","resolved_indices","scalar","scalar_at","","","","","","","","","","","scalar_at_fn","","","","","","","","","","","search_sorted","","","search_sorted_fn","","","search_sorted_usize","","search_sorted_usize_fn","","serialize","","","","","","","","","","","set_indices","set_slices","slice","","","","","","","","","","","","slice_fn","","","","","","","","","","","sliced","sliced_bytes","statistics","","","","","","","","","","","storage","storage_data","","","","subtract_scalar","","subtract_scalar_fn","","take","","","","","","","","","","take_fn","","","","","","","","","","temporal_metadata","temporal_values","to_array","","","","","","","","","","","to_owned","","","","","","","","","","","","","","","","","","","","","","","","","","","to_range","to_string","","","","","","","","","","","try_deserialize_metadata","","","","","","","","","","","try_from","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","try_into","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","try_new","","","","","","","try_serialize_metadata","","","","","","","","","","","type_id","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","validity","","","","","","value","","value_unchecked","","","values","","varbin_scalar","view_at","views","vzip","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","with_iterator","","","VarBinBuilder","borrow","borrow_mut","default","finish","from","into","new","push","push_null","push_value","push_values","try_from","try_into","type_id","vzip","with_capacity","filter","filter_indices","filter_slices","Datum","FromArrowArray","FromArrowType","TryFromArrowType","borrow","borrow_mut","from","from_arrow","","get","infer_data_type","infer_schema","into","try_from","","try_from_arrow","try_into","type_id","vzip","wrappers","as_offset_buffer","as_scalar_buffer","ArrayBuilder","ArrayBuilderExt","BinaryBuilder","BoolBuilder","ExtensionBuilder","NullBuilder","PrimitiveBuilder","Utf8Builder","append_null","append_nulls","","","","","","","append_option","","","","","append_scalar","append_value","","","","","append_values","append_zero","append_zeros","","","","","","","as_any","","","","","","","as_any_mut","","","","","","","borrow","","","","","","borrow_mut","","","","","","builder_with_capacity","default","dtype","","","","","","","finish","","","","","","","from","","","","","","into","","","","","","is_empty","len","","","","","","","new","","","","try_from","","","","","","try_into","","","","","","type_id","","","","","","vzip","","","","","","with_capacity","","","","","CompressionStrategy","check_dtype_unchanged","check_statistics_unchanged","check_validity_unchanged","compress","compute_precompression_stats","used_encodings","And","AndKleene","BinaryBooleanFn","BinaryOperator","CastFn","CompareFn","ComputeVTable","Eq","FillForwardFn","FillNullFn","FilterFn","FilterIter","FilterMask","Found","Gt","Gte","IndexOrd","Indices","IndicesIter","InvertFn","Left","Len","LikeFn","LikeOptions","Lt","Lte","NotEq","NotFound","Operator","Or","OrKleene","Right","ScalarAtFn","SearchResult","SearchSorted","SearchSortedFn","SearchSortedSide","SearchSortedUsizeFn","SliceFn","Slices","SlicesIter","SubtractScalarFn","TakeFn","TakeOptions","and","and_kleene","binary_boolean","","binary_boolean_fn","borrow","","","","","","","","borrow_mut","","","","","","","","case_insensitive","cast","cast_fn","clone","","","","","","","clone_into","","","","","","","clone_to_uninit","","","","","","","compare","","compare_fn","default","","eq","","","equivalent","","","","","","","","","false_count","fill_forward","","fill_forward_fn","fill_null","","fill_null_fn","filter","","filter_fn","fmt","","","","","","","","","","from","","","","","","","","","from_indices","from_iter","index_cmp","index_ge","index_gt","index_le","index_lt","into","","","","","","","","inverse","invert","","invert_fn","is_empty","iter","iter_indices","iter_slices","len","","like","","like_fn","negated","or","or_kleene","partial_cmp","range_selectivity","scalar_at","","scalar_at_fn","scalar_cmp","search_sorted","","","search_sorted_by","search_sorted_fn","search_sorted_many","","search_sorted_usize","","search_sorted_usize_fn","search_sorted_usize_many","","selectivity","skip_bounds_check","slice","","slice_fn","subtract_scalar","","subtract_scalar_fn","swap","take","","take_fn","to_boolean_buffer","to_ends_index","to_fn","to_found","to_index","to_offsets_index","to_owned","","","","","","","to_string","","","true_count","try_cast","try_from","","","","","","","","","try_into","","","","","","","","type_id","","","","","","","","vzip","","","","","","","","Array","ArrayEncodingRef","Encoding","EncodingId","EncodingRef","EncodingVTable","ID","Metadata","as_any","as_ref","borrow","borrow_mut","clone","clone_into","clone_to_uninit","code","encoding","eq","","equivalent","","","fmt","","from","hash","","id","ids","into","new","opaque","to_owned","to_string","try_from","try_into","type_id","vzip","ALP","ALP_RD","BOOL","BYTE_BOOL","CHUNKED","CONSTANT","DATE_TIME_PARTS","DICT","EXTENSION","FL_BITPACKED","FL_DELTA","FL_FOR","FSST","LIST","NULL","PRIMITIVE","ROARING_BOOL","ROARING_INT","RUN_END","RUN_END_BOOL","SPARSE","STRUCT","VAR_BIN","VAR_BIN_VIEW","ZIGZAG","OpaqueEncoding","OpaqueMetadata","accept","as_any","","as_any_arc","borrow","","borrow_mut","","clone","clone_into","clone_to_uninit","fmt","","","from","","id","into","","into_arrow","into_canonical","is_valid","load_metadata","logical_validity","to_owned","to_string","try_from","","try_into","","try_serialize_metadata","type_id","","vzip","","Accessor","AccessorRef","ArrayIterator","ArrayIteratorAdapter","ArrayIteratorExt","Batch","FlattenedBatch","ITER_BATCH_SIZE","VectorizedArrayIter","apply_until_stop","","","array_len","array_validity","as_","batch_size","borrow","","","","borrow_mut","","","","data","decode_batch","dtype","","from","","","","get_unchecked","into","","","","into_iter","","","","into_stream","is_empty","is_valid","","len","map_until_stop_and_collect","","","new","","","new_from_vec","next","","","size_hint","","try_from","","","","try_into","","","","try_into_chunked","type_id","","","","value_unchecked","vzip","","","","ArrayNBytes","nbytes","paste","ArrayStatistics","BitWidthFreq","IsConstant","IsSorted","IsStrictSorted","Max","Min","NullCount","PRUNING_STATS","RunCount","Stat","Statistics","StatisticsVTable","StatsSet","StatsSetIntoIter","TrailingZeroFreq","TrueCount","UncompressedSizeInBytes","apply_until_stop","as_stat_bitset_bytes","bools_with_true_and_null_count","borrow","","","borrow_mut","","","clear","","clone","","clone_into","","clone_to_uninit","","compute","compute_all","compute_as","compute_as_cast","compute_bit_width_freq","compute_is_constant","compute_is_sorted","compute_is_strict_sorted","compute_max","compute_min","compute_null_count","compute_run_count","compute_statistics","compute_trailing_zero_freq","compute_true_count","compute_uncompressed_size_in_bytes","constant","default","dtype","eq","","equivalent","","","extend","first","flatbuffers","fmt","","","from","","","","from_iter","from_usize","get","","get_as","","get_as_cast","has_same_dtype_as_array","hash","inherit_statistics","into","","","into_iter","","into_usize","is_commutative","is_empty","last","len","map_until_stop_and_collect","merge_ordered","merge_unordered","multiunzip","name","next","","nulls","of","previous","retain_only","","set","","size_hint","statistics","stats_from_bitset_bytes","to_owned","","to_set","to_string","trailing_zeros","try_from","","","","try_from_primitive","try_into","","","type_id","","","vzip","","","write_flatbuffer","ArrayStream","ArrayStreamAdapter","ArrayStreamExt","TakeRows","borrow","","borrow_mut","","collect_chunked","dtype","","from","","into","","new","poll_next","","size_hint","take_rows","try_from","","try_into","","try_new","try_poll_next","","type_id","","vzip","","TreeDisplayWrapper","TreeFormatter","borrow","","borrow_mut","","fmt","from","","indent","into","","new","","to_string","try_from","","try_into","","type_id","","visit_buffer","visit_child","vzip","","write_fmt","AllInvalid","","","AllValid","","","Array","","","ArrayValidity","DTYPE","LogicalValidity","NonNullable","","Validity","ValidityMetadata","ValidityVTable","all_invalid","all_valid","and","as_array","borrow","","","borrow_mut","","","clone","","","clone_into","","","clone_to_uninit","","","deserialize","eq","filter","fmt","","","","from","","","","","from_iter","","into","","","into_array","","into_nullable","into_validity","is_empty","is_null","is_valid","","","len","logical_validity","","null_count","","nullability","patch","raw_kv_value","serialize","slice","take","to_logical","to_metadata","to_null_buffer","to_owned","","","to_string","to_validity","try_deserialize_metadata","try_from","","","","","try_into","","","try_new_from_array","try_serialize_metadata","type_id","","","vzip","","","BinaryArrayTrait","BoolArrayTrait","ExtensionArrayTrait","ListArrayTrait","NullArrayTrait","PrimitiveArrayTrait","StructArrayTrait","Utf8ArrayTrait","VariantsVTable","as_binary_array","as_bool_array","as_extension_array","as_list_array","as_null_array","as_primitive_array","as_struct_array","as_utf8_array","dtypes","ext_dtype","field","field_by_name","names","nfields","project","ptype","storage_data","ArrayVisitor","VisitorVTable","accept","visit_buffer","visit_child","visit_validity"],"q":[[0,"vortex"],[264,"vortex::accessor"],[266,"vortex::aliases"],[268,"vortex::aliases::hash_map"],[275,"vortex::aliases::hash_set"],[280,"vortex::array"],[1574,"vortex::array::builder"],[1591,"vortex::array::compute"],[1592,"vortex::array::compute::filter"],[1594,"vortex::arrow"],[1614,"vortex::arrow::wrappers"],[1616,"vortex::builders"],[1747,"vortex::compress"],[1754,"vortex::compute"],[2001,"vortex::encoding"],[2039,"vortex::encoding::ids"],[2064,"vortex::encoding::opaque"],[2101,"vortex::iter"],[2177,"vortex::nbytes"],[2179,"vortex::paste"],[2180,"vortex::stats"],[2306,"vortex::stream"],[2337,"vortex::tree"],[2363,"vortex::validity"],[2461,"vortex::variants"],[2487,"vortex::visitor"],[2493,"vortex_array::data"],[2494,"alloc::vec"],[2495,"datafusion_common::tree_node"],[2496,"datafusion_common::error"],[2497,"core::result"],[2498,"core::ops::function"],[2499,"arbitrary::unstructured"],[2500,"arbitrary::error"],[2501,"vortex_array::metadata"],[2502,"core::any"],[2503,"alloc::sync"],[2504,"vortex_array::variants"],[2505,"core::option"],[2506,"vortex_scalar"],[2507,"vortex_array::canonical"],[2508,"vortex_buffer"],[2509,"vortex_dtype::dtype"],[2510,"vortex_error"],[2511,"vortex_array::context"],[2512,"vortex_array"],[2513,"vortex_array::encoding"],[2514,"core::iter::traits::iterator"],[2515,"core::fmt"],[2516,"arrow_buffer::buffer::immutable"],[2517,"half::binary16"],[2518,"vortex_array::array::datetime"],[2519,"vortex_array::data::owned"],[2520,"vortex_array::data::viewed"],[2521,"arrow_buffer::buffer::offset"],[2522,"vortex_dtype::ptype"],[2523,"arrow_array::array::list_array"],[2524,"arrow_buffer::buffer::scalar"],[2525,"arrow_buffer::native"],[2526,"arrow_buffer::buffer::boolean"],[2527,"arrow_array::array"],[2528,"arrow_array::array::primitive_array"],[2529,"arrow_array::types"],[2530,"arrow_array::array::null_array"],[2531,"arrow_array::array::struct_array"],[2532,"arrow_array::array::boolean_array"],[2533,"arrow_array::array::byte_view_array"],[2534,"arrow_array::array::byte_array"],[2535,"core::iter::traits::collect"],[2536,"alloc::string"],[2537,"vortex_buffer::string"],[2538,"core::cmp"],[2539,"vortex_array::stats"],[2540,"vortex_array::iter"],[2541,"vortex_array::stream"],[2542,"vortex_array::array::bool"],[2543,"vortex_array::array::extension"],[2544,"vortex_array::array::list"],[2545,"vortex_array::array::null"],[2546,"vortex_array::array::primitive"],[2547,"vortex_array::array::struct_"],[2548,"vortex_array::array::varbinview"],[2549,"vortex_array::validity"],[2550,"core::clone"],[2551,"alloc::borrow"],[2552,"vortex_array::compute::search_sorted"],[2553,"vortex_array::tree"],[2554,"arrow_array::record_batch"],[2555,"vortex_array::stats::statsset"],[2556,"vortex_flatbuffers::array"],[2557,"vortex_array::accessor"],[2558,"vortex_array::visitor"],[2559,"vortex_array::array::chunked"],[2560,"vortex_array::array::constant"],[2561,"vortex_array::array::sparse"],[2562,"vortex_array::array::varbin"],[2563,"vortex_array::compute::boolean"],[2564,"arrow_buffer::util::bit_chunk_iterator"],[2565,"vortex_array::compute::cast"],[2566,"vortex_array::compute::compare"],[2567,"vortex_array::array::bool::stats"],[2568,"vortex_array::array::primitive::stats"],[2569,"serde::de"],[2570,"vortex_dtype::extension"],[2571,"vortex_array::compute::fill_forward"],[2572,"vortex_array::compute::fill_null"],[2573,"vortex_array::compute::filter"],[2574,"core::convert"],[2575,"arrow_buffer::builder::boolean"],[2576,"bytes::bytes"],[2577,"vortex_array::compute::invert"],[2578,"arrow_buffer::util::bit_iterator"],[2579,"vortex_dtype::nullability"],[2580,"vortex_datetime_dtype::unit"],[2581,"num_traits::cast"],[2582,"vortex_dtype::field"],[2583,"wasm_bindgen"],[2584,"worker_kv"],[2585,"vortex_array::compute::scalar_at"],[2586,"serde::ser"],[2587,"vortex_array::compute::slice"],[2588,"vortex_array::compute::scalar_subtract"],[2589,"vortex_array::compute::take"],[2590,"vortex_datetime_dtype::temporal"],[2591,"core::ops::range"],[2592,"vortex_array::array::varbin::builder"],[2593,"vortex_array::arrow"],[2594,"vortex_array::arrow::datum"],[2595,"arrow_schema::datatype"],[2596,"arrow_schema::schema"],[2597,"vortex_array::builders"],[2598,"vortex_array::builders::binary"],[2599,"vortex_array::builders::bool"],[2600,"vortex_array::builders::extension"],[2601,"vortex_array::builders::null"],[2602,"vortex_array::builders::primitive"],[2603,"vortex_array::builders::utf8"],[2604,"vortex_scalar::extension"],[2605,"alloc::boxed"],[2606,"vortex_array::compress"],[2607,"hashbrown::set"],[2608,"vortex_array::compute"],[2609,"vortex_array::compute::like"],[2610,"core::hash"],[2611,"vortex_array::encoding::opaque"],[2612,"vortex_array::iter::adapter"],[2613,"core::marker"],[2614,"vortex_array::iter::ext"],[2615,"vortex_array::nbytes"],[2616,"enum_map"],[2617,"num_enum"],[2618,"flatbuffers::builder"],[2619,"flatbuffers::primitives"],[2620,"vortex_array::stream::ext"],[2621,"core::future::future"],[2622,"vortex_array::stream::adapter"],[2623,"futures_core::stream"],[2624,"core::pin"],[2625,"core::task::wake"],[2626,"core::task::poll"],[2627,"vortex_array::stream::take_rows"],[2628,"arrow_buffer::buffer::null"],[2629,"vortex_array::aliases"],[2630,"vortex_array::aliases::hash_map"],[2631,"vortex_array::aliases::hash_set"],[2632,"vortex_array::array"],[2633,"vortex_array::array::varbin::stats"],[2634,"vortex_array::array::bool::compute"],[2635,"vortex_array::array::bool::compute::filter"],[2636,"vortex_array::arrow::dtype"],[2637,"vortex_array::arrow::wrappers"],[2638,"vortex_array::encoding::ids"],[2639,"paste"]],"i":"``````Cb``0`````0`000```0``b`Db1`1`Al02222222322213Cn32403`3``33403403403``3``03``Dd545`5441`````51443514444444444444444444444444444444444444444444``4543514Ij655J`Jb8Jd9881280987098098098098098``888Kd:999:9`0:999Kh;:79L`;;`<;;;::``````;<;``Ll=<=9<<`EncodingRef
, …\nConsume self
and turn it into an ArrayData
infallibly.\nTrait for types that can be converted from an owned type …\nSupport trait for transmuting an array into the canonical …\nEncoding VTable for canonicalizing an array.\nReturn the buffer offsets and the total length of all …\nAll the built-in encoding schemes and arrays.\nUtilities to work with Arrow
data and types.\nReturn scalar value of this array if the array is constant\nReturns a Vec of Arrays with all the array’s child …\nCompute kernels on top of Vortex Arrays.\nCount the number of cumulative buffers encoded by self.\nTraits and types to define shared unique encoding …\nReturn the array’s encoding\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nMacro to generate all the necessary code for a new type of …\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nConvert a canonical array into its equivalent ArrayRef…\nWhether the array is fully zero-copy to Arrow (including …\nWhether the array is of a canonical encoding.\nReturn whether the array is constant.\nCheck whether the array has any data\nChecks whether array is of a given encoding.\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturns the number of logical elements in the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nGet back the (possibly owned) metadata for the array.\nTotal size of the array in bytes, including all children …\nReturns the number of child arrays\nTraits and utilities to compute and access array …\nArray validity and nullability behavior, used by arrays …\nThis module defines array traits for each Vortex DType.\nTrait for arrays that support iterative access to their …\nIterate over each element of the array, in-order.\nAn occupied entry.\nA vacant entry.\nAn occupied entry.\nA vacant entry.\nThe array encoding\nA slice-able Buffer
containing bit-packed booleans\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nAn array wrapper for primitive values that have an …\nThe array encoding\nThe array encoding\nAccess to the underlying views
child array as a slice of …\nReturns a BitChunks
instance which can be used to iterate …\nGet array values as an arrow BooleanBuffer\nAccess internal array buffer\nAccess one of the backing data buffers.\nNumber of raw string data buffers held by this array.\nRetrieve an iterator over the raw data buffers. These are …\nAccess the value bytes child array\nInvokes f
with indexes 0..len
collecting the boolean …\nReturns the number of set bits in this buffer\nRetrieve the extension DType associated with the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCreates a new array of type U8\nCreate a new BoolArray from a set of indices and a length. …\nAccumulate an iterable set of values into our type here.\nReturns the inner Buffer
\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nGet a mutable version of this array.\nConvert array into its internal buffer\nStructEncoding is the canonical form for a DType::Struct …\nReturns the inner Buffer
, consuming self\nConvert the array into a mutable vec of the given type. If …\nConsumes self, returning a tuple containing the DType
, the …\nReturns true if this BooleanBuffer
is empty\nReturns true
if the bit at index i
is set\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturns an iterator over the bits in this BooleanBuffer
\nReturns the length of this BooleanBuffer
in bits\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the maximum index if indices are present.\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nReturn the minimum index if indices are present.\nCreate a new BooleanBuffer
from a Buffer
, an offset
and …\nCreate a new BoolArray from a buffer and nullability.\nCreate a new TemporalArray
holding either i32 day offsets, …\nCreate a new BooleanBuffer
of length
where all values are …\nCreate a new TemporalArray
holding one of the following …\nCreate a new TemporalArray
holding Arrow spec compliant …\nCreate a new BooleanBuffer
of length
where all values are …\nCreate a new view over bytes stored in a block.\nReturns the offset of this BooleanBuffer
in bits\nReturn a new StructArray with the given projection applied.\nReturns true if this BooleanBuffer
is equal to other
, …\nReturn indices as a vector of usize with the …\nReturns the Scalar
value of this constant array.\nReturns an iterator over the set bit positions in this …\nReturns a BitSliceIterator
yielding contiguous ranges of …\nSlices this BooleanBuffer
by the provided offset
and length
\nReturns a Buffer
containing the sliced contents of this …\nAccess value bytes child array limited to values that are …\nRetrieve the temporal metadata.\nAccess the underlying temporal values in the underlying …\nTry to specialize a generic Vortex array as a …\nCreate a new BoolArray from a buffer and validity metadata.\nReturns the boolean value at index i
.\nReturns the boolean value at index i
.\nReturns the packed values of this BooleanBuffer
not …\nRetrieve a binary view at a specific index.\nAccess to the primitive views array.\nReturns the argument unchanged.\nCalls U::from(self)
.\nA wrapper around a generic Arrow array that can be used as …\nReturns the argument unchanged.\nTry to convert a Vortex DType
into an Arrow DataType
\nConvert a Vortex struct DType to an Arrow Schema.\nCalls U::from(self)
.\nAppend a “null” value to the array.\nAppends n “null” values to the array.\nA generic function to append a scalar to the builder.\nAppend a “zero” value to the array.\nAppends n “zero” values to the array.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCheck that compression did not alter the dtype\nCheck that compression did not alter the length of the …\nEagerly compute certain statistics (i.e., pruning stats …\nVTable for dispatching compute functions to Vortex …\nTrait for filling forward on an array, i.e., replacing …\nImplementation of fill_null for an encoding.\nRepresents the mask argument to a filter function. …\nResult for a found element was found at the given index in …\nOptions for SQL LIKE function\nResult for an element not found, but that could be …\nImplementation of scalar_at for an encoding.\nResult of performing search_sorted on an Array\nSearches for value assuming the array is sorted.\nLimit array to start…stop range\nPoint-wise logical and between two Boolean arrays.\nPoint-wise Kleene logical and between two Boolean arrays.\nImplementation of binary boolean logic operations.\nImplemented for arrays that can be casted to different …\nCompares two arrays and returns a new boolean array with …\nBinary operator implementation for arrays against other …\nGet the false count of the mask.\nArray function that returns new arrays a non-null value is …\nFill null values with given desired value. Resulting array …\nReturn a new array by applying a boolean predicate to …\nFilter an array by the provided predicate.\nFilter an array with a given mask.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCreate a new FilterMask where the given indices are set.\nPartialOrd of the value at index idx
with elem
. For …\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nLogically invert a boolean array.\nLogically invert a boolean array. Converts true -> false, …\nInvert a boolean array. Converts true -> false, false -> …\nReturns the best iterator based on a selectivity threshold.\nPerform SQL left LIKE right\nPerform a SQL LIKE operation on two arrays.\nPoint-wise logical or between two Boolean arrays.\nPoint-wise Kleene logical or between two Boolean arrays.\nReturn the selectivity of the range of true values of the …\nSingle item indexing on Vortex arrays.\nfind function is used to find the element if it exists, if …\nPerform a search over an ordered array.\nSearch for many elements in the array.\nBulk search for many values.\nPerform a search over an ordered array.\nReturn the selectivity of the full mask.\nReturn a zero-copy slice of an array, between start
…\nReturn a zero-copy slice of an array, between start
…\nPerform zero-copy slicing of an array.\nBroadcast subtraction of scalar from Vortex array.\nChange the sides of the operator, where changing lhs and …\nTake a set of indices from an array. This often forces …\nGet the canonical representation of the mask.\nConvert search result into an index suitable for searching …\nConvert search result to an index only if the value have …\nExtract index out of search result regardless of whether …\nConvert search result into an index suitable for searching …\nGet the true count of the mask.\nAttempt to cast an array to a desired DType.\nMarker trait for array encodings with their associated …\nEncodingId is a unique name and numerical code of the array\nObject-safe encoding trait for an array.\nReturns the argument unchanged.\nEncoding ID constants for all Vortex-provided encodings\nCalls U::from(self)
.\nAn encoding of an array that we cannot interpret.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nDefine the basic behavior required for batched iterators\nA stream of array chunks along with a DType. Analogous to …\nIterate over batches of compressed arrays, should help …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nSafety\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nTotal size of the array in bytes, including all children …\nFrequency of each bit width (nulls are treated as 0)\nWhether all values are the same (nulls are not equal to …\nWhether the non-null values in the array are sorted (i.e., …\nWhether the non-null values in the array are strictly …\nThe maximum value in the array (ignoring nulls, unless all …\nThe minimum value in the array (ignoring nulls, unless all …\nThe number of null values in the array\nStatistics that are used for pruning files (i.e., we want …\nThe number of runs in the array (ignoring nulls)\nEncoding VTable for computing array statistics.\nFrequency of each trailing zero (nulls are treated as 0)\nThe number of true values in the array (nulls are treated …\nThe uncompressed size of the array in bytes\nClear the value of the statistic\nClear the stat stat
from the set.\nComputes the value of the stat if it’s not present\nCompute all the requested statistics (if not already …\nCompute the requested statistic. Can return additional …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the value of the statistic only if it’s present\nWhether the statistic has the same dtype as the array it’…\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nWhether the statistic is commutative (i.e., whether …\nMerge stats set other
into self
, with the semantic …\nMerge stats set other
into self
, with no assumption on …\nSpecialized constructor for the case where the StatsSet …\nSet the value of the statistic\nSet the stat stat
to value
.\nGet all existing statistics\nA stream of array chunks along with a DType.\nAn adapter for a stream of array chunks to implement an …\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nAll items are null\nAll items are valid\nSpecified items are null\nThe DType
of the underlying validity array (if it exists).\nItems can’t be null\nValidity information for an array\nLogically & two Validity values of the same length\nIf Validity is Validity::Array
, returns a reference to the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nIf Validity is Validity::Array
, returns the array, …\nConvert into a nullable variant\nReturns whether the index
item is valid.\nAn Array encoding must declare which DTypes it can be …\nReturns the extension logical DType
.\nReturn a field’s array by index\nReturn a field’s array by name\nReturns the underlying ArrayData
, without the ExtDType
.\nVisit a child of this array.\nUtility for visiting Array validity.")
\ No newline at end of file
+searchState.loadedDescShard("vortex", 0, "A depth-first pre-order iterator over a ArrayData.\nA central type for all Vortex arrays, which are known …\nDynamic trait used to represent opaque owned Array metadata\nCollects together the behavior of an array.\nThe set of canonical array encodings, also the set of …\nA mapping between an encoding’s ID to an EncodingRef
, …\nConsume self
and turn it into an ArrayData
infallibly.\nTrait for types that can be converted from an owned type …\nSupport trait for transmuting an array into the canonical …\nEncoding VTable for canonicalizing an array.\nReturn the buffer offsets and the total length of all …\nAll the built-in encoding schemes and arrays.\nUtilities to work with Arrow
data and types.\nReturn scalar value of this array if the array is constant\nReturns a Vec of Arrays with all the array’s child …\nCompute kernels on top of Vortex Arrays.\nCount the number of cumulative buffers encoded by self.\nTraits and types to define shared unique encoding …\nReturn the array’s encoding\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nMacro to generate all the necessary code for a new type of …\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nConvert a canonical array into its equivalent ArrayRef…\nWhether the array is fully zero-copy to Arrow (including …\nWhether the array is of a canonical encoding.\nReturn whether the array is constant.\nCheck whether the array has any data\nChecks whether array is of a given encoding.\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturns the number of logical elements in the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nGet back the (possibly owned) metadata for the array.\nTotal size of the array in bytes, including all children …\nReturns the number of child arrays\nTraits and utilities to compute and access array …\nArray validity and nullability behavior, used by arrays …\nThis module defines array traits for each Vortex DType.\nTrait for arrays that support iterative access to their …\nIterate over each element of the array, in-order.\nAn occupied entry.\nA vacant entry.\nAn occupied entry.\nA vacant entry.\nThe array encoding\nA slice-able Buffer
containing bit-packed booleans\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nAn array wrapper for primitive values that have an …\nThe array encoding\nThe array encoding\nAccess to the underlying views
child array as a slice of …\nReturns a BitChunks
instance which can be used to iterate …\nGet array values as an arrow BooleanBuffer\nAccess internal array buffer\nAccess one of the backing data buffers.\nNumber of raw string data buffers held by this array.\nRetrieve an iterator over the raw data buffers. These are …\nAccess the value bytes child array\nInvokes f
with indexes 0..len
collecting the boolean …\nReturns the number of set bits in this buffer\nRetrieve the extension DType associated with the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCreates a new array of type U8\nCreate a new BoolArray from a set of indices and a length. …\nAccumulate an iterable set of values into our type here.\nReturns the inner Buffer
\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nGet a mutable version of this array.\nConvert array into its internal buffer\nStructEncoding is the canonical form for a DType::Struct …\nReturns the inner Buffer
, consuming self\nConvert the array into a mutable vec of the given type. If …\nConsumes self, returning a tuple containing the DType
, the …\nReturns true if this BooleanBuffer
is empty\nReturns true
if the bit at index i
is set\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturns an iterator over the bits in this BooleanBuffer
\nReturns the length of this BooleanBuffer
in bits\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the maximum index if indices are present.\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nReturn the minimum index if indices are present.\nCreate a new BooleanBuffer
from a Buffer
, an offset
and …\nCreate a new BoolArray from a buffer and nullability.\nCreate a new TemporalArray
holding either i32 day offsets, …\nCreate a new BooleanBuffer
of length
where all values are …\nCreate a new TemporalArray
holding one of the following …\nCreate a new TemporalArray
holding Arrow spec compliant …\nCreate a new BooleanBuffer
of length
where all values are …\nCreate a new view over bytes stored in a block.\nReturns the offset of this BooleanBuffer
in bits\nReturn a new StructArray with the given projection applied.\nReturns true if this BooleanBuffer
is equal to other
, …\nReturn indices with the indices_offset applied.\nReturn the resolved indices as a Vec<usize>
.\nReturns the Scalar
value of this constant array.\nReturns an iterator over the set bit positions in this …\nReturns a BitSliceIterator
yielding contiguous ranges of …\nSlices this BooleanBuffer
by the provided offset
and length
\nReturns a Buffer
containing the sliced contents of this …\nAccess value bytes child array limited to values that are …\nRetrieve the temporal metadata.\nAccess the underlying temporal values in the underlying …\nTry to specialize a generic Vortex array as a …\nCreate a new BoolArray from a buffer and validity metadata.\nReturns the boolean value at index i
.\nReturns the boolean value at index i
.\nReturns the packed values of this BooleanBuffer
not …\nRetrieve a binary view at a specific index.\nAccess to the primitive views array.\nReturns the argument unchanged.\nCalls U::from(self)
.\nA wrapper around a generic Arrow array that can be used as …\nReturns the argument unchanged.\nTry to convert a Vortex DType
into an Arrow DataType
\nConvert a Vortex struct DType to an Arrow Schema.\nCalls U::from(self)
.\nAppend a “null” value to the array.\nAppends n “null” values to the array.\nA generic function to append a scalar to the builder.\nAppend a “zero” value to the array.\nAppends n “zero” values to the array.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCheck that compression did not alter the dtype\nCheck that compression did not alter the length of the …\nEagerly compute certain statistics (i.e., pruning stats …\nVTable for dispatching compute functions to Vortex …\nTrait for filling forward on an array, i.e., replacing …\nImplementation of fill_null for an encoding.\nRepresents the mask argument to a filter function. …\nResult for a found element was found at the given index in …\nOptions for SQL LIKE function\nResult for an element not found, but that could be …\nImplementation of scalar_at for an encoding.\nResult of performing search_sorted on an Array\nSearches for value assuming the array is sorted.\nLimit array to start…stop range\nPoint-wise logical and between two Boolean arrays.\nPoint-wise Kleene logical and between two Boolean arrays.\nImplementation of binary boolean logic operations.\nImplemented for arrays that can be casted to different …\nCompares two arrays and returns a new boolean array with …\nBinary operator implementation for arrays against other …\nGet the false count of the mask.\nArray function that returns new arrays a non-null value is …\nFill null values with given desired value. Resulting array …\nReturn a new array by applying a boolean predicate to …\nFilter an array by the provided predicate.\nFilter an array with a given mask.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCreate a new FilterMask where the given indices are set.\nPartialOrd of the value at index idx
with elem
. For …\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nLogically invert a boolean array.\nLogically invert a boolean array. Converts true -> false, …\nInvert a boolean array. Converts true -> false, false -> …\nReturns the best iterator based on a selectivity threshold.\nPerform SQL left LIKE right\nPerform a SQL LIKE operation on two arrays.\nPoint-wise logical or between two Boolean arrays.\nPoint-wise Kleene logical or between two Boolean arrays.\nReturn the selectivity of the range of true values of the …\nSingle item indexing on Vortex arrays.\nfind function is used to find the element if it exists, if …\nPerform a search over an ordered array.\nSearch for many elements in the array.\nBulk search for many values.\nPerform a search over an ordered array.\nReturn the selectivity of the full mask.\nReturn a zero-copy slice of an array, between start
…\nReturn a zero-copy slice of an array, between start
…\nPerform zero-copy slicing of an array.\nBroadcast subtraction of scalar from Vortex array.\nChange the sides of the operator, where changing lhs and …\nTake a set of indices from an array. This often forces …\nGet the canonical representation of the mask.\nConvert search result into an index suitable for searching …\nConvert search result to an index only if the value have …\nExtract index out of search result regardless of whether …\nConvert search result into an index suitable for searching …\nGet the true count of the mask.\nAttempt to cast an array to a desired DType.\nMarker trait for array encodings with their associated …\nEncodingId is a unique name and numerical code of the array\nObject-safe encoding trait for an array.\nReturns the argument unchanged.\nEncoding ID constants for all Vortex-provided encodings\nCalls U::from(self)
.\nAn encoding of an array that we cannot interpret.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nDefine the basic behavior required for batched iterators\nA stream of array chunks along with a DType. Analogous to …\nIterate over batches of compressed arrays, should help …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nSafety\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nTotal size of the array in bytes, including all children …\nA helper for working with patched arrays.\nFilter the patches by a mask, resulting in new patches for …\nReturns the argument unchanged.\nReturns the argument unchanged.\nGet the patched value at a given index if it exists.\nCalls U::from(self)
.\nCalls U::from(self)
.\nReturns the maximum patch index\nReturns the minimum patch index\nReturn the search_sorted result for the given target …\nSlice the patches by a range of the patched array.\nTake the indices from the patches.\nFrequency of each bit width (nulls are treated as 0)\nWhether all values are the same (nulls are not equal to …\nWhether the non-null values in the array are sorted (i.e., …\nWhether the non-null values in the array are strictly …\nThe maximum value in the array (ignoring nulls, unless all …\nThe minimum value in the array (ignoring nulls, unless all …\nThe number of null values in the array\nStatistics that are used for pruning files (i.e., we want …\nThe number of runs in the array (ignoring nulls)\nEncoding VTable for computing array statistics.\nFrequency of each trailing zero (nulls are treated as 0)\nThe number of true values in the array (nulls are treated …\nThe uncompressed size of the array in bytes\nClear the value of the statistic\nClear the stat stat
from the set.\nComputes the value of the stat if it’s not present\nCompute all the requested statistics (if not already …\nCompute the requested statistic. Can return additional …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the value of the statistic only if it’s present\nWhether the statistic has the same dtype as the array it’…\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nWhether the statistic is commutative (i.e., whether …\nMerge stats set other
into self
, with the semantic …\nMerge stats set other
into self
, with no assumption on …\nSpecialized constructor for the case where the StatsSet …\nSet the value of the statistic\nSet the stat stat
to value
.\nGet all existing statistics\nA stream of array chunks along with a DType.\nAn adapter for a stream of array chunks to implement an …\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nAll items are null\nAll items are valid\nSpecified items are null\nThe DType
of the underlying validity array (if it exists).\nItems can’t be null\nValidity information for an array\nLogically & two Validity values of the same length\nIf Validity is Validity::Array
, returns a reference to the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nIf Validity is Validity::Array
, returns the array, …\nConvert into a nullable variant\nReturns whether the index
item is valid.\nAn Array encoding must declare which DTypes it can be …\nReturns the extension logical DType
.\nReturn a field’s array by index\nReturn a field’s array by name\nReturns the underlying ArrayData
, without the ExtDType
.\nVisit a child of this array.\nUtility for visiting Array patches.\nUtility for visiting Array validity.")
\ No newline at end of file
diff --git a/docs/rust/doc/search.desc/vortex_array/vortex_array-desc-0-.js b/docs/rust/doc/search.desc/vortex_array/vortex_array-desc-0-.js
index 7425dd00e9..5702e972b5 100644
--- a/docs/rust/doc/search.desc/vortex_array/vortex_array-desc-0-.js
+++ b/docs/rust/doc/search.desc/vortex_array/vortex_array-desc-0-.js
@@ -1 +1 @@
-searchState.loadedDescShard("vortex_array", 0, "Vortex crate containing core logic for encoding and memory …\nA depth-first pre-order iterator over a ArrayData.\nA central type for all Vortex arrays, which are known …\nDynamic trait used to represent opaque owned Array metadata\nCollects together the behavior of an array.\nThe set of canonical array encodings, also the set of …\nA mapping between an encoding’s ID to an EncodingRef
, …\nConsume self
and turn it into an ArrayData
infallibly.\nTrait for types that can be converted from an owned type …\nSupport trait for transmuting an array into the canonical …\nEncoding VTable for canonicalizing an array.\nReturn the buffer offsets and the total length of all …\nAll the built-in encoding schemes and arrays.\nUtilities to work with Arrow
data and types.\nReturn scalar value of this array if the array is constant\nReturns a Vec of Arrays with all the array’s child …\nCompute kernels on top of Vortex Arrays.\nCount the number of cumulative buffers encoded by self.\nTraits and types to define shared unique encoding …\nReturn the array’s encoding\nRe-exported autogenerated code from the core Vortex …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nMacro to generate all the necessary code for a new type of …\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nConvert a canonical array into its equivalent ArrayRef…\nWhether the array is fully zero-copy to Arrow (including …\nWhether the array is of a canonical encoding.\nReturn whether the array is constant.\nCheck whether the array has any data\nChecks whether array is of a given encoding.\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturns the number of logical elements in the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nGet back the (possibly owned) metadata for the array.\nTotal size of the array in bytes, including all children …\nReturns the number of child arrays\nTraits and utilities to compute and access array …\nArray validity and nullability behavior, used by arrays …\nThis module defines array traits for each Vortex DType.\nTrait for arrays that support iterative access to their …\nIterate over each element of the array, in-order.\nAn occupied entry.\nA vacant entry.\nAn occupied entry.\nA vacant entry.\nThe array encoding\nA slice-able Buffer
containing bit-packed booleans\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nAn array wrapper for primitive values that have an …\nThe array encoding\nThe array encoding\nAccess to the underlying views
child array as a slice of …\nReturns a BitChunks
instance which can be used to iterate …\nGet array values as an arrow BooleanBuffer\nAccess internal array buffer\nAccess one of the backing data buffers.\nNumber of raw string data buffers held by this array.\nRetrieve an iterator over the raw data buffers. These are …\nAccess the value bytes child array\nInvokes f
with indexes 0..len
collecting the boolean …\nReturns the number of set bits in this buffer\nRetrieve the extension DType associated with the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCreates a new array of type U8\nCreate a new BoolArray from a set of indices and a length. …\nAccumulate an iterable set of values into our type here.\nReturns the inner Buffer
\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nGet a mutable version of this array.\nConvert array into its internal buffer\nStructEncoding is the canonical form for a DType::Struct …\nReturns the inner Buffer
, consuming self\nConvert the array into a mutable vec of the given type. If …\nConsumes self, returning a tuple containing the DType
, the …\nReturns true if this BooleanBuffer
is empty\nReturns true
if the bit at index i
is set\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturns an iterator over the bits in this BooleanBuffer
\nReturns the length of this BooleanBuffer
in bits\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the maximum index if indices are present.\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nReturn the minimum index if indices are present.\nCreate a new BooleanBuffer
from a Buffer
, an offset
and …\nCreate a new BoolArray from a buffer and nullability.\nCreate a new TemporalArray
holding either i32 day offsets, …\nCreate a new BooleanBuffer
of length
where all values are …\nCreate a new TemporalArray
holding one of the following …\nCreate a new TemporalArray
holding Arrow spec compliant …\nCreate a new BooleanBuffer
of length
where all values are …\nCreate a new view over bytes stored in a block.\nReturns the offset of this BooleanBuffer
in bits\nReturn a new StructArray with the given projection applied.\nReturns true if this BooleanBuffer
is equal to other
, …\nReturn indices as a vector of usize with the …\nReturns the Scalar
value of this constant array.\nReturns an iterator over the set bit positions in this …\nReturns a BitSliceIterator
yielding contiguous ranges of …\nSlices this BooleanBuffer
by the provided offset
and length
\nReturns a Buffer
containing the sliced contents of this …\nAccess value bytes child array limited to values that are …\nRetrieve the temporal metadata.\nAccess the underlying temporal values in the underlying …\nTry to specialize a generic Vortex array as a …\nCreate a new BoolArray from a buffer and validity metadata.\nReturns the boolean value at index i
.\nReturns the boolean value at index i
.\nReturns the packed values of this BooleanBuffer
not …\nRetrieve a binary view at a specific index.\nAccess to the primitive views array.\nReturns the argument unchanged.\nCalls U::from(self)
.\nA wrapper around a generic Arrow array that can be used as …\nReturns the argument unchanged.\nTry to convert a Vortex DType
into an Arrow DataType
\nConvert a Vortex struct DType to an Arrow Schema.\nCalls U::from(self)
.\nAppend a “null” value to the array.\nAppends n “null” values to the array.\nA generic function to append a scalar to the builder.\nAppend a “zero” value to the array.\nAppends n “zero” values to the array.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCheck that compression did not alter the dtype\nCheck that compression did not alter the length of the …\nEagerly compute certain statistics (i.e., pruning stats …\nVTable for dispatching compute functions to Vortex …\nTrait for filling forward on an array, i.e., replacing …\nImplementation of fill_null for an encoding.\nRepresents the mask argument to a filter function. …\nResult for a found element was found at the given index in …\nOptions for SQL LIKE function\nResult for an element not found, but that could be …\nImplementation of scalar_at for an encoding.\nResult of performing search_sorted on an Array\nSearches for value assuming the array is sorted.\nLimit array to start…stop range\nPoint-wise logical and between two Boolean arrays.\nPoint-wise Kleene logical and between two Boolean arrays.\nImplementation of binary boolean logic operations.\nImplemented for arrays that can be casted to different …\nCompares two arrays and returns a new boolean array with …\nBinary operator implementation for arrays against other …\nGet the false count of the mask.\nArray function that returns new arrays a non-null value is …\nFill null values with given desired value. Resulting array …\nReturn a new array by applying a boolean predicate to …\nFilter an array by the provided predicate.\nFilter an array with a given mask.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCreate a new FilterMask where the given indices are set.\nPartialOrd of the value at index idx
with elem
. For …\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nLogically invert a boolean array.\nLogically invert a boolean array. Converts true -> false, …\nInvert a boolean array. Converts true -> false, false -> …\nReturns the best iterator based on a selectivity threshold.\nPerform SQL left LIKE right\nPerform a SQL LIKE operation on two arrays.\nPoint-wise logical or between two Boolean arrays.\nPoint-wise Kleene logical or between two Boolean arrays.\nReturn the selectivity of the range of true values of the …\nSingle item indexing on Vortex arrays.\nfind function is used to find the element if it exists, if …\nPerform a search over an ordered array.\nSearch for many elements in the array.\nBulk search for many values.\nBulk search for many values.\nPerform a search over an ordered array.\nReturn the selectivity of the full mask.\nReturn a zero-copy slice of an array, between start
…\nReturn a zero-copy slice of an array, between start
…\nPerform zero-copy slicing of an array.\nBroadcast subtraction of scalar from Vortex array.\nChange the sides of the operator, where changing lhs and …\nTake a set of indices from an array. This often forces …\nGet the canonical representation of the mask.\nConvert search result into an index suitable for searching …\nConvert search result to an index only if the value have …\nExtract index out of search result regardless of whether …\nConvert search result into an index suitable for searching …\nGet the true count of the mask.\nAttempt to cast an array to a desired DType.\nMarker trait for array encodings with their associated …\nEncodingId is a unique name and numerical code of the array\nObject-safe encoding trait for an array.\nReturns the argument unchanged.\nEncoding ID constants for all Vortex-provided encodings\nCalls U::from(self)
.\nAn encoding of an array that we cannot interpret.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nVerifies that a buffer of bytes contains a Array
and …\nAssumes, without verification, that a buffer of bytes …\nVerifies, with the given options, that a buffer of bytes …\nVerifies that a buffer of bytes contains a size prefixed …\nAssumes, without verification, that a buffer of bytes …\nVerifies, with the given verifier options, that a buffer of\nReturns the variant’s name or “” if unknown.\nDefine the basic behavior required for batched iterators\nA stream of array chunks along with a DType. Analogous to …\nIterate over batches of compressed arrays, should help …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nSafety\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nTotal size of the array in bytes, including all children …\nFrequency of each bit width (nulls are treated as 0)\nWhether all values are the same (nulls are not equal to …\nWhether the non-null values in the array are sorted (i.e., …\nWhether the non-null values in the array are strictly …\nThe maximum value in the array (ignoring nulls, unless all …\nThe minimum value in the array (ignoring nulls, unless all …\nThe number of null values in the array\nStatistics that are used for pruning files (i.e., we want …\nThe number of runs in the array (ignoring nulls)\nEncoding VTable for computing array statistics.\nFrequency of each trailing zero (nulls are treated as 0)\nThe number of true values in the array (nulls are treated …\nThe uncompressed size of the array in bytes\nClear the value of the statistic\nClear the stat stat
from the set.\nComputes the value of the stat if it’s not present\nCompute all the requested statistics (if not already …\nCompute the requested statistic. Can return additional …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the value of the statistic only if it’s present\nWhether the statistic has the same dtype as the array it’…\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nWhether the statistic is commutative (i.e., whether …\nMerge stats set other
into self
, with the semantic …\nMerge stats set other
into self
, with no assumption on …\nSpecialized constructor for the case where the StatsSet …\nSet the value of the statistic\nSet the stat stat
to value
.\nGet all existing statistics\nA stream of array chunks along with a DType.\nAn adapter for a stream of array chunks to implement an …\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nAll items are null\nAll items are valid\nSpecified items are null\nThe DType
of the underlying validity array (if it exists).\nItems can’t be null\nValidity information for an array\nLogically & two Validity values of the same length\nIf Validity is Validity::Array
, returns a reference to the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nIf Validity is Validity::Array
, returns the array, …\nConvert into a nullable variant\nReturns whether the index
item is valid.\nAn Array encoding must declare which DTypes it can be …\nReturns the extension logical DType
.\nReturn a field’s array by index\nReturn a field’s array by name\nReturns the underlying ArrayData
, without the ExtDType
.\nVisit a child of this array.\nUtility for visiting Array validity.")
\ No newline at end of file
+searchState.loadedDescShard("vortex_array", 0, "Vortex crate containing core logic for encoding and memory …\nA depth-first pre-order iterator over a ArrayData.\nA central type for all Vortex arrays, which are known …\nDynamic trait used to represent opaque owned Array metadata\nCollects together the behavior of an array.\nThe set of canonical array encodings, also the set of …\nA mapping between an encoding’s ID to an EncodingRef
, …\nConsume self
and turn it into an ArrayData
infallibly.\nTrait for types that can be converted from an owned type …\nSupport trait for transmuting an array into the canonical …\nEncoding VTable for canonicalizing an array.\nReturn the buffer offsets and the total length of all …\nAll the built-in encoding schemes and arrays.\nUtilities to work with Arrow
data and types.\nReturn scalar value of this array if the array is constant\nReturns a Vec of Arrays with all the array’s child …\nCompute kernels on top of Vortex Arrays.\nCount the number of cumulative buffers encoded by self.\nTraits and types to define shared unique encoding …\nReturn the array’s encoding\nRe-exported autogenerated code from the core Vortex …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nMacro to generate all the necessary code for a new type of …\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nConvert a canonical array into its equivalent ArrayRef…\nWhether the array is fully zero-copy to Arrow (including …\nWhether the array is of a canonical encoding.\nReturn whether the array is constant.\nCheck whether the array has any data\nChecks whether array is of a given encoding.\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturns the number of logical elements in the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nGet back the (possibly owned) metadata for the array.\nTotal size of the array in bytes, including all children …\nReturns the number of child arrays\nTraits and utilities to compute and access array …\nArray validity and nullability behavior, used by arrays …\nThis module defines array traits for each Vortex DType.\nTrait for arrays that support iterative access to their …\nIterate over each element of the array, in-order.\nAn occupied entry.\nA vacant entry.\nAn occupied entry.\nA vacant entry.\nThe array encoding\nA slice-able Buffer
containing bit-packed booleans\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nThe array encoding\nAn array wrapper for primitive values that have an …\nThe array encoding\nThe array encoding\nAccess to the underlying views
child array as a slice of …\nReturns a BitChunks
instance which can be used to iterate …\nGet array values as an arrow BooleanBuffer\nAccess internal array buffer\nAccess one of the backing data buffers.\nNumber of raw string data buffers held by this array.\nRetrieve an iterator over the raw data buffers. These are …\nAccess the value bytes child array\nInvokes f
with indexes 0..len
collecting the boolean …\nReturns the number of set bits in this buffer\nRetrieve the extension DType associated with the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCreates a new array of type U8\nCreate a new BoolArray from a set of indices and a length. …\nAccumulate an iterable set of values into our type here.\nReturns the inner Buffer
\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nGet a mutable version of this array.\nConvert array into its internal buffer\nStructEncoding is the canonical form for a DType::Struct …\nReturns the inner Buffer
, consuming self\nConvert the array into a mutable vec of the given type. If …\nConsumes self, returning a tuple containing the DType
, the …\nReturns true if this BooleanBuffer
is empty\nReturns true
if the bit at index i
is set\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturn whether the element at the given index is valid …\nReturns an iterator over the bits in this BooleanBuffer
\nReturns the length of this BooleanBuffer
in bits\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the logical validity of the array.\nReturn the maximum index if indices are present.\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nOptionally downcast an ArrayData
instance to a specific …\nReturn the minimum index if indices are present.\nCreate a new BooleanBuffer
from a Buffer
, an offset
and …\nCreate a new BoolArray from a buffer and nullability.\nCreate a new TemporalArray
holding either i32 day offsets, …\nCreate a new BooleanBuffer
of length
where all values are …\nCreate a new TemporalArray
holding one of the following …\nCreate a new TemporalArray
holding Arrow spec compliant …\nCreate a new BooleanBuffer
of length
where all values are …\nCreate a new view over bytes stored in a block.\nReturns the offset of this BooleanBuffer
in bits\nReturn a new StructArray with the given projection applied.\nReturns true if this BooleanBuffer
is equal to other
, …\nReturn indices with the indices_offset applied.\nReturn the resolved indices as a Vec<usize>
.\nReturns the Scalar
value of this constant array.\nReturns an iterator over the set bit positions in this …\nReturns a BitSliceIterator
yielding contiguous ranges of …\nSlices this BooleanBuffer
by the provided offset
and length
\nReturns a Buffer
containing the sliced contents of this …\nAccess value bytes child array limited to values that are …\nRetrieve the temporal metadata.\nAccess the underlying temporal values in the underlying …\nTry to specialize a generic Vortex array as a …\nCreate a new BoolArray from a buffer and validity metadata.\nReturns the boolean value at index i
.\nReturns the boolean value at index i
.\nReturns the packed values of this BooleanBuffer
not …\nRetrieve a binary view at a specific index.\nAccess to the primitive views array.\nReturns the argument unchanged.\nCalls U::from(self)
.\nA wrapper around a generic Arrow array that can be used as …\nReturns the argument unchanged.\nTry to convert a Vortex DType
into an Arrow DataType
\nConvert a Vortex struct DType to an Arrow Schema.\nCalls U::from(self)
.\nAppend a “null” value to the array.\nAppends n “null” values to the array.\nA generic function to append a scalar to the builder.\nAppend a “zero” value to the array.\nAppends n “zero” values to the array.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCheck that compression did not alter the dtype\nCheck that compression did not alter the length of the …\nEagerly compute certain statistics (i.e., pruning stats …\nVTable for dispatching compute functions to Vortex …\nTrait for filling forward on an array, i.e., replacing …\nImplementation of fill_null for an encoding.\nRepresents the mask argument to a filter function. …\nResult for a found element was found at the given index in …\nOptions for SQL LIKE function\nResult for an element not found, but that could be …\nImplementation of scalar_at for an encoding.\nResult of performing search_sorted on an Array\nSearches for value assuming the array is sorted.\nLimit array to start…stop range\nPoint-wise logical and between two Boolean arrays.\nPoint-wise Kleene logical and between two Boolean arrays.\nImplementation of binary boolean logic operations.\nImplemented for arrays that can be casted to different …\nCompares two arrays and returns a new boolean array with …\nBinary operator implementation for arrays against other …\nGet the false count of the mask.\nArray function that returns new arrays a non-null value is …\nFill null values with given desired value. Resulting array …\nReturn a new array by applying a boolean predicate to …\nFilter an array by the provided predicate.\nFilter an array with a given mask.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCreate a new FilterMask where the given indices are set.\nPartialOrd of the value at index idx
with elem
. For …\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nLogically invert a boolean array.\nLogically invert a boolean array. Converts true -> false, …\nInvert a boolean array. Converts true -> false, false -> …\nReturns the best iterator based on a selectivity threshold.\nPerform SQL left LIKE right\nPerform a SQL LIKE operation on two arrays.\nPoint-wise logical or between two Boolean arrays.\nPoint-wise Kleene logical or between two Boolean arrays.\nReturn the selectivity of the range of true values of the …\nSingle item indexing on Vortex arrays.\nfind function is used to find the element if it exists, if …\nPerform a search over an ordered array.\nSearch for many elements in the array.\nBulk search for many values.\nBulk search for many values.\nPerform a search over an ordered array.\nReturn the selectivity of the full mask.\nReturn a zero-copy slice of an array, between start
…\nReturn a zero-copy slice of an array, between start
…\nPerform zero-copy slicing of an array.\nBroadcast subtraction of scalar from Vortex array.\nChange the sides of the operator, where changing lhs and …\nTake a set of indices from an array. This often forces …\nGet the canonical representation of the mask.\nConvert search result into an index suitable for searching …\nConvert search result to an index only if the value have …\nExtract index out of search result regardless of whether …\nConvert search result into an index suitable for searching …\nGet the true count of the mask.\nAttempt to cast an array to a desired DType.\nMarker trait for array encodings with their associated …\nEncodingId is a unique name and numerical code of the array\nObject-safe encoding trait for an array.\nReturns the argument unchanged.\nEncoding ID constants for all Vortex-provided encodings\nCalls U::from(self)
.\nAn encoding of an array that we cannot interpret.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nVerifies that a buffer of bytes contains a Array
and …\nAssumes, without verification, that a buffer of bytes …\nVerifies, with the given options, that a buffer of bytes …\nVerifies that a buffer of bytes contains a size prefixed …\nAssumes, without verification, that a buffer of bytes …\nVerifies, with the given verifier options, that a buffer of\nReturns the variant’s name or “” if unknown.\nDefine the basic behavior required for batched iterators\nA stream of array chunks along with a DType. Analogous to …\nIterate over batches of compressed arrays, should help …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nSafety\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nTotal size of the array in bytes, including all children …\nA helper for working with patched arrays.\nFilter the patches by a mask, resulting in new patches for …\nReturns the argument unchanged.\nReturns the argument unchanged.\nGet the patched value at a given index if it exists.\nCalls U::from(self)
.\nCalls U::from(self)
.\nReturns the maximum patch index\nReturns the minimum patch index\nReturn the search_sorted result for the given target …\nSlice the patches by a range of the patched array.\nTake the indices from the patches.\nFrequency of each bit width (nulls are treated as 0)\nWhether all values are the same (nulls are not equal to …\nWhether the non-null values in the array are sorted (i.e., …\nWhether the non-null values in the array are strictly …\nThe maximum value in the array (ignoring nulls, unless all …\nThe minimum value in the array (ignoring nulls, unless all …\nThe number of null values in the array\nStatistics that are used for pruning files (i.e., we want …\nThe number of runs in the array (ignoring nulls)\nEncoding VTable for computing array statistics.\nFrequency of each trailing zero (nulls are treated as 0)\nThe number of true values in the array (nulls are treated …\nThe uncompressed size of the array in bytes\nClear the value of the statistic\nClear the stat stat
from the set.\nComputes the value of the stat if it’s not present\nCompute all the requested statistics (if not already …\nCompute the requested statistic. Can return additional …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the value of the statistic only if it’s present\nWhether the statistic has the same dtype as the array it’…\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nWhether the statistic is commutative (i.e., whether …\nMerge stats set other
into self
, with the semantic …\nMerge stats set other
into self
, with no assumption on …\nSpecialized constructor for the case where the StatsSet …\nSet the value of the statistic\nSet the stat stat
to value
.\nGet all existing statistics\nA stream of array chunks along with a DType.\nAn adapter for a stream of array chunks to implement an …\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nAll items are null\nAll items are valid\nSpecified items are null\nThe DType
of the underlying validity array (if it exists).\nItems can’t be null\nValidity information for an array\nLogically & two Validity values of the same length\nIf Validity is Validity::Array
, returns a reference to the …\nReturns the argument unchanged.\nReturns the argument unchanged.\nReturns the argument unchanged.\nCalls U::from(self)
.\nCalls U::from(self)
.\nCalls U::from(self)
.\nIf Validity is Validity::Array
, returns the array, …\nConvert into a nullable variant\nReturns whether the index
item is valid.\nAn Array encoding must declare which DTypes it can be …\nReturns the extension logical DType
.\nReturn a field’s array by index\nReturn a field’s array by name\nReturns the underlying ArrayData
, without the ExtDType
.\nVisit a child of this array.\nUtility for visiting Array patches.\nUtility for visiting Array validity.")
\ No newline at end of file
diff --git a/docs/rust/doc/src-files.js b/docs/rust/doc/src-files.js
index 724f2a23bf..2b530b3abf 100644
--- a/docs/rust/doc/src-files.js
+++ b/docs/rust/doc/src-files.js
@@ -1,3 +1,3 @@
-var srcIndex = new Map(JSON.parse('[["pyvortex",["",[],["array.rs","compress.rs","dataset.rs","dtype.rs","encode.rs","expr.rs","io.rs","lib.rs","object_store_urls.rs","python_repr.rs","scalar.rs"]]],["vortex",["",[],["lib.rs"]]],["vortex_alp",["",[["alp",[["compute",[],["mod.rs"]]],["array.rs","compress.rs","mod.rs"]],["alp_rd",[["compute",[],["filter.rs","mod.rs","scalar_at.rs","slice.rs","take.rs"]]],["array.rs","mod.rs","variants.rs"]]],["lib.rs"]]],["vortex_array",["",[["aliases",[],["hash_map.rs","hash_set.rs","mod.rs"]],["array",[["bool",[["compute",[],["fill_forward.rs","fill_null.rs","filter.rs","flatten.rs","invert.rs","mod.rs","scalar_at.rs","slice.rs","take.rs"]]],["mod.rs","stats.rs"]],["chunked",[["compute",[],["boolean.rs","compare.rs","fill_null.rs","filter.rs","invert.rs","mod.rs","scalar_at.rs","slice.rs","take.rs"]]],["canonical.rs","mod.rs","stats.rs","variants.rs"]],["constant",[["compute",[],["boolean.rs","compare.rs","invert.rs","mod.rs","search_sorted.rs"]]],["canonical.rs","mod.rs","variants.rs"]],["datetime",[],["mod.rs"]],["extension",[["compute",[],["compare.rs","mod.rs"]]],["mod.rs"]],["list",[["compute",[],["mod.rs"]]],["mod.rs"]],["null",[],["compute.rs","mod.rs"]],["primitive",[["compute",[],["cast.rs","fill.rs","filter.rs","mod.rs","scalar_at.rs","search_sorted.rs","slice.rs","subtract_scalar.rs","take.rs"]]],["accessor.rs","mod.rs","stats.rs"]],["sparse",[["compute",[],["invert.rs","mod.rs","slice.rs","take.rs"]]],["canonical.rs","mod.rs","variants.rs"]],["struct_",[],["compute.rs","mod.rs"]],["varbin",[["compute",[],["filter.rs","mod.rs","slice.rs","take.rs"]]],["accessor.rs","array.rs","arrow.rs","builder.rs","flatten.rs","mod.rs","stats.rs","variants.rs"]],["varbinview",[["compute",[],["mod.rs"]]],["accessor.rs","mod.rs","stats.rs","variants.rs"]]],["arbitrary.rs","from.rs","mod.rs"]],["arrow",[],["array.rs","datum.rs","dtype.rs","mod.rs","recordbatch.rs","wrappers.rs"]],["builders",[],["binary.rs","bool.rs","extension.rs","mod.rs","null.rs","primitive.rs","struct_.rs","utf8.rs"]],["compute",[],["boolean.rs","cast.rs","compare.rs","fill_forward.rs","fill_null.rs","filter.rs","invert.rs","like.rs","mod.rs","scalar_at.rs","scalar_subtract.rs","search_sorted.rs","slice.rs","take.rs"]],["data",[],["mod.rs","owned.rs","viewed.rs"]],["encoding",[],["mod.rs","opaque.rs"]],["iter",[],["adapter.rs","ext.rs","mod.rs"]],["stats",[],["flatbuffers.rs","mod.rs","statsset.rs"]],["stream",[],["adapter.rs","ext.rs","mod.rs","take_rows.rs"]]],["accessor.rs","canonical.rs","compress.rs","context.rs","lib.rs","macros.rs","metadata.rs","nbytes.rs","tree.rs","validity.rs","variants.rs","visitor.rs"]]],["vortex_buffer",["",[],["flexbuffers.rs","io_buf.rs","lib.rs","string.rs"]]],["vortex_bytebool",["",[],["array.rs","compute.rs","lib.rs","stats.rs"]]],["vortex_datafusion",["",[["memory",[],["exec.rs","mod.rs","plans.rs","provider.rs","statistics.rs","stream.rs"]],["persistent",[],["config.rs","execution.rs","format.rs","mod.rs","opener.rs","statistics.rs"]]],["lib.rs"]]],["vortex_datetime_dtype",["",[],["arrow.rs","lib.rs","temporal.rs","unit.rs"]]],["vortex_datetime_parts",["",[["compute",[],["filter.rs","mod.rs","take.rs"]]],["array.rs","compress.rs","lib.rs","stats.rs"]]],["vortex_dict",["",[["compute",[],["compare.rs","like.rs","mod.rs"]]],["array.rs","compress.rs","lib.rs","stats.rs","variants.rs"]]],["vortex_dtype",["",[["serde",[["flatbuffers",[],["mod.rs","project.rs"]]],["mod.rs","proto.rs","serde.rs"]]],["arbitrary.rs","dtype.rs","extension.rs","field.rs","lib.rs","nullability.rs","ptype.rs"]]],["vortex_error",["",[],["lib.rs","python.rs"]]],["vortex_expr",["",[],["binary.rs","column.rs","datafusion.rs","identity.rs","lib.rs","like.rs","literal.rs","not.rs","operators.rs","select.rs"]]],["vortex_fastlanes",["",[["bitpacking",[["compute",[],["filter.rs","mod.rs","scalar_at.rs","search_sorted.rs","slice.rs","take.rs"]]],["compress.rs","mod.rs"]],["delta",[],["compress.rs","compute.rs","mod.rs"]],["for",[],["compress.rs","compute.rs","mod.rs"]]],["lib.rs"]]],["vortex_file",["",[["read",[["builder",[],["initial_read.rs","mod.rs"]],["layouts",[],["chunked.rs","columnar.rs","flat.rs","mod.rs"]]],["buffered.rs","cache.rs","context.rs","expr_project.rs","filtering.rs","mask.rs","metadata.rs","mod.rs","projection.rs","reader.rs","recordbatchreader.rs","splits.rs","stream.rs"]],["write",[],["layout.rs","mod.rs","postscript.rs","stats_accumulator.rs","writer.rs"]]],["dtype_reader.rs","lib.rs","pruning.rs"]]],["vortex_flatbuffers",["",[["generated",[],["array.rs","dtype.rs","footer.rs","message.rs","scalar.rs"]]],["lib.rs"]]],["vortex_fsst",["",[["compute",[],["compare.rs","mod.rs"]]],["array.rs","canonical.rs","compress.rs","lib.rs"]]],["vortex_fuzz",["",[],["filter.rs","lib.rs","search_sorted.rs","slice.rs","sort.rs","take.rs"]]],["vortex_io",["",[["dispatcher",[],["compio.rs","mod.rs","tokio.rs"]]],["aligned.rs","buf.rs","compio.rs","lib.rs","limit.rs","object_store.rs","offset.rs","read.rs","read_ranges.rs","tokio.rs","write.rs"]]],["vortex_ipc",["",[["messages",[],["mod.rs","reader.rs","writer.rs"]],["stream_reader",[],["mod.rs"]],["stream_writer",[],["mod.rs"]]],["lib.rs"]]],["vortex_proto",["",[["generated",[],["vortex.dtype.rs","vortex.expr.rs","vortex.scalar.rs"]]],["lib.rs"]]],["vortex_roaring",["",[["boolean",[],["compress.rs","compute.rs","mod.rs","stats.rs"]],["integer",[],["compress.rs","compute.rs","mod.rs"]]],["lib.rs"]]],["vortex_runend",["",[["compute",[],["compare.rs","invert.rs","mod.rs"]]],["array.rs","compress.rs","iter.rs","lib.rs"]]],["vortex_runend_bool",["",[["compute",[],["invert.rs","mod.rs"]]],["array.rs","compress.rs","lib.rs"]]],["vortex_sampling_compressor",["",[["compressors",[],["alp.rs","alp_rd.rs","bitpacked.rs","chunked.rs","constant.rs","date_time_parts.rs","delta.rs","dict.rs","for.rs","fsst.rs","list.rs","mod.rs","roaring_bool.rs","roaring_int.rs","runend.rs","runend_bool.rs","sparse.rs","struct_.rs","varbin.rs","zigzag.rs"]]],["arbitrary.rs","constants.rs","downscale.rs","lib.rs","sampling.rs","sampling_compressor.rs"]]],["vortex_scalar",["",[["serde",[],["flatbuffers.rs","mod.rs","proto.rs","serde.rs"]]],["arbitrary.rs","arrow.rs","binary.rs","bool.rs","datafusion.rs","display.rs","extension.rs","lib.rs","list.rs","null.rs","primitive.rs","pvalue.rs","scalar_type.rs","struct_.rs","utf8.rs","value.rs"]]],["vortex_zigzag",["",[],["array.rs","compress.rs","compute.rs","lib.rs"]]]]'));
+var srcIndex = new Map(JSON.parse('[["pyvortex",["",[],["array.rs","compress.rs","dataset.rs","dtype.rs","encode.rs","expr.rs","io.rs","lib.rs","object_store_urls.rs","python_repr.rs","scalar.rs"]]],["vortex",["",[],["lib.rs"]]],["vortex_alp",["",[["alp",[["compute",[],["mod.rs"]]],["array.rs","compress.rs","mod.rs"]],["alp_rd",[["compute",[],["filter.rs","mod.rs","scalar_at.rs","slice.rs","take.rs"]]],["array.rs","mod.rs","variants.rs"]]],["lib.rs"]]],["vortex_array",["",[["aliases",[],["hash_map.rs","hash_set.rs","mod.rs"]],["array",[["bool",[["compute",[],["fill_forward.rs","fill_null.rs","filter.rs","flatten.rs","invert.rs","mod.rs","scalar_at.rs","slice.rs","take.rs"]]],["mod.rs","patch.rs","stats.rs"]],["chunked",[["compute",[],["boolean.rs","compare.rs","fill_null.rs","filter.rs","invert.rs","mod.rs","scalar_at.rs","slice.rs","take.rs"]]],["canonical.rs","mod.rs","stats.rs","variants.rs"]],["constant",[["compute",[],["boolean.rs","compare.rs","invert.rs","mod.rs","search_sorted.rs"]]],["canonical.rs","mod.rs","variants.rs"]],["datetime",[],["mod.rs"]],["extension",[["compute",[],["compare.rs","mod.rs"]]],["mod.rs"]],["list",[["compute",[],["mod.rs"]]],["mod.rs"]],["null",[],["compute.rs","mod.rs"]],["primitive",[["compute",[],["cast.rs","fill.rs","filter.rs","mod.rs","scalar_at.rs","search_sorted.rs","slice.rs","subtract_scalar.rs","take.rs"]]],["accessor.rs","mod.rs","patch.rs","stats.rs"]],["sparse",[["compute",[],["invert.rs","mod.rs","slice.rs","take.rs"]]],["canonical.rs","mod.rs","variants.rs"]],["struct_",[],["compute.rs","mod.rs"]],["varbin",[["compute",[],["filter.rs","mod.rs","slice.rs","take.rs"]]],["accessor.rs","array.rs","arrow.rs","builder.rs","flatten.rs","mod.rs","stats.rs","variants.rs"]],["varbinview",[["compute",[],["mod.rs"]]],["accessor.rs","mod.rs","stats.rs","variants.rs"]]],["arbitrary.rs","from.rs","mod.rs"]],["arrow",[],["array.rs","datum.rs","dtype.rs","mod.rs","recordbatch.rs","wrappers.rs"]],["builders",[],["binary.rs","bool.rs","extension.rs","mod.rs","null.rs","primitive.rs","struct_.rs","utf8.rs"]],["compute",[],["boolean.rs","cast.rs","compare.rs","fill_forward.rs","fill_null.rs","filter.rs","invert.rs","like.rs","mod.rs","scalar_at.rs","scalar_subtract.rs","search_sorted.rs","slice.rs","take.rs"]],["data",[],["mod.rs","owned.rs","viewed.rs"]],["encoding",[],["mod.rs","opaque.rs"]],["iter",[],["adapter.rs","ext.rs","mod.rs"]],["stats",[],["flatbuffers.rs","mod.rs","statsset.rs"]],["stream",[],["adapter.rs","ext.rs","mod.rs","take_rows.rs"]]],["accessor.rs","canonical.rs","compress.rs","context.rs","lib.rs","macros.rs","metadata.rs","nbytes.rs","patches.rs","tree.rs","validity.rs","variants.rs","visitor.rs"]]],["vortex_buffer",["",[],["flexbuffers.rs","io_buf.rs","lib.rs","string.rs"]]],["vortex_bytebool",["",[],["array.rs","compute.rs","lib.rs","stats.rs"]]],["vortex_datafusion",["",[["memory",[],["exec.rs","mod.rs","plans.rs","provider.rs","statistics.rs","stream.rs"]],["persistent",[],["config.rs","execution.rs","format.rs","mod.rs","opener.rs","statistics.rs"]]],["lib.rs"]]],["vortex_datetime_dtype",["",[],["arrow.rs","lib.rs","temporal.rs","unit.rs"]]],["vortex_datetime_parts",["",[["compute",[],["filter.rs","mod.rs","take.rs"]]],["array.rs","compress.rs","lib.rs","stats.rs"]]],["vortex_dict",["",[["compute",[],["compare.rs","like.rs","mod.rs"]]],["array.rs","compress.rs","lib.rs","stats.rs","variants.rs"]]],["vortex_dtype",["",[["serde",[["flatbuffers",[],["mod.rs","project.rs"]]],["mod.rs","proto.rs","serde.rs"]]],["arbitrary.rs","dtype.rs","extension.rs","field.rs","lib.rs","nullability.rs","ptype.rs"]]],["vortex_error",["",[],["lib.rs","python.rs"]]],["vortex_expr",["",[],["binary.rs","column.rs","datafusion.rs","identity.rs","lib.rs","like.rs","literal.rs","not.rs","operators.rs","select.rs"]]],["vortex_fastlanes",["",[["bitpacking",[["compute",[],["filter.rs","mod.rs","scalar_at.rs","search_sorted.rs","slice.rs","take.rs"]]],["compress.rs","mod.rs"]],["delta",[],["compress.rs","compute.rs","mod.rs"]],["for",[],["compress.rs","compute.rs","mod.rs"]]],["lib.rs"]]],["vortex_file",["",[["read",[["builder",[],["initial_read.rs","mod.rs"]],["layouts",[],["chunked.rs","columnar.rs","flat.rs","mod.rs"]]],["buffered.rs","cache.rs","context.rs","expr_project.rs","filtering.rs","mask.rs","metadata.rs","mod.rs","projection.rs","reader.rs","recordbatchreader.rs","splits.rs","stream.rs"]],["write",[],["layout.rs","mod.rs","postscript.rs","stats_accumulator.rs","writer.rs"]]],["dtype_reader.rs","lib.rs","pruning.rs"]]],["vortex_flatbuffers",["",[["generated",[],["array.rs","dtype.rs","footer.rs","message.rs","scalar.rs"]]],["lib.rs"]]],["vortex_fsst",["",[["compute",[],["compare.rs","mod.rs"]]],["array.rs","canonical.rs","compress.rs","lib.rs"]]],["vortex_fuzz",["",[],["filter.rs","lib.rs","search_sorted.rs","slice.rs","sort.rs","take.rs"]]],["vortex_io",["",[["dispatcher",[],["compio.rs","mod.rs","tokio.rs"]]],["aligned.rs","buf.rs","compio.rs","lib.rs","limit.rs","object_store.rs","offset.rs","read.rs","read_ranges.rs","tokio.rs","write.rs"]]],["vortex_ipc",["",[["messages",[],["mod.rs","reader.rs","writer.rs"]],["stream_reader",[],["mod.rs"]],["stream_writer",[],["mod.rs"]]],["lib.rs"]]],["vortex_proto",["",[["generated",[],["vortex.dtype.rs","vortex.expr.rs","vortex.scalar.rs"]]],["lib.rs"]]],["vortex_roaring",["",[["boolean",[],["compress.rs","compute.rs","mod.rs","stats.rs"]],["integer",[],["compress.rs","compute.rs","mod.rs"]]],["lib.rs"]]],["vortex_runend",["",[["compute",[],["compare.rs","invert.rs","mod.rs"]]],["array.rs","compress.rs","iter.rs","lib.rs"]]],["vortex_runend_bool",["",[["compute",[],["invert.rs","mod.rs"]]],["array.rs","compress.rs","lib.rs"]]],["vortex_sampling_compressor",["",[["compressors",[],["alp.rs","alp_rd.rs","bitpacked.rs","chunked.rs","constant.rs","date_time_parts.rs","delta.rs","dict.rs","for.rs","fsst.rs","list.rs","mod.rs","roaring_bool.rs","roaring_int.rs","runend.rs","runend_bool.rs","sparse.rs","struct_.rs","varbin.rs","zigzag.rs"]]],["arbitrary.rs","constants.rs","downscale.rs","lib.rs","sampling.rs","sampling_compressor.rs"]]],["vortex_scalar",["",[["serde",[],["flatbuffers.rs","mod.rs","proto.rs","serde.rs"]]],["arbitrary.rs","arrow.rs","binary.rs","bool.rs","datafusion.rs","display.rs","extension.rs","lib.rs","list.rs","null.rs","primitive.rs","pvalue.rs","scalar_type.rs","struct_.rs","utf8.rs","value.rs"]]],["vortex_zigzag",["",[],["array.rs","compress.rs","compute.rs","lib.rs"]]]]'));
createSrcSidebar();
-//{"start":36,"fragment_lengths":[162,30,228,2206,78,74,224,80,128,133,203,48,148,274,451,119,113,97,208,148,108,154,122,104,410,289,75]}
\ No newline at end of file
+//{"start":36,"fragment_lengths":[162,30,228,2241,78,74,224,80,128,133,203,48,148,274,451,119,113,97,208,148,108,154,122,104,410,289,75]}
\ No newline at end of file
diff --git a/docs/rust/doc/src/vortex_alp/alp/array.rs.html b/docs/rust/doc/src/vortex_alp/alp/array.rs.html
index c679c1d544..04f28c9360 100644
--- a/docs/rust/doc/src/vortex_alp/alp/array.rs.html
+++ b/docs/rust/doc/src/vortex_alp/alp/array.rs.html
@@ -150,20 +150,12 @@
150
151
152
-153
-154
-155
-156
-157
-158
-159
-160
-161
use std::fmt::{Debug, Display};
use serde::{Deserialize, Serialize};
use vortex_array::array::PrimitiveArray;
use vortex_array::encoding::ids;
+use vortex_array::patches::{Patches, PatchesMetadata};
use vortex_array::stats::StatisticsVTable;
use vortex_array::validity::{ArrayValidity, LogicalValidity, ValidityVTable};
use vortex_array::variants::{PrimitiveArrayTrait, VariantsVTable};
@@ -182,6 +174,7 @@
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ALPMetadata {
exponents: Exponents,
+ patches: Option<PatchesMetadata>,
}
impl Display for ALPMetadata {
@@ -194,7 +187,7 @@
pub fn try_new(
encoded: ArrayData,
exponents: Exponents,
- patches: Option<ArrayData>,
+ patches: Option<Patches>,
) -> VortexResult<Self> {
let dtype = match encoded.dtype() {
DType::Primitive(PType::I32, nullability) => DType::Primitive(PType::F32, *nullability),
@@ -203,35 +196,23 @@
};
let length = encoded.len();
- if let Some(parray) = patches.as_ref() {
- if parray.len() != length {
- vortex_bail!(
- "Mismatched length in ALPArray between encoded({}) {} and it's patches({}) {}",
- encoded.encoding().id(),
- encoded.len(),
- parray.encoding().id(),
- parray.len()
- )
- }
- }
let mut children = Vec::with_capacity(2);
children.push(encoded);
- if let Some(patch) = patches {
- if !patch.dtype().eq_ignore_nullability(&dtype) || !patch.dtype().is_nullable() {
- vortex_bail!(
- "ALP patches dtype, {}, must be nullable version of array dtype, {}",
- patch.dtype(),
- dtype,
- );
- }
- children.push(patch);
+ if let Some(patches) = &patches {
+ children.push(patches.indices().clone());
+ children.push(patches.values().clone());
}
+ let patches = patches
+ .as_ref()
+ .map(|p| p.to_metadata(length, &dtype))
+ .transpose()?;
+
Self::try_from_parts(
dtype,
length,
- ALPMetadata { exponents },
+ ALPMetadata { exponents, patches },
children.into(),
Default::default(),
)
@@ -256,11 +237,17 @@
self.metadata().exponents
}
- pub fn patches(&self) -> Option<ArrayData> {
- (self.as_ref().nchildren() > 1).then(|| {
- self.as_ref()
- .child(1, &self.patches_dtype(), self.len())
- .vortex_expect("Missing patches child in ALPArray")
+ pub fn patches(&self) -> Option<Patches> {
+ self.metadata().patches.as_ref().map(|p| {
+ Patches::new(
+ self.len(),
+ self.as_ref()
+ .child(1, &p.indices_dtype(), p.len())
+ .vortex_expect("ALPArray: patch indices"),
+ self.as_ref()
+ .child(2, self.dtype(), p.len())
+ .vortex_expect("ALPArray: patch values"),
+ )
})
}
@@ -276,11 +263,6 @@
d => vortex_panic!(MismatchedTypes: "f32 or f64", d),
}
}
-
- #[inline]
- fn patches_dtype(&self) -> DType {
- self.dtype().as_nullable()
- }
}
impl ArrayTrait for ALPArray {}
@@ -313,7 +295,7 @@
fn accept(&self, array: &ALPArray, visitor: &mut dyn ArrayVisitor) -> VortexResult<()> {
visitor.visit_child("encoded", &array.encoded())?;
if let Some(patches) = array.patches().as_ref() {
- visitor.visit_child("patches", patches)?;
+ visitor.visit_patches(patches)?;
}
Ok(())
}
diff --git a/docs/rust/doc/src/vortex_alp/alp/compress.rs.html b/docs/rust/doc/src/vortex_alp/alp/compress.rs.html
index 0a2998c29a..c75424b148 100644
--- a/docs/rust/doc/src/vortex_alp/alp/compress.rs.html
+++ b/docs/rust/doc/src/vortex_alp/alp/compress.rs.html
@@ -190,23 +190,14 @@
190
191
192
-193
-194
-195
-196
-197
-198
-199
-200
-201
-202
-
use vortex_array::array::{PrimitiveArray, SparseArray};
+
use vortex_array::array::PrimitiveArray;
+use vortex_array::patches::Patches;
use vortex_array::validity::Validity;
use vortex_array::variants::PrimitiveArrayTrait;
use vortex_array::{ArrayDType, ArrayData, IntoArrayData, IntoArrayVariant};
use vortex_dtype::{NativePType, PType};
-use vortex_error::{vortex_bail, VortexExpect as _, VortexResult};
-use vortex_scalar::{Scalar, ScalarType};
+use vortex_error::{vortex_bail, VortexResult};
+use vortex_scalar::ScalarType;
use crate::alp::{ALPArray, ALPFloat};
use crate::Exponents;
@@ -229,26 +220,27 @@
pub fn alp_encode_components<T>(
values: &PrimitiveArray,
exponents: Option<Exponents>,
-) -> (Exponents, ArrayData, Option<ArrayData>)
+) -> (Exponents, ArrayData, Option<Patches>)
where
T: ALPFloat + NativePType,
T::ALPInt: NativePType,
T: ScalarType,
{
+ let patch_validity = match values.validity() {
+ Validity::NonNullable => Validity::NonNullable,
+ _ => Validity::AllValid,
+ };
let (exponents, encoded, exc_pos, exc) = T::encode(values.maybe_null_slice::<T>(), exponents);
let len = encoded.len();
(
exponents,
PrimitiveArray::from_vec(encoded, values.validity()).into_array(),
(!exc.is_empty()).then(|| {
- SparseArray::try_new(
- PrimitiveArray::from(exc_pos).into_array(),
- PrimitiveArray::from_vec(exc, Validity::AllValid).into_array(),
+ Patches::new(
len,
- Scalar::null_typed::<T>(),
+ PrimitiveArray::from(exc_pos).into_array(),
+ PrimitiveArray::from_vec(exc, patch_validity).into_array(),
)
- .vortex_expect("Failed to create SparseArray for ALP patches")
- .into_array()
}),
)
}
@@ -275,24 +267,12 @@
});
if let Some(patches) = array.patches() {
- patch_decoded(decoded, &patches)
+ decoded.patch(patches)
} else {
Ok(decoded)
}
}
-fn patch_decoded(array: PrimitiveArray, patches: &ArrayData) -> VortexResult<PrimitiveArray> {
- let typed_patches = SparseArray::try_from(patches.clone())?;
-
- match_each_alp_float_ptype!(array.ptype(), |$T| {
- let primitive_values = typed_patches.values().into_primitive()?;
- array.patch(
- &typed_patches.resolved_indices(),
- primitive_values.maybe_null_slice::<$T>(),
- primitive_values.validity())
- })
-}
-
#[cfg(test)]
mod tests {
use core::f64;
diff --git a/docs/rust/doc/src/vortex_alp/alp/compute/mod.rs.html b/docs/rust/doc/src/vortex_alp/alp/compute/mod.rs.html
index 9333b41e02..ea07952004 100644
--- a/docs/rust/doc/src/vortex_alp/alp/compute/mod.rs.html
+++ b/docs/rust/doc/src/vortex_alp/alp/compute/mod.rs.html
@@ -93,11 +93,14 @@
93
94
95
+96
+97
+98
+99
use vortex_array::compute::{
filter, scalar_at, slice, take, ComputeVTable, FilterFn, FilterMask, ScalarAtFn, SliceFn,
TakeFn, TakeOptions,
};
-use vortex_array::validity::ArrayValidity;
use vortex_array::variants::PrimitiveArrayTrait;
use vortex_array::{ArrayDType, ArrayData, IntoArrayData};
use vortex_error::VortexResult;
@@ -126,9 +129,8 @@
impl ScalarAtFn<ALPArray> for ALPEncoding {
fn scalar_at(&self, array: &ALPArray, index: usize) -> VortexResult<Scalar> {
if let Some(patches) = array.patches() {
- if patches.is_valid(index) {
- // We need to make sure the value is actually in the patches array
- return scalar_at(&patches, index);
+ if let Some(patch) = patches.get_patched(index)? {
+ return Ok(patch);
}
}
@@ -157,8 +159,9 @@
array.exponents(),
array
.patches()
- .map(|p| take(&p, indices, options))
- .transpose()?,
+ .map(|p| p.take(indices))
+ .transpose()?
+ .flatten(),
)?
.into_array())
}
@@ -169,7 +172,11 @@
Ok(ALPArray::try_new(
slice(array.encoded(), start, end)?,
array.exponents(),
- array.patches().map(|p| slice(&p, start, end)).transpose()?,
+ array
+ .patches()
+ .map(|p| p.slice(start, end))
+ .transpose()?
+ .flatten(),
)?
.into_array())
}
@@ -179,8 +186,9 @@
fn filter(&self, array: &ALPArray, mask: FilterMask) -> VortexResult<ArrayData> {
let patches = array
.patches()
- .map(|p| filter(&p, mask.clone()))
- .transpose()?;
+ .map(|p| p.filter(mask.clone()))
+ .transpose()?
+ .flatten();
Ok(
ALPArray::try_new(filter(&array.encoded(), mask)?, array.exponents(), patches)?
diff --git a/docs/rust/doc/src/vortex_alp/alp_rd/array.rs.html b/docs/rust/doc/src/vortex_alp/alp_rd/array.rs.html
index 0987dcd32e..de643b7b00 100644
--- a/docs/rust/doc/src/vortex_alp/alp_rd/array.rs.html
+++ b/docs/rust/doc/src/vortex_alp/alp_rd/array.rs.html
@@ -500,7 +500,7 @@
let left_parts_exceptions = SparseArray::try_from(left_parts_exceptions)
.vortex_expect("ALPRDArray: exceptions must be SparseArray encoded");
exc_pos = left_parts_exceptions
- .resolved_indices()
+ .resolved_indices_usize()
.into_iter()
.map(|v| v as _)
.collect();
diff --git a/docs/rust/doc/src/vortex_array/array/bool/mod.rs.html b/docs/rust/doc/src/vortex_array/array/bool/mod.rs.html
index 4bd03fea9a..aa9ef2d8a0 100644
--- a/docs/rust/doc/src/vortex_array/array/bool/mod.rs.html
+++ b/docs/rust/doc/src/vortex_array/array/bool/mod.rs.html
@@ -254,74 +254,16 @@
254
255
256
-257
-258
-259
-260
-261
-262
-263
-264
-265
-266
-267
-268
-269
-270
-271
-272
-273
-274
-275
-276
-277
-278
-279
-280
-281
-282
-283
-284
-285
-286
-287
-288
-289
-290
-291
-292
-293
-294
-295
-296
-297
-298
-299
-300
-301
-302
-303
-304
-305
-306
-307
-308
-309
-310
-311
-312
-313
use std::fmt::{Debug, Display};
use std::sync::Arc;
use arrow_array::BooleanArray;
use arrow_buffer::{BooleanBufferBuilder, MutableBuffer};
use itertools::Itertools;
-use num_traits::AsPrimitive;
use serde::{Deserialize, Serialize};
use vortex_buffer::Buffer;
use vortex_dtype::{DType, Nullability};
-use vortex_error::{vortex_bail, VortexExpect as _, VortexResult};
+use vortex_error::{VortexExpect as _, VortexResult};
use crate::encoding::ids;
use crate::stats::StatsSet;
@@ -333,6 +275,7 @@
};
pub mod compute;
+mod patch;
mod stats;
// Re-export the BooleanBuffer type on our API surface.
@@ -448,34 +391,6 @@
.try_into()
}
- pub fn patch<P: AsPrimitive<usize>>(
- self,
- positions: &[P],
- values: BoolArray,
- ) -> VortexResult<Self> {
- if positions.len() != values.len() {
- vortex_bail!(
- "Positions and values passed to patch had different lengths {} and {}",
- positions.len(),
- values.len()
- );
- }
- if let Some(last_pos) = positions.last() {
- if last_pos.as_() >= self.len() {
- vortex_bail!(OutOfBounds: last_pos.as_(), 0, self.len())
- }
- }
-
- let len = self.len();
- let result_validity = self.validity().patch(len, positions, values.validity())?;
- let (mut own_values, bit_offset) = self.into_boolean_builder();
- for (idx, value) in positions.iter().zip_eq(values.boolean_buffer().iter()) {
- own_values.set_bit(idx.as_() + bit_offset, value);
- }
-
- Self::try_new(own_values.finish().slice(bit_offset, len), result_validity)
- }
-
/// Create a new BoolArray from a set of indices and a length.
/// All indices must be less than the length.
pub fn from_indices<I: IntoIterator<Item = usize>>(length: usize, indices: I) -> Self {
@@ -548,12 +463,10 @@
#[cfg(test)]
mod tests {
- use arrow_buffer::BooleanBuffer;
-
use crate::array::BoolArray;
- use crate::compute::{scalar_at, slice};
+ use crate::compute::scalar_at;
use crate::validity::Validity;
- use crate::{IntoArrayData, IntoArrayVariant};
+ use crate::IntoArrayData;
#[test]
fn bool_array() {
@@ -596,32 +509,5 @@
let scalar = scalar_at(&arr, 4).unwrap();
assert!(scalar.is_null());
}
-
- #[test]
- fn patch_sliced_bools() {
- let arr = BoolArray::from(BooleanBuffer::new_set(12));
- let sliced = slice(arr, 4, 12).unwrap();
- let (values, offset) = sliced.into_bool().unwrap().into_boolean_builder();
- assert_eq!(offset, 4);
- assert_eq!(values.as_slice(), &[255, 15]);
- }
-
- #[test]
- fn patch_sliced_bools_offset() {
- let arr = BoolArray::from(BooleanBuffer::new_set(15));
- let sliced = slice(arr, 4, 15).unwrap();
- let (values, offset) = sliced.into_bool().unwrap().into_boolean_builder();
- assert_eq!(offset, 4);
- assert_eq!(values.as_slice(), &[255, 127]);
- }
-
- #[test]
- fn patch_sliced_bools_even() {
- let arr = BoolArray::from(BooleanBuffer::new_set(31));
- let sliced = slice(arr, 8, 24).unwrap();
- let (values, offset) = sliced.into_bool().unwrap().into_boolean_builder();
- assert_eq!(offset, 0);
- assert_eq!(values.as_slice(), &[255, 255]);
- }
}