|
sparrow 2.4.0
C++20 idiomatic APIs for the Apache Arrow Columnar Format
|
CRTP base class for all list array implementations. More...
#include <list_array.hpp>
Public Member Functions | |
| constexpr const array * | raw_flat_array () const |
| Gets read-only access to the underlying flat array. | |
| constexpr array * | raw_flat_array () |
| Gets mutable access to the underlying flat array. | |
| template<std::input_iterator InputIt> requires std::convertible_to<typename std::iterator_traits<InputIt>::value_type, list_value> | |
| constexpr auto | insert_values (const_value_iterator pos, InputIt first, InputIt last) -> value_iterator |
Public Member Functions inherited from sparrow::array_bitmap_base_impl< D, true > | |
| constexpr auto | insert_bitmap (const_bitmap_iterator pos, InputIt first, InputIt last) -> bitmap_iterator is_mutable |
| constexpr auto | insert_bitmap (const_bitmap_iterator pos, InputIt first, InputIt last) -> bitmap_iterator is_mutable |
Protected Member Functions | |
| list_array_crtp_base (arrow_proxy proxy) | |
| Constructs list array base from Arrow proxy. | |
| constexpr | list_array_crtp_base (const self_type &) |
| Copy constructor. | |
| constexpr list_array_crtp_base & | operator= (const self_type &) |
| Copy assignment operator. | |
| constexpr | list_array_crtp_base (self_type &&) noexcept=default |
| constexpr list_array_crtp_base & | operator= (self_type &&) noexcept=default |
| constexpr void | throw_if_sliced_for_mutation (const char *operation) const |
| Throws if a mutating operation is attempted on a sliced array. | |
| constexpr value_iterator | value_begin () |
| constexpr value_iterator | value_end () |
| constexpr const_value_iterator | value_cbegin () const |
| constexpr const_value_iterator | value_cend () const |
| constexpr void | insert_flat_elements (size_type flat_pos, const list_value &value, size_type count) |
| constexpr void | erase_flat_elements (size_type flat_begin, size_type flat_count) |
Protected Member Functions inherited from sparrow::array_bitmap_base_impl< D, true > | |
| array_bitmap_base_impl (arrow_proxy proxy) | |
| Constructs array bitmap base from Arrow proxy. | |
| constexpr | array_bitmap_base_impl (const array_bitmap_base_impl &) |
| Copy constructor. | |
| constexpr array_bitmap_base_impl & | operator= (const array_bitmap_base_impl &) |
| Copy assignment operator. | |
| constexpr | array_bitmap_base_impl (array_bitmap_base_impl &&) noexcept=default |
| constexpr array_bitmap_base_impl & | operator= (array_bitmap_base_impl &&) noexcept=default |
| constexpr bitmap_type & | get_bitmap () |
| Gets mutable reference to the validity bitmap. | |
| constexpr const const_bitmap_type & | get_bitmap () const |
| Gets const reference to the validity bitmap. | |
| constexpr void | resize_bitmap (size_type new_length, bool value) |
| Resizes the validity bitmap to accommodate new array length. | |
| constexpr bitmap_iterator | insert_bitmap (const_bitmap_iterator pos, bool value, size_type count) |
| Inserts validity bits at specified position. | |
| constexpr bitmap_iterator | insert_bitmap (const_bitmap_iterator pos, InputIt first, InputIt last) is_mutable |
| Inserts range of validity bits at specified position. | |
| constexpr bitmap_iterator | erase_bitmap (const_bitmap_iterator pos, size_type count) |
| Erases validity bits starting at specified position. | |
| array_bitmap_base_impl (arrow_proxy proxy) | |
| Constructs array bitmap base from Arrow proxy. | |
| constexpr | array_bitmap_base_impl (const array_bitmap_base_impl &) |
| Copy constructor. | |
| constexpr | array_bitmap_base_impl (array_bitmap_base_impl &&) noexcept=default |
| constexpr array_bitmap_base_impl & | operator= (const array_bitmap_base_impl &) |
| Copy assignment operator. | |
| constexpr array_bitmap_base_impl & | operator= (array_bitmap_base_impl &&) noexcept=default |
| constexpr bitmap_type & | get_bitmap () |
| Gets mutable reference to the validity bitmap. | |
| constexpr const const_bitmap_type & | get_bitmap () const |
| Gets const reference to the validity bitmap. | |
| constexpr void | resize_bitmap (size_type new_length, bool value) |
| Resizes the validity bitmap to accommodate new array length. | |
| constexpr bitmap_iterator | insert_bitmap (const_bitmap_iterator pos, bool value, size_type count) |
| Inserts validity bits at specified position. | |
| constexpr bitmap_iterator | insert_bitmap (const_bitmap_iterator pos, InputIt first, InputIt last) is_mutable |
| Inserts range of validity bits at specified position. | |
| constexpr bitmap_iterator | erase_bitmap (const_bitmap_iterator pos, size_type count) |
| Erases validity bits starting at specified position. | |
CRTP base class for all list array implementations.
This class provides common functionality for list-based array types including list_array, big_list_array, list_view_array, big_list_view_array, and fixed_sized_list_array. It manages the flat array of values and provides iteration and access methods.
| DERIVED | The derived list array type (CRTP pattern) |
Definition at line 285 of file list_array.hpp.
| using sparrow::list_array_crtp_base< DERIVED >::base_type = mutable_array_bitmap_base<DERIVED> |
Definition at line 290 of file list_array.hpp.
| using sparrow::list_array_crtp_base< DERIVED >::bitmap_const_reference = typename base_type::bitmap_const_reference |
Definition at line 298 of file list_array.hpp.
| using sparrow::list_array_crtp_base< DERIVED >::bitmap_reference = typename base_type::bitmap_reference |
Definition at line 297 of file list_array.hpp.
| using sparrow::list_array_crtp_base< DERIVED >::bitmap_type = typename base_type::bitmap_type |
Definition at line 296 of file list_array.hpp.
| using sparrow::list_array_crtp_base< DERIVED >::const_bitmap_range = typename base_type::const_bitmap_range |
Definition at line 300 of file list_array.hpp.
| using sparrow::list_array_crtp_base< DERIVED >::const_reference = nullable<inner_const_reference, bitmap_const_reference> |
Definition at line 308 of file list_array.hpp.
| using sparrow::list_array_crtp_base< DERIVED >::const_value_iterator = typename inner_types::const_value_iterator |
Definition at line 293 of file list_array.hpp.
| using sparrow::list_array_crtp_base< DERIVED >::inner_const_reference = typename inner_types::inner_const_reference |
Definition at line 304 of file list_array.hpp.
| using sparrow::list_array_crtp_base< DERIVED >::inner_reference = typename inner_types::inner_reference |
Definition at line 303 of file list_array.hpp.
| using sparrow::list_array_crtp_base< DERIVED >::inner_types = array_inner_types<DERIVED> |
Definition at line 291 of file list_array.hpp.
| using sparrow::list_array_crtp_base< DERIVED >::inner_value_type = list_value |
Definition at line 302 of file list_array.hpp.
| using sparrow::list_array_crtp_base< DERIVED >::iterator_tag = typename base_type::iterator_tag |
Definition at line 309 of file list_array.hpp.
| using sparrow::list_array_crtp_base< DERIVED >::reference = nullable<inner_reference, bitmap_reference> |
Definition at line 307 of file list_array.hpp.
| using sparrow::list_array_crtp_base< DERIVED >::self_type = list_array_crtp_base<DERIVED> |
Definition at line 289 of file list_array.hpp.
| using sparrow::list_array_crtp_base< DERIVED >::size_type = typename base_type::size_type |
Definition at line 294 of file list_array.hpp.
| using sparrow::list_array_crtp_base< DERIVED >::value_iterator = typename inner_types::value_iterator |
Definition at line 292 of file list_array.hpp.
| using sparrow::list_array_crtp_base< DERIVED >::value_type = nullable<inner_value_type> |
Definition at line 306 of file list_array.hpp.
|
explicitprotected |
Constructs list array base from Arrow proxy.
| proxy | Arrow proxy containing array data and schema |
Definition at line 1016 of file list_array.hpp.
|
constexprprotected |
Copy constructor.
| rhs | Source array to copy from |
Definition at line 1023 of file list_array.hpp.
|
constexprprotecteddefaultnoexcept |
|
constexprprotected |
|
constexprprotected |
|
constexpr |
Definition at line 1167 of file list_array.hpp.
|
constexprprotected |
Copy assignment operator.
| rhs | Source array to copy from |
Definition at line 1030 of file list_array.hpp.
|
constexprprotecteddefaultnoexcept |
|
nodiscardconstexpr |
Gets mutable access to the underlying flat array.
Definition at line 1044 of file list_array.hpp.
|
nodiscardconstexpr |
Gets read-only access to the underlying flat array.
Definition at line 1038 of file list_array.hpp.
|
constexprprotected |
Throws if a mutating operation is attempted on a sliced array.
List-array mutation updates the parent offset or size buffers together with the flat child array in place. The current implementation assumes ArrowArray.offset == 0, so sliced arrays are intentionally unsupported for mutating APIs.
| operation | Name of the mutating operation for diagnostics. |
| std::logic_error | if this array has a non-zero Arrow offset. |
Definition at line 1050 of file list_array.hpp.
|
nodiscardconstexprprotected |
Definition at line 1059 of file list_array.hpp.
|
nodiscardconstexprprotected |
Definition at line 1074 of file list_array.hpp.
|
nodiscardconstexprprotected |
Definition at line 1083 of file list_array.hpp.
|
nodiscardconstexprprotected |
Definition at line 1065 of file list_array.hpp.
|
friend |
Definition at line 413 of file list_array.hpp.
|
friend |
Definition at line 413 of file list_array.hpp.
|
friend |
Definition at line 413 of file list_array.hpp.
|
friend |
Definition at line 413 of file list_array.hpp.
|
friend |
Definition at line 413 of file list_array.hpp.