sparrow 0.6.0
Loading...
Searching...
No Matches
sparrow::primitive_array_impl< T > Class Template Reference

#include <primitive_array_impl.hpp>

Inheritance diagram for sparrow::primitive_array_impl< T >:
[legend]
Collaboration diagram for sparrow::primitive_array_impl< T >:
[legend]

Public Types

using self_type = primitive_array_impl<T>
 
using base_type = mutable_array_bitmap_base<primitive_array_impl<T>>
 
using access_class_type = details::primitive_data_access<T>
 
using size_type = std::size_t
 
using inner_types = array_inner_types<self_type>
 
using inner_value_type = typename inner_types::inner_value_type
 
using inner_reference = typename inner_types::inner_reference
 
using inner_const_reference = typename inner_types::inner_const_reference
 
using pointer = typename inner_types::pointer
 
using const_pointer = typename inner_types::const_pointer
 
using value_iterator = typename base_type::value_iterator
 
using const_value_iterator = typename base_type::const_value_iterator
 
- Public Types inherited from sparrow::array_bitmap_base_impl< D, true >
using base_type
 
using size_type
 
using bitmap_type
 
using bitmap_iterator
 
using const_bitmap_iterator
 
using bitmap_const_reference
 
using difference_type
 
using const_bitmap_range
 
using iterator_tag
 

Public Member Functions

 primitive_array_impl (arrow_proxy)
 
template<class... Args>
requires (mpl::excludes_copy_and_move_ctor_v<primitive_array_impl<T>, Args...>)
 primitive_array_impl (Args &&... args)
 Constructs an array of trivial copyable type, with the passed range of values and an optional bitmap.
 
template<input_metadata_container METADATA_RANGE = std::vector<metadata_pair>>
 primitive_array_impl (std::initializer_list< inner_value_type > init, std::optional< std::string_view > name=std::nullopt, std::optional< METADATA_RANGE > metadata=std::nullopt)
 Constructs a primitive array from an initializer_list of raw values.
 
 primitive_array_impl (const primitive_array_impl &)
 
primitive_array_imploperator= (const primitive_array_impl &)
 
 primitive_array_impl (primitive_array_impl &&)
 
primitive_array_imploperator= (primitive_array_impl &&)
 
template<std::ranges::input_range VALUE_RANGE, validity_bitmap_input VALIDITY_RANGE, input_metadata_container METADATA_RANGE>
requires (std::convertible_to<std::ranges::range_value_t<VALUE_RANGE>, T>)
arrow_proxy create_proxy (VALUE_RANGE &&values, VALIDITY_RANGE &&validity_input, std::optional< std::string_view > name, std::optional< METADATA_RANGE > metadata)
 
- Public Member Functions inherited from sparrow::array_bitmap_base_impl< D, true >
auto insert_bitmap (const_bitmap_iterator pos, InputIt first, InputIt last) -> bitmap_iterator is_mutable
 
auto insert_bitmap (const_bitmap_iterator pos, InputIt first, InputIt last) -> bitmap_iterator is_mutable
 

Friends

class run_end_encoded_array
 

Additional Inherited Members

- Protected Member Functions inherited from sparrow::array_bitmap_base_impl< D, true >
 array_bitmap_base_impl (arrow_proxy)
 
 array_bitmap_base_impl (const array_bitmap_base_impl &)
 
array_bitmap_base_imploperator= (const array_bitmap_base_impl &)
 
 array_bitmap_base_impl (array_bitmap_base_impl &&) noexcept=default
 
array_bitmap_base_imploperator= (array_bitmap_base_impl &&) noexcept=default
 
bitmap_typeget_bitmap ()
 
const bitmap_typeget_bitmap () const
 
void resize_bitmap (size_type new_length, bool value)
 
bitmap_iterator insert_bitmap (const_bitmap_iterator pos, bool value, size_type count)
 
bitmap_iterator insert_bitmap (const_bitmap_iterator pos, InputIt first, InputIt last) is_mutable
 
bitmap_iterator erase_bitmap (const_bitmap_iterator pos, size_type count)
 
void update ()
 
non_owning_dynamic_bitset< uint8_t > get_non_owning_dynamic_bitset ()
 
bitmap_type make_bitmap ()
 
 array_bitmap_base_impl (arrow_proxy)
 
 array_bitmap_base_impl (const array_bitmap_base_impl &)
 
 array_bitmap_base_impl (array_bitmap_base_impl &&) noexcept=default
 
array_bitmap_base_imploperator= (const array_bitmap_base_impl &)
 
array_bitmap_base_imploperator= (array_bitmap_base_impl &&) noexcept=default
 
bitmap_typeget_bitmap ()
 
const bitmap_typeget_bitmap () const
 
void resize_bitmap (size_type new_length, bool value)
 
bitmap_iterator insert_bitmap (const_bitmap_iterator pos, bool value, size_type count)
 
bitmap_iterator insert_bitmap (const_bitmap_iterator pos, InputIt first, InputIt last) is_mutable
 
bitmap_iterator erase_bitmap (const_bitmap_iterator pos, size_type count)
 
void update ()
 
non_owning_dynamic_bitset< uint8_t > get_non_owning_dynamic_bitset ()
 
bitmap_type make_bitmap ()
 

Detailed Description

template<trivial_copyable_type T>
class sparrow::primitive_array_impl< T >

Definition at line 54 of file primitive_array_impl.hpp.

Member Typedef Documentation

◆ access_class_type

template<trivial_copyable_type T>
using sparrow::primitive_array_impl< T >::access_class_type = details::primitive_data_access<T>

Definition at line 61 of file primitive_array_impl.hpp.

◆ base_type

template<trivial_copyable_type T>
using sparrow::primitive_array_impl< T >::base_type = mutable_array_bitmap_base<primitive_array_impl<T>>

Definition at line 60 of file primitive_array_impl.hpp.

◆ const_pointer

template<trivial_copyable_type T>
using sparrow::primitive_array_impl< T >::const_pointer = typename inner_types::const_pointer

Definition at line 70 of file primitive_array_impl.hpp.

◆ const_value_iterator

template<trivial_copyable_type T>
using sparrow::primitive_array_impl< T >::const_value_iterator = typename base_type::const_value_iterator

Definition at line 73 of file primitive_array_impl.hpp.

◆ inner_const_reference

template<trivial_copyable_type T>
using sparrow::primitive_array_impl< T >::inner_const_reference = typename inner_types::inner_const_reference

Definition at line 67 of file primitive_array_impl.hpp.

◆ inner_reference

template<trivial_copyable_type T>
using sparrow::primitive_array_impl< T >::inner_reference = typename inner_types::inner_reference

Definition at line 66 of file primitive_array_impl.hpp.

◆ inner_types

template<trivial_copyable_type T>
using sparrow::primitive_array_impl< T >::inner_types = array_inner_types<self_type>

Definition at line 64 of file primitive_array_impl.hpp.

◆ inner_value_type

template<trivial_copyable_type T>
using sparrow::primitive_array_impl< T >::inner_value_type = typename inner_types::inner_value_type

Definition at line 65 of file primitive_array_impl.hpp.

◆ pointer

template<trivial_copyable_type T>
using sparrow::primitive_array_impl< T >::pointer = typename inner_types::pointer

Definition at line 69 of file primitive_array_impl.hpp.

◆ self_type

template<trivial_copyable_type T>
using sparrow::primitive_array_impl< T >::self_type = primitive_array_impl<T>

Definition at line 59 of file primitive_array_impl.hpp.

◆ size_type

template<trivial_copyable_type T>
using sparrow::primitive_array_impl< T >::size_type = std::size_t

Definition at line 62 of file primitive_array_impl.hpp.

◆ value_iterator

template<trivial_copyable_type T>
using sparrow::primitive_array_impl< T >::value_iterator = typename base_type::value_iterator

Definition at line 72 of file primitive_array_impl.hpp.

Constructor & Destructor Documentation

◆ primitive_array_impl() [1/5]

template<trivial_copyable_type T>
sparrow::primitive_array_impl< T >::primitive_array_impl ( arrow_proxy proxy_param)
explicit

Definition at line 215 of file primitive_array_impl.hpp.

Here is the caller graph for this function:

◆ primitive_array_impl() [2/5]

template<trivial_copyable_type T>
template<class... Args>
requires (mpl::excludes_copy_and_move_ctor_v<primitive_array_impl<T>, Args...>)
sparrow::primitive_array_impl< T >::primitive_array_impl ( Args &&... args)
inlineexplicit

Constructs an array of trivial copyable type, with the passed range of values and an optional bitmap.

The first argument can be any range of values as long as its value type is convertible to T. The second argument can be:

Definition at line 103 of file primitive_array_impl.hpp.

◆ primitive_array_impl() [3/5]

template<trivial_copyable_type T>
template<input_metadata_container METADATA_RANGE = std::vector<metadata_pair>>
sparrow::primitive_array_impl< T >::primitive_array_impl ( std::initializer_list< inner_value_type > init,
std::optional< std::string_view > name = std::nullopt,
std::optional< METADATA_RANGE > metadata = std::nullopt )
inline

Constructs a primitive array from an initializer_list of raw values.

Definition at line 113 of file primitive_array_impl.hpp.

◆ primitive_array_impl() [4/5]

template<trivial_copyable_type T>
sparrow::primitive_array_impl< T >::primitive_array_impl ( const primitive_array_impl< T > & rhs)

Definition at line 222 of file primitive_array_impl.hpp.

Here is the call graph for this function:

◆ primitive_array_impl() [5/5]

template<trivial_copyable_type T>
sparrow::primitive_array_impl< T >::primitive_array_impl ( primitive_array_impl< T > && rhs)

Definition at line 237 of file primitive_array_impl.hpp.

Here is the call graph for this function:

Member Function Documentation

◆ create_proxy()

template<trivial_copyable_type T>
template<std::ranges::input_range VALUE_RANGE, validity_bitmap_input VALIDITY_RANGE, input_metadata_container METADATA_RANGE>
requires (std::convertible_to<std::ranges::range_value_t<VALUE_RANGE>, T>)
arrow_proxy sparrow::primitive_array_impl< T >::create_proxy ( VALUE_RANGE && values,
VALIDITY_RANGE && validity_input,
std::optional< std::string_view > name,
std::optional< METADATA_RANGE > metadata )

Definition at line 297 of file primitive_array_impl.hpp.

◆ operator=() [1/2]

template<trivial_copyable_type T>
primitive_array_impl< T > & sparrow::primitive_array_impl< T >::operator= ( const primitive_array_impl< T > & rhs)

Definition at line 229 of file primitive_array_impl.hpp.

Here is the call graph for this function:

◆ operator=() [2/2]

template<trivial_copyable_type T>
primitive_array_impl< T > & sparrow::primitive_array_impl< T >::operator= ( primitive_array_impl< T > && rhs)

Definition at line 244 of file primitive_array_impl.hpp.

Here is the call graph for this function:

Friends And Related Symbol Documentation

◆ run_end_encoded_array

template<trivial_copyable_type T>
friend class run_end_encoded_array
friend

Definition at line 204 of file primitive_array_impl.hpp.


The documentation for this class was generated from the following file: