sparrow 0.6.0
Loading...
Searching...
No Matches
sparrow::dictionary_encoded_array< IT > Class Template Reference

#include <dictionary_encoded_array.hpp>

Public Types

using self_type = dictionary_encoded_array<IT>
 
using size_type = std::size_t
 
using difference_type = std::ptrdiff_t
 
using inner_value_type = array_traits::inner_value_type
 
using value_type = array_traits::value_type
 
using reference = array_traits::const_reference
 
using const_reference = array_traits::const_reference
 
using functor_type = layout_element_functor<self_type, true>
 
using const_functor_type = layout_element_functor<self_type, true>
 
using iterator = functor_index_iterator<functor_type>
 
using const_iterator = functor_index_iterator<const_functor_type>
 
using keys_buffer_type = u8_buffer<IT>
 

Public Member Functions

 dictionary_encoded_array (arrow_proxy)
 
 dictionary_encoded_array (const self_type &)
 
self_typeoperator= (const self_type &)
 
 dictionary_encoded_array (self_type &&)
 
self_typeoperator= (self_type &&)
 
std::optional< std::string_view > name () const
 
std::optional< key_value_viewmetadata () const
 
size_type size () const
 
bool empty () const
 
const_reference operator[] (size_type i) const
 
iterator begin ()
 
iterator end ()
 
const_iterator begin () const
 
const_iterator end () const
 
const_iterator cbegin () const
 
const_iterator cend () const
 
const_reference front () const
 
const_reference back () const
 
template<class... Args>
requires (mpl::excludes_copy_and_move_ctor_v<dictionary_encoded_array<IT>, Args...>)
 dictionary_encoded_array (Args &&... args)
 
self_type slice (size_type start, size_type end) const
 Slices the array to keep only the elements between the given start and end.
 
self_type slice_view (size_type start, size_type end) const
 Slices the array to keep only the elements between the given start and end.
 
template<validity_bitmap_input VBI, input_metadata_container METADATA_RANGE>
auto create_proxy (keys_buffer_type &&keys, array &&values, VBI &&validity_input, std::optional< std::string_view > name, std::optional< METADATA_RANGE > metadata) -> arrow_proxy
 

Friends

class detail::array_access
 

Detailed Description

template<std::integral IT>
class sparrow::dictionary_encoded_array< IT >

Definition at line 95 of file dictionary_encoded_array.hpp.

Member Typedef Documentation

◆ const_functor_type

template<std::integral IT>
using sparrow::dictionary_encoded_array< IT >::const_functor_type = layout_element_functor<self_type, true>

Definition at line 110 of file dictionary_encoded_array.hpp.

◆ const_iterator

template<std::integral IT>
using sparrow::dictionary_encoded_array< IT >::const_iterator = functor_index_iterator<const_functor_type>

Definition at line 113 of file dictionary_encoded_array.hpp.

◆ const_reference

template<std::integral IT>
using sparrow::dictionary_encoded_array< IT >::const_reference = array_traits::const_reference

Definition at line 107 of file dictionary_encoded_array.hpp.

◆ difference_type

template<std::integral IT>
using sparrow::dictionary_encoded_array< IT >::difference_type = std::ptrdiff_t

Definition at line 101 of file dictionary_encoded_array.hpp.

◆ functor_type

template<std::integral IT>
using sparrow::dictionary_encoded_array< IT >::functor_type = layout_element_functor<self_type, true>

Definition at line 109 of file dictionary_encoded_array.hpp.

◆ inner_value_type

template<std::integral IT>
using sparrow::dictionary_encoded_array< IT >::inner_value_type = array_traits::inner_value_type

Definition at line 103 of file dictionary_encoded_array.hpp.

◆ iterator

template<std::integral IT>
using sparrow::dictionary_encoded_array< IT >::iterator = functor_index_iterator<functor_type>

Definition at line 112 of file dictionary_encoded_array.hpp.

◆ keys_buffer_type

template<std::integral IT>
using sparrow::dictionary_encoded_array< IT >::keys_buffer_type = u8_buffer<IT>

Definition at line 115 of file dictionary_encoded_array.hpp.

◆ reference

template<std::integral IT>
using sparrow::dictionary_encoded_array< IT >::reference = array_traits::const_reference

Definition at line 106 of file dictionary_encoded_array.hpp.

◆ self_type

template<std::integral IT>
using sparrow::dictionary_encoded_array< IT >::self_type = dictionary_encoded_array<IT>

Definition at line 99 of file dictionary_encoded_array.hpp.

◆ size_type

template<std::integral IT>
using sparrow::dictionary_encoded_array< IT >::size_type = std::size_t

Definition at line 100 of file dictionary_encoded_array.hpp.

◆ value_type

template<std::integral IT>
using sparrow::dictionary_encoded_array< IT >::value_type = array_traits::value_type

Definition at line 105 of file dictionary_encoded_array.hpp.

Constructor & Destructor Documentation

◆ dictionary_encoded_array() [1/4]

template<std::integral IT>
sparrow::dictionary_encoded_array< IT >::dictionary_encoded_array ( arrow_proxy proxy)
explicit

Definition at line 215 of file dictionary_encoded_array.hpp.

Here is the call graph for this function:

◆ dictionary_encoded_array() [2/4]

template<std::integral IT>
sparrow::dictionary_encoded_array< IT >::dictionary_encoded_array ( const self_type & rhs)

Definition at line 224 of file dictionary_encoded_array.hpp.

◆ dictionary_encoded_array() [3/4]

template<std::integral IT>
sparrow::dictionary_encoded_array< IT >::dictionary_encoded_array ( self_type && rhs)

Definition at line 244 of file dictionary_encoded_array.hpp.

◆ dictionary_encoded_array() [4/4]

template<std::integral IT>
template<class... Args>
requires (mpl::excludes_copy_and_move_ctor_v<dictionary_encoded_array<IT>, Args...>)
sparrow::dictionary_encoded_array< IT >::dictionary_encoded_array ( Args &&... args)
inlineexplicit

Definition at line 147 of file dictionary_encoded_array.hpp.

Member Function Documentation

◆ back()

template<std::integral IT>
auto sparrow::dictionary_encoded_array< IT >::back ( ) const
nodiscard

Definition at line 397 of file dictionary_encoded_array.hpp.

Here is the call graph for this function:

◆ begin() [1/2]

template<std::integral IT>
auto sparrow::dictionary_encoded_array< IT >::begin ( )
nodiscard

Definition at line 354 of file dictionary_encoded_array.hpp.

◆ begin() [2/2]

template<std::integral IT>
auto sparrow::dictionary_encoded_array< IT >::begin ( ) const
nodiscard

Definition at line 366 of file dictionary_encoded_array.hpp.

Here is the call graph for this function:

◆ cbegin()

template<std::integral IT>
auto sparrow::dictionary_encoded_array< IT >::cbegin ( ) const
nodiscard

Definition at line 378 of file dictionary_encoded_array.hpp.

Here is the caller graph for this function:

◆ cend()

template<std::integral IT>
auto sparrow::dictionary_encoded_array< IT >::cend ( ) const
nodiscard

Definition at line 384 of file dictionary_encoded_array.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ create_proxy()

template<std::integral IT>
template<validity_bitmap_input VBI, input_metadata_container METADATA_RANGE>
auto sparrow::dictionary_encoded_array< IT >::create_proxy ( keys_buffer_type && keys,
array && values,
VBI && validity_input,
std::optional< std::string_view > name,
std::optional< METADATA_RANGE > metadata ) -> arrow_proxy

Definition at line 266 of file dictionary_encoded_array.hpp.

◆ empty()

template<std::integral IT>
auto sparrow::dictionary_encoded_array< IT >::empty ( ) const
nodiscard

Definition at line 331 of file dictionary_encoded_array.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ end() [1/2]

template<std::integral IT>
auto sparrow::dictionary_encoded_array< IT >::end ( )
nodiscard

Definition at line 360 of file dictionary_encoded_array.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ end() [2/2]

template<std::integral IT>
auto sparrow::dictionary_encoded_array< IT >::end ( ) const
nodiscard

Definition at line 372 of file dictionary_encoded_array.hpp.

Here is the call graph for this function:

◆ front()

template<std::integral IT>
auto sparrow::dictionary_encoded_array< IT >::front ( ) const
nodiscard

Definition at line 390 of file dictionary_encoded_array.hpp.

Here is the call graph for this function:

◆ metadata()

template<std::integral IT>
std::optional< key_value_view > sparrow::dictionary_encoded_array< IT >::metadata ( ) const
nodiscard

Definition at line 319 of file dictionary_encoded_array.hpp.

◆ name()

template<std::integral IT>
std::optional< std::string_view > sparrow::dictionary_encoded_array< IT >::name ( ) const
nodiscard

Definition at line 313 of file dictionary_encoded_array.hpp.

Here is the call graph for this function:

◆ operator=() [1/2]

template<std::integral IT>
auto sparrow::dictionary_encoded_array< IT >::operator= ( const self_type & rhs)

Definition at line 232 of file dictionary_encoded_array.hpp.

◆ operator=() [2/2]

template<std::integral IT>
auto sparrow::dictionary_encoded_array< IT >::operator= ( self_type && rhs)

Definition at line 252 of file dictionary_encoded_array.hpp.

Here is the call graph for this function:

◆ operator[]()

template<std::integral IT>
auto sparrow::dictionary_encoded_array< IT >::operator[] ( size_type i) const
nodiscard

Definition at line 337 of file dictionary_encoded_array.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ size()

template<std::integral IT>
auto sparrow::dictionary_encoded_array< IT >::size ( ) const
nodiscard

Definition at line 325 of file dictionary_encoded_array.hpp.

Here is the caller graph for this function:

◆ slice()

template<std::integral IT>
auto sparrow::dictionary_encoded_array< IT >::slice ( size_type start,
size_type end ) const
nodiscard

Slices the array to keep only the elements between the given start and end.

A copy of the Array is modified. The data is not modified, only the ArrowArray.offset and ArrowArray.length are updated. If end is greater than the size of the buffers, the following elements will be invalid.

Parameters
startThe index of the first element to keep. Must be less than end.
endThe index of the first element to discard. Must be less than the size of the buffers.

Definition at line 411 of file dictionary_encoded_array.hpp.

Here is the call graph for this function:

◆ slice_view()

template<std::integral IT>
auto sparrow::dictionary_encoded_array< IT >::slice_view ( size_type start,
size_type end ) const
nodiscard

Slices the array to keep only the elements between the given start and end.

A view of the Array is returned. The data is not modified, only the ArrowArray.offset and ArrowArray.length are updated. If end is greater than the size of the buffers, the following elements will be invalid.

Parameters
startThe index of the first element to keep. Must be less than end.
endThe index of the first element to discard. Must be less than the size of the buffers.

Definition at line 418 of file dictionary_encoded_array.hpp.

Here is the call graph for this function:

Friends And Related Symbol Documentation

◆ detail::array_access

template<std::integral IT>
friend class detail::array_access
friend

Definition at line 204 of file dictionary_encoded_array.hpp.


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