sparrow 0.9.0
Loading...
Searching...
No Matches
sparrow::arrow_array_private_data Class Reference

Private data for ArrowArray. More...

#include <private_data.hpp>

Inheritance diagram for sparrow::arrow_array_private_data:
[legend]
Collaboration diagram for sparrow::arrow_array_private_data:
[legend]

Public Types

using BufferType = std::vector<buffer<std::uint8_t>>
 

Public Member Functions

template<std::ranges::input_range CHILDREN_OWNERSHIP>
requires std::is_same_v<std::ranges::range_value_t<CHILDREN_OWNERSHIP>, bool>
constexpr arrow_array_private_data (BufferType buffers, const CHILDREN_OWNERSHIP &children_ownership, bool dictionary_ownership)
 
constexpr BufferTypebuffers () noexcept
 
constexpr const BufferTypebuffers () const noexcept
 
SPARROW_CONSTEXPR_GCC_11 void resize_buffers (std::size_t size)
 
void set_buffer (std::size_t index, buffer< std::uint8_t > &&buffer)
 
void set_buffer (std::size_t index, const buffer_view< std::uint8_t > &buffer)
 
SPARROW_CONSTEXPR_GCC_11 void resize_buffer (std::size_t index, std::size_t size, std::uint8_t value)
 
SPARROW_CONSTEXPR_GCC_11 void update_buffers_ptrs ()
 
template<class T>
constexpr const T ** buffers_ptrs () noexcept
 
- Public Member Functions inherited from sparrow::children_ownership
std::size_t children_size () const noexcept
 
void set_child_ownership (std::size_t child, bool ownership)
 
template<std::ranges::input_range CHILDREN_OWNERSHIP>
void set_children_ownership (const CHILDREN_OWNERSHIP &children_ownership_values)
 
bool has_child_ownership (std::size_t child) const
 
void resize_children (std::size_t size)
 
- Public Member Functions inherited from sparrow::dictionary_ownership
void set_dictionary_ownership (bool ownership) noexcept
 
bool has_dictionary_ownership () const noexcept
 

Additional Inherited Members

- Protected Member Functions inherited from sparrow::children_ownership
 children_ownership (std::size_t size=0)
 
template<std::ranges::input_range CHILDREN_OWNERSHIP>
requires std::is_same_v<std::ranges::range_value_t<CHILDREN_OWNERSHIP>, bool>
constexpr children_ownership (const CHILDREN_OWNERSHIP &children_ownership_values)
 
- Protected Member Functions inherited from sparrow::dictionary_ownership
 dictionary_ownership (bool ownership) noexcept
 

Detailed Description

Private data for ArrowArray.

Holds and own buffers, children, and dictionary. It is used in the Sparrow library.

Definition at line 36 of file private_data.hpp.

Member Typedef Documentation

◆ BufferType

using sparrow::arrow_array_private_data::BufferType = std::vector<buffer<std::uint8_t>>

Definition at line 41 of file private_data.hpp.

Constructor & Destructor Documentation

◆ arrow_array_private_data()

template<std::ranges::input_range CHILDREN_OWNERSHIP>
requires std::is_same_v<std::ranges::range_value_t<CHILDREN_OWNERSHIP>, bool>
sparrow::arrow_array_private_data::arrow_array_private_data ( BufferType buffers,
const CHILDREN_OWNERSHIP & children_ownership,
bool dictionary_ownership )
explicitconstexpr

Definition at line 71 of file private_data.hpp.

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

Member Function Documentation

◆ buffers() [1/2]

const std::vector< buffer< std::uint8_t > > & sparrow::arrow_array_private_data::buffers ( ) const
nodiscardconstexprnoexcept

Definition at line 89 of file private_data.hpp.

◆ buffers() [2/2]

std::vector< buffer< std::uint8_t > > & sparrow::arrow_array_private_data::buffers ( )
nodiscardconstexprnoexcept

Definition at line 83 of file private_data.hpp.

Here is the caller graph for this function:

◆ buffers_ptrs()

template<class T>
const T ** sparrow::arrow_array_private_data::buffers_ptrs ( )
nodiscardconstexprnoexcept

Definition at line 123 of file private_data.hpp.

◆ resize_buffer()

SPARROW_CONSTEXPR_GCC_11 void sparrow::arrow_array_private_data::resize_buffer ( std::size_t index,
std::size_t size,
std::uint8_t value )

Definition at line 115 of file private_data.hpp.

◆ resize_buffers()

SPARROW_CONSTEXPR_GCC_11 void sparrow::arrow_array_private_data::resize_buffers ( std::size_t size)

Definition at line 94 of file private_data.hpp.

Here is the call graph for this function:

◆ set_buffer() [1/2]

void sparrow::arrow_array_private_data::set_buffer ( std::size_t index,
buffer< std::uint8_t > && buffer )
inline

Definition at line 100 of file private_data.hpp.

◆ set_buffer() [2/2]

void sparrow::arrow_array_private_data::set_buffer ( std::size_t index,
const buffer_view< std::uint8_t > & buffer )
inline

Definition at line 107 of file private_data.hpp.

Here is the call graph for this function:

◆ update_buffers_ptrs()

SPARROW_CONSTEXPR_GCC_11 void sparrow::arrow_array_private_data::update_buffers_ptrs ( )

Definition at line 128 of file private_data.hpp.

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

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