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

#include <arrow/array.h>

Inheritance diagram for arrow::UnionArray:
arrow::Array

Public Types

using TypeClass = UnionType
 
using type_id_t = uint8_t
 

Public Member Functions

 UnionArray (const std::shared_ptr< ArrayData > &data)
 
 UnionArray (const std::shared_ptr< DataType > &type, int64_t length, const std::vector< std::shared_ptr< Array >> &children, const std::shared_ptr< Buffer > &type_ids, const std::shared_ptr< Buffer > &value_offsets=NULLPTR, const std::shared_ptr< Buffer > &null_bitmap=NULLPTR, int64_t null_count=0, int64_t offset=0)
 
std::shared_ptr< Buffertype_ids () const
 Note that this buffer does not account for any slice offset. More...
 
std::shared_ptr< Buffervalue_offsets () const
 Note that this buffer does not account for any slice offset. More...
 
const type_id_traw_type_ids () const
 
const int32_t * raw_value_offsets () const
 
UnionMode mode () const
 
std::shared_ptr< Arraychild (int pos) const
 
const ArrayUnsafeChild (int pos) const
 Only use this while the UnionArray is in scope. 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
 

Protected Member Functions

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

Protected Attributes

const type_id_traw_type_ids_
 
const int32_t * raw_value_offsets_
 
std::vector< std::shared_ptr< Array > > boxed_fields_
 
- Protected Attributes inherited from arrow::Array
std::shared_ptr< ArrayDatadata_
 
const uint8_t * null_bitmap_data_
 

Member Typedef Documentation

◆ type_id_t

◆ TypeClass

Constructor & Destructor Documentation

◆ UnionArray() [1/2]

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

◆ UnionArray() [2/2]

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

Member Function Documentation

◆ child()

std::shared_ptr<Array> arrow::UnionArray::child ( int  pos) const

◆ mode()

UnionMode arrow::UnionArray::mode ( ) const
inline

◆ raw_type_ids()

const type_id_t* arrow::UnionArray::raw_type_ids ( ) const
inline

◆ raw_value_offsets()

const int32_t* arrow::UnionArray::raw_value_offsets ( ) const
inline

◆ SetData()

void arrow::UnionArray::SetData ( const std::shared_ptr< ArrayData > &  data)
protected

◆ type_ids()

std::shared_ptr<Buffer> arrow::UnionArray::type_ids ( ) const
inline

Note that this buffer does not account for any slice offset.

◆ UnsafeChild()

const Array* arrow::UnionArray::UnsafeChild ( int  pos) const

Only use this while the UnionArray is in scope.

◆ value_offsets()

std::shared_ptr<Buffer> arrow::UnionArray::value_offsets ( ) const
inline

Note that this buffer does not account for any slice offset.

Member Data Documentation

◆ boxed_fields_

std::vector<std::shared_ptr<Array> > arrow::UnionArray::boxed_fields_
mutableprotected

◆ raw_type_ids_

const type_id_t* arrow::UnionArray::raw_type_ids_
protected

◆ raw_value_offsets_

const int32_t* arrow::UnionArray::raw_value_offsets_
protected

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