Public Member Functions | List of all members
cudf::structs_column_view Class Reference
Inheritance diagram for cudf::structs_column_view:
cudf::column_view cudf::detail::column_view_base

Public Member Functions

 structs_column_view (structs_column_view const &)=default
 
 structs_column_view (structs_column_view &&)=default
 
structs_column_viewoperator= (structs_column_view const &)=default
 
structs_column_viewoperator= (structs_column_view &&)=default
 
 structs_column_view (column_view const &rhs)
 
column_view get_sliced_child (int index) const
 Returns the internal child column, applying any offset from the root. More...
 
auto child_begin () const noexcept
 Returns iterator to the beginning of the ordered sequence of child column-views.
 
auto child_end () const noexcept
 Returns iterator to the end of the ordered sequence of child column-views.
 
size_type num_children () const noexcept
 Returns the number of child columns.
 
- Public Member Functions inherited from cudf::column_view
 column_view (column_view const &c)=default
 
 column_view (column_view &&)=default
 
column_viewoperator= (column_view const &)=default
 
column_viewoperator= (column_view &&)=default
 
 column_view (data_type type, size_type size, void const *data, bitmask_type const *null_mask=nullptr, size_type null_count=UNKNOWN_NULL_COUNT, size_type offset=0, std::vector< column_view > const &children={})
 Construct a column_view from pointers to device memory for the elements and bitmask of the column. More...
 
column_view child (size_type child_index) const noexcept
 Returns the specified child. More...
 
size_type num_children () const noexcept
 Returns the number of child columns.
 
auto child_begin () const noexcept
 Returns iterator to the beginning of the ordered sequence of child column-views.
 
auto child_end () const noexcept
 Returns iterator to the end of the ordered sequence of child column-views.
 
- Public Member Functions inherited from cudf::detail::column_view_base
template<typename T = void, CUDF_ENABLE_IF(std::is_same< T, void >::value or is_rep_layout_compatible< T >()) >
T const * head () const noexcept
 Returns pointer to the base device memory allocation casted to the specified type. More...
 
template<typename T , CUDF_ENABLE_IF(is_rep_layout_compatible< T >()) >
T const * data () const noexcept
 Returns the underlying data casted to the specified type, plus the offset. More...
 
template<typename T , CUDF_ENABLE_IF(is_rep_layout_compatible< T >()) >
T const * begin () const noexcept
 Return first element (accounting for offset) after underlying data is casted to the specified type. More...
 
template<typename T , CUDF_ENABLE_IF(is_rep_layout_compatible< T >()) >
T const * end () const noexcept
 Return one past the last element after underlying data is casted to the specified type. More...
 
size_type size () const noexcept
 Returns the number of elements in the column.
 
size_type is_empty () const noexcept
 Returns true if size() returns zero, or false otherwise.
 
data_type type () const noexcept
 Returns the element data_type
 
bool nullable () const noexcept
 Indicates if the column can contain null elements, i.e., if it has an allocated bitmask. More...
 
size_type null_count () const
 Returns the count of null elements. More...
 
size_type null_count (size_type begin, size_type end) const
 Returns the count of null elements in the range [begin, end) More...
 
bool has_nulls () const
 Indicates if the column contains null elements, i.e., null_count() > 0 More...
 
bool has_nulls (size_type begin, size_type end) const
 Indicates if the column contains null elements in the range [begin, end), i.e., null_count(begin, end) > 0 More...
 
bitmask_type const * null_mask () const noexcept
 Returns raw pointer to the underlying bitmask allocation. More...
 
size_type offset () const noexcept
 Returns the index of the first element relative to the base memory allocation, i.e., what is returned from head<T>().
 

Additional Inherited Members

- Protected Member Functions inherited from cudf::detail::column_view_base
 column_view_base (column_view_base const &)=default
 
 column_view_base (column_view_base &&)=default
 
column_view_baseoperator= (column_view_base const &)=default
 
column_view_baseoperator= (column_view_base &&)=default
 
 column_view_base (data_type type, size_type size, void const *data, bitmask_type const *null_mask=nullptr, size_type null_count=UNKNOWN_NULL_COUNT, size_type offset=0)
 Construct a column_view_base from pointers to device memory for the elements and bitmask of the column. More...
 
- Protected Attributes inherited from cudf::detail::column_view_base
data_type _type {type_id::EMPTY}
 Element type.
 
size_type _size {}
 Number of elements.
 
void const * _data {}
 Pointer to device memory containing elements.
 
bitmask_type const * _null_mask {}
 
size_type _null_count {}
 The number of null elements.
 
size_type _offset {}
 

Detailed Description

Definition at line 33 of file structs_column_view.hpp.

Member Function Documentation

◆ get_sliced_child()

column_view cudf::structs_column_view::get_sliced_child ( int  index) const

Returns the internal child column, applying any offset from the root.

Slice/split offset values are only stored at the root level of a struct column. So when doing computations on them, we need to apply that offset to the child columns when recursing. Most functions operating in a recursive manner on struct columns should be using get_sliced_child() instead of child().

Exceptions
cudf::logicerror if this is an empty column

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