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

Data access class for trivial copyable types. More...

#include <primitive_data_access.hpp>

Inheritance diagram for sparrow::details::primitive_data_access< T >:
[legend]

Public Types

using inner_value_type = T
 
using inner_reference = T&
 
using inner_const_reference = const T&
 
using inner_pointer = inner_value_type*
 
using inner_const_pointer = const inner_value_type*
 
using value_iterator = pointer_iterator<inner_pointer>
 
using const_value_iterator = pointer_iterator<inner_const_pointer>
 

Public Member Functions

 primitive_data_access (arrow_proxy &proxy, size_t data_buffer_index)
 Constructor for primitive_data_access.
 
 primitive_data_access (const primitive_data_access &)=delete
 
primitive_data_accessoperator= (const primitive_data_access &)=delete
 
 primitive_data_access (primitive_data_access &&)=delete
 
primitive_data_accessoperator= (primitive_data_access &&)=delete
 
constexpr inner_pointer data ()
 
constexpr inner_const_pointer data () const
 
constexpr inner_reference value (size_t i)
 
constexpr inner_const_reference value (size_t i) const
 
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 resize_values (size_t new_length, const T &value)
 
constexpr value_iterator insert_value (const_value_iterator pos, T value, size_t count)
 
constexpr value_iterator insert_value (size_t idx, T value, size_t count)
 
template<mpl::iterator_of_type< T > InputIt>
constexpr value_iterator insert_values (const_value_iterator pos, InputIt first, InputIt last)
 
template<mpl::iterator_of_type< T > InputIt>
constexpr value_iterator insert_values (size_t idx, InputIt first, InputIt last)
 
constexpr value_iterator erase_values (const_value_iterator pos, size_t count)
 
constexpr value_iterator erase_values (size_t idx, size_t count)
 
void reset_proxy (arrow_proxy &proxy)
 
template<mpl::iterator_of_type< T > InputIt>
constexpr auto insert_values (const_value_iterator pos, InputIt first, InputIt last) -> value_iterator
 
template<mpl::iterator_of_type< T > InputIt>
constexpr auto insert_values (size_t idx, InputIt first, InputIt last) -> value_iterator
 

Static Public Member Functions

template<std::ranges::input_range RANGE>
static u8_buffer< T > make_data_buffer (RANGE &&r)
 
static u8_buffer< T > make_data_buffer (size_t n, const T &value)
 

Detailed Description

template<trivial_copyable_type T>
class sparrow::details::primitive_data_access< T >

Data access class for trivial copyable types.

FOR INTERNAL USE ONLY

Template Parameters
TType of the data.

Definition at line 34 of file primitive_data_access.hpp.

Member Typedef Documentation

◆ const_value_iterator

template<trivial_copyable_type T>
using sparrow::details::primitive_data_access< T >::const_value_iterator = pointer_iterator<inner_const_pointer>

Definition at line 45 of file primitive_data_access.hpp.

◆ inner_const_pointer

template<trivial_copyable_type T>
using sparrow::details::primitive_data_access< T >::inner_const_pointer = const inner_value_type*

Definition at line 42 of file primitive_data_access.hpp.

◆ inner_const_reference

template<trivial_copyable_type T>
using sparrow::details::primitive_data_access< T >::inner_const_reference = const T&

Definition at line 40 of file primitive_data_access.hpp.

◆ inner_pointer

template<trivial_copyable_type T>
using sparrow::details::primitive_data_access< T >::inner_pointer = inner_value_type*

Definition at line 41 of file primitive_data_access.hpp.

◆ inner_reference

template<trivial_copyable_type T>
using sparrow::details::primitive_data_access< T >::inner_reference = T&

Definition at line 39 of file primitive_data_access.hpp.

◆ inner_value_type

template<trivial_copyable_type T>
using sparrow::details::primitive_data_access< T >::inner_value_type = T

Definition at line 38 of file primitive_data_access.hpp.

◆ value_iterator

template<trivial_copyable_type T>
using sparrow::details::primitive_data_access< T >::value_iterator = pointer_iterator<inner_pointer>

Definition at line 44 of file primitive_data_access.hpp.

Constructor & Destructor Documentation

◆ primitive_data_access() [1/3]

template<trivial_copyable_type T>
sparrow::details::primitive_data_access< T >::primitive_data_access ( arrow_proxy & proxy,
size_t data_buffer_index )

Constructor for primitive_data_access.

Parameters
layoutPointer to the layout object.
data_buffer_indexIndex of the data buffer.

Definition at line 202 of file primitive_data_access.hpp.

Here is the caller graph for this function:

◆ primitive_data_access() [2/3]

template<trivial_copyable_type T>
sparrow::details::primitive_data_access< T >::primitive_data_access ( const primitive_data_access< T > & )
delete
Here is the call graph for this function:

◆ primitive_data_access() [3/3]

template<trivial_copyable_type T>
sparrow::details::primitive_data_access< T >::primitive_data_access ( primitive_data_access< T > && )
delete
Here is the call graph for this function:

Member Function Documentation

◆ data() [1/2]

template<trivial_copyable_type T>
auto sparrow::details::primitive_data_access< T >::data ( )
nodiscardconstexpr

Definition at line 209 of file primitive_data_access.hpp.

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

◆ data() [2/2]

template<trivial_copyable_type T>
auto sparrow::details::primitive_data_access< T >::data ( ) const
nodiscardconstexpr

Definition at line 216 of file primitive_data_access.hpp.

Here is the call graph for this function:

◆ erase_values() [1/2]

template<trivial_copyable_type T>
auto sparrow::details::primitive_data_access< T >::erase_values ( const_value_iterator pos,
size_t count )
constexpr

Definition at line 320 of file primitive_data_access.hpp.

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

◆ erase_values() [2/2]

template<trivial_copyable_type T>
auto sparrow::details::primitive_data_access< T >::erase_values ( size_t idx,
size_t count )
constexpr

Definition at line 339 of file primitive_data_access.hpp.

Here is the call graph for this function:

◆ insert_value() [1/2]

template<trivial_copyable_type T>
auto sparrow::details::primitive_data_access< T >::insert_value ( const_value_iterator pos,
T value,
size_t count )
constexpr

Definition at line 268 of file primitive_data_access.hpp.

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

◆ insert_value() [2/2]

template<trivial_copyable_type T>
auto sparrow::details::primitive_data_access< T >::insert_value ( size_t idx,
T value,
size_t count )
constexpr

Definition at line 282 of file primitive_data_access.hpp.

Here is the call graph for this function:

◆ insert_values() [1/4]

template<trivial_copyable_type T>
template<mpl::iterator_of_type< T > InputIt>
value_iterator sparrow::details::primitive_data_access< T >::insert_values ( const_value_iterator pos,
InputIt first,
InputIt last )
constexpr

◆ insert_values() [2/4]

template<trivial_copyable_type T>
template<mpl::iterator_of_type< T > InputIt>
auto sparrow::details::primitive_data_access< T >::insert_values ( const_value_iterator pos,
InputIt first,
InputIt last ) -> value_iterator
constexpr

Definition at line 295 of file primitive_data_access.hpp.

◆ insert_values() [3/4]

template<trivial_copyable_type T>
template<mpl::iterator_of_type< T > InputIt>
value_iterator sparrow::details::primitive_data_access< T >::insert_values ( size_t idx,
InputIt first,
InputIt last )
constexpr

◆ insert_values() [4/4]

template<trivial_copyable_type T>
template<mpl::iterator_of_type< T > InputIt>
auto sparrow::details::primitive_data_access< T >::insert_values ( size_t idx,
InputIt first,
InputIt last ) -> value_iterator
constexpr

Definition at line 310 of file primitive_data_access.hpp.

◆ make_data_buffer() [1/2]

template<trivial_copyable_type T>
template<std::ranges::input_range RANGE>
u8_buffer< T > sparrow::details::primitive_data_access< T >::make_data_buffer ( RANGE && r)
staticnodiscard

Definition at line 356 of file primitive_data_access.hpp.

Here is the caller graph for this function:

◆ make_data_buffer() [2/2]

template<trivial_copyable_type T>
u8_buffer< T > sparrow::details::primitive_data_access< T >::make_data_buffer ( size_t n,
const T & value )
staticnodiscard

Definition at line 362 of file primitive_data_access.hpp.

Here is the call graph for this function:

◆ operator=() [1/2]

template<trivial_copyable_type T>
primitive_data_access & sparrow::details::primitive_data_access< T >::operator= ( const primitive_data_access< T > & )
delete
Here is the call graph for this function:

◆ operator=() [2/2]

template<trivial_copyable_type T>
primitive_data_access & sparrow::details::primitive_data_access< T >::operator= ( primitive_data_access< T > && )
delete
Here is the call graph for this function:

◆ reset_proxy()

template<trivial_copyable_type T>
void sparrow::details::primitive_data_access< T >::reset_proxy ( arrow_proxy & proxy)

Definition at line 349 of file primitive_data_access.hpp.

Here is the caller graph for this function:

◆ resize_values()

template<trivial_copyable_type T>
void sparrow::details::primitive_data_access< T >::resize_values ( size_t new_length,
const T & value )
constexpr

Definition at line 261 of file primitive_data_access.hpp.

Here is the call graph for this function:

◆ value() [1/2]

template<trivial_copyable_type T>
auto sparrow::details::primitive_data_access< T >::value ( size_t i)
nodiscardconstexpr

Definition at line 223 of file primitive_data_access.hpp.

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

◆ value() [2/2]

template<trivial_copyable_type T>
auto sparrow::details::primitive_data_access< T >::value ( size_t i) const
nodiscardconstexpr

Definition at line 230 of file primitive_data_access.hpp.

Here is the call graph for this function:

◆ value_begin()

template<trivial_copyable_type T>
auto sparrow::details::primitive_data_access< T >::value_begin ( )
nodiscardconstexpr

Definition at line 237 of file primitive_data_access.hpp.

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

◆ value_cbegin()

template<trivial_copyable_type T>
auto sparrow::details::primitive_data_access< T >::value_cbegin ( ) const
nodiscardconstexpr

Definition at line 249 of file primitive_data_access.hpp.

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

◆ value_cend()

template<trivial_copyable_type T>
auto sparrow::details::primitive_data_access< T >::value_cend ( ) const
nodiscardconstexpr

Definition at line 255 of file primitive_data_access.hpp.

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

◆ value_end()

template<trivial_copyable_type T>
auto sparrow::details::primitive_data_access< T >::value_end ( )
nodiscardconstexpr

Definition at line 243 of file primitive_data_access.hpp.

Here is the call graph for this function:

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