Apache Arrow (C++)
A columnar in-memory analytics layer designed to accelerate big data.
Public Types | Public Member Functions | List of all members
arrow::StructArray Class Reference

Concrete Array class for struct data. More...

#include <arrow/array.h>

Inheritance diagram for arrow::StructArray:

Public Types

using TypeClass = StructType

Public Member Functions

 StructArray (const std::shared_ptr< ArrayData > &data)
 StructArray (const std::shared_ptr< DataType > &type, int64_t length, const std::vector< std::shared_ptr< Array >> &children, std::shared_ptr< Buffer > null_bitmap=NULLPTR, int64_t null_count=0, int64_t offset=0)
std::shared_ptr< Arrayfield (int pos) const
Status Flatten (MemoryPool *pool, ArrayVector *out) const
 Flatten this array as a vector of arrays, one for each field. More...
- Public Member Functions inherited from arrow::Array
virtual ~Array ()=default
bool IsNull (int64_t i) const
 Return true if value at index is null. Does not boundscheck. More...
bool IsValid (int64_t i) const
 Return true if value at index is valid (not null). More...
int64_t length () const
 Size in the number of elements this array contains. More...
int64_t offset () const
 A relative position into another array's data, to enable zero-copy slicing. More...
int64_t null_count () const
 The number of null entries in the array. More...
std::shared_ptr< DataTypetype () const
Type::type type_id () const
std::shared_ptr< Buffernull_bitmap () const
 Buffer for the null bitmap. More...
const uint8_t * null_bitmap_data () const
 Raw pointer to the null bitmap. More...
bool Equals (const Array &arr) const
bool Equals (const std::shared_ptr< Array > &arr) const
bool ApproxEquals (const std::shared_ptr< Array > &arr) const
bool ApproxEquals (const Array &arr) const
bool RangeEquals (int64_t start_idx, int64_t end_idx, int64_t other_start_idx, const std::shared_ptr< Array > &other) const
 Compare if the range of slots specified are equal for the given array and this array. More...
bool RangeEquals (const Array &other, int64_t start_idx, int64_t end_idx, int64_t other_start_idx) const
Status Accept (ArrayVisitor *visitor) const
std::shared_ptr< ArraySlice (int64_t offset, int64_t length) const
 Construct a zero-copy slice of the array with the indicated offset and length. More...
std::shared_ptr< ArraySlice (int64_t offset) const
 Slice from offset until end of the array. More...
std::shared_ptr< ArrayDatadata () const
int num_fields () const
std::string ToString () const

Additional Inherited Members

- Protected Member Functions inherited from arrow::Array
 Array ()
void SetData (const std::shared_ptr< ArrayData > &data)
 Protected method for constructors. More...
- Protected Attributes inherited from arrow::Array
std::shared_ptr< ArrayDatadata_
const uint8_t * null_bitmap_data_

Detailed Description

Concrete Array class for struct data.

Member Typedef Documentation

◆ TypeClass

Constructor & Destructor Documentation

◆ StructArray() [1/2]

arrow::StructArray::StructArray ( const std::shared_ptr< ArrayData > &  data)

◆ StructArray() [2/2]

arrow::StructArray::StructArray ( const std::shared_ptr< DataType > &  type,
int64_t  length,
const std::vector< std::shared_ptr< Array >> &  children,
std::shared_ptr< Buffer null_bitmap = NULLPTR,
int64_t  null_count = 0,
int64_t  offset = 0 

Member Function Documentation

◆ field()

std::shared_ptr<Array> arrow::StructArray::field ( int  pos) const

◆ Flatten()

Status arrow::StructArray::Flatten ( MemoryPool pool,
ArrayVector out 
) const

Flatten this array as a vector of arrays, one for each field.

[in]poolThe pool to allocate null bitmaps from, if necessary
[out]outThe resulting vector of arrays

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