Structs Classes#

group structs_classes
class structs_column_view : public cudf::column_view#
#include <structs_column_view.hpp>

Given a column view of struct type, an instance of this class provides a wrapper on this compound column for struct operations.

Public Functions

structs_column_view(structs_column_view const&) = default#

Copy constructor.

structs_column_view(structs_column_view&&) = default#

Move constructor.

structs_column_view &operator=(structs_column_view const&) = default#

Copy assignment operator.

Returns:

The reference to this structs column

structs_column_view &operator=(structs_column_view&&) = default#

Move assignment operator.

Returns:

The reference to this structs column

explicit structs_column_view(column_view const &col)#

Construct a new structs column view object from a column view.

Parameters:

col – The column view to wrap

column_view parent() const#

Returns the parent column.

Returns:

The parent column

column_view get_sliced_child(int index, rmm::cuda_stream_view stream = cudf::get_default_stream()) 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().

Throws:

cudf::logic_error – if this is an empty column

Parameters:
  • index – The index of the child column to return

  • stream – The stream on which to perform the operation. Uses the default CUDF stream if none is specified.

Returns:

The child column sliced relative to the parent’s offset and size

inline auto child_begin() const noexcept#

Returns iterator to the beginning of the ordered sequence of child column-views.

Returns:

An iterator to a column_view referencing the first child column

inline auto child_end() const noexcept#

Returns iterator to the end of the ordered sequence of child column-views.

Returns:

An iterator to a column_view one past the end of the child columns

inline size_type num_children() const noexcept#

Returns the number of child columns.

Returns:

The number of child columns