Apache Arrow (C++)
A columnar in-memory analytics layer designed to accelerate big data.
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
arrow Namespace Reference

Top-level namespace for Apache Arrow C++ API. More...

Namespaces

 adapters
 
 compute
 
 gpu
 
 io
 
 ipc
 
 meta
 
 py
 
 stl
 
 util
 

Classes

class  AdaptiveIntBuilder
 
class  AdaptiveUIntBuilder
 
class  Array
 Array base type Immutable data array with some logical type and some length. More...
 
class  ArrayBuilder
 Base class for all data array builders. More...
 
class  ArrayData
 Mutable container for generic Arrow array data. More...
 
class  ArrayVisitor
 
class  BinaryArray
 
class  BinaryBuilder
 Builder class for variable-length binary data. More...
 
class  BinaryDictionaryBuilder
 
class  BinaryType
 
class  BitReader
 Utility class to read bit/byte stream. More...
 
class  BitWriter
 Utility class to write bit/byte streams. More...
 
class  BooleanArray
 
class  BooleanBuilder
 
class  BooleanType
 
class  BrotliCodec
 
class  Buffer
 Object containing a pointer to a piece of contiguous memory with a particular size. More...
 
class  BufferBuilder
 A class for incrementally building a contiguous chunk of in-memory data. More...
 
class  ChunkedArray
 A data structure managing a list of primitive Arrow arrays logically as one large array. More...
 
class  Codec
 
class  Column
 An immutable column data structure consisting of a field (type metadata) and a chunked data array. More...
 
struct  Compression
 
class  CpuInfo
 CpuInfo is an interface to query for cpu information at runtime. More...
 
class  DataType
 
class  Date32Type
 Date as int32_t days since UNIX epoch. More...
 
class  Date64Type
 Date as int64_t milliseconds since UNIX epoch. More...
 
class  DateType
 
struct  Decimal
 
class  Decimal128
 Represents a signed 128-bit integer in two's complement. More...
 
class  Decimal128Array
 
class  Decimal128Builder
 
class  Decimal128Type
 
class  DecimalType
 
class  DictionaryArray
 
class  DictionaryBuilder
 Array builder for created encoded DictionaryArray from dense array. More...
 
class  DictionaryBuilder< NullType >
 
class  DictionaryType
 
class  DoubleType
 
class  Field
 
class  FixedSizeBinaryArray
 
class  FixedSizeBinaryBuilder
 
class  FixedSizeBinaryType
 
class  FixedWidthType
 
class  FlatArray
 
class  FloatingPoint
 
class  FloatType
 
class  GZipCodec
 
class  HalfFloatType
 
struct  has_c_type
 
class  HashUtil
 Utility class to compute hash values. More...
 
class  Int16Type
 
class  Int32Type
 
class  Int64Type
 
class  Int8Type
 
class  Integer
 
class  IntervalType
 
struct  is_8bit_int
 
struct  is_null_pointer
 is_null_pointer from C++17 More...
 
struct  IsFloatingPoint
 
struct  IsInteger
 
struct  IsNumeric
 
struct  IsOneOf
 Metafunction to allow checking if a type matches any of another set of types. More...
 
struct  IsOneOf< T, U, Args... >
 Base case: nothing has matched. More...
 
struct  IsSignedInt
 
struct  IsUnsignedInt
 
class  KeyValueMetadata
 
class  ListArray
 
class  ListBuilder
 Builder class for variable-length list array value types. More...
 
class  ListType
 
class  LoggingMemoryPool
 
class  Lz4Codec
 
class  MemoryPool
 Base class for memory allocation. More...
 
class  MutableBuffer
 A Buffer whose contents can be mutated. More...
 
class  NestedType
 
class  NoExtraMeta
 
class  NullArray
 Degenerate null type Array. More...
 
class  NullBuilder
 
class  NullType
 
class  Number
 
class  NumericArray
 
class  NumericBuilder
 Base class for all Builders that emit an Array of a scalar numerical type. More...
 
class  NumericTensor
 
class  ParametricType
 A superclass for types having additional metadata. More...
 
struct  PrettyPrintOptions
 
class  PrimitiveArray
 Base class for fixed-size logical types. More...
 
class  PrimitiveBuilder
 
class  PrimitiveCType
 
class  ProxyMemoryPool
 Derived class for memory allocation. More...
 
class  RecordBatch
 Collection of equal-length arrays matching a particular Schema. More...
 
class  RecordBatchBuilder
 Helper class for creating record batches iteratively given a known schema. More...
 
class  RecordBatchReader
 Abstract interface for reading stream of record batches. More...
 
class  ResizableBuffer
 A mutable buffer that can be resized. More...
 
class  RleDecoder
 Utility classes to do run length encoding (RLE) for fixed bit width values. More...
 
class  RleEncoder
 Class to incrementally build the rle data. More...
 
class  Schema
 Sequence of arrow::Field objects describing the columns of a record batch or table data structure. More...
 
class  SnappyCodec
 
class  Status
 
class  stl_allocator
 
class  StringArray
 
class  StringBuilder
 Builder class for UTF8 strings. More...
 
class  StringDictionaryBuilder
 Dictionary array builder with convenience methods for strings. More...
 
class  StringType
 
class  StructArray
 
class  StructBuilder
 Append, Resize and Reserve methods are acting on StructBuilder. More...
 
class  StructType
 
class  Table
 Logical table as sequence of chunked arrays. More...
 
class  TableBatchReader
 Compute a sequence of record batches from a (possibly chunked) Table. More...
 
class  Tensor
 
class  Time32Type
 
class  Time64Type
 
class  TimestampType
 
class  TimeType
 
struct  TimeUnit
 
struct  Type
 Main data type enumeration. More...
 
class  TypedBufferBuilder
 
struct  TypeTraits
 
struct  TypeTraits< BinaryType >
 
struct  TypeTraits< BooleanType >
 
struct  TypeTraits< Date32Type >
 
struct  TypeTraits< Date64Type >
 
struct  TypeTraits< Decimal128Type >
 
struct  TypeTraits< DictionaryType >
 
struct  TypeTraits< DoubleType >
 
struct  TypeTraits< FixedSizeBinaryType >
 
struct  TypeTraits< FloatType >
 
struct  TypeTraits< HalfFloatType >
 
struct  TypeTraits< Int16Type >
 
struct  TypeTraits< Int32Type >
 
struct  TypeTraits< Int64Type >
 
struct  TypeTraits< Int8Type >
 
struct  TypeTraits< ListType >
 
struct  TypeTraits< NullType >
 
struct  TypeTraits< StringType >
 
struct  TypeTraits< StructType >
 
struct  TypeTraits< Time32Type >
 
struct  TypeTraits< Time64Type >
 
struct  TypeTraits< TimestampType >
 
struct  TypeTraits< UInt16Type >
 
struct  TypeTraits< UInt32Type >
 
struct  TypeTraits< UInt64Type >
 
struct  TypeTraits< UInt8Type >
 
struct  TypeTraits< UnionType >
 
class  TypeVisitor
 
class  UInt16Type
 
class  UInt32Type
 
class  UInt64Type
 
class  UInt8Type
 
class  UnionArray
 
struct  UnionMode
 
class  UnionType
 
class  ZSTDCodec
 

Typedefs

using BufferVector = std::vector< std::shared_ptr< Buffer > >
 
using ArrayVector = std::vector< std::shared_ptr< Array > >
 
using DecimalArray = Decimal128Array
 
using UInt8Builder = NumericBuilder< UInt8Type >
 
using UInt16Builder = NumericBuilder< UInt16Type >
 
using UInt32Builder = NumericBuilder< UInt32Type >
 
using UInt64Builder = NumericBuilder< UInt64Type >
 
using Int8Builder = NumericBuilder< Int8Type >
 
using Int16Builder = NumericBuilder< Int16Type >
 
using Int32Builder = NumericBuilder< Int32Type >
 
using Int64Builder = NumericBuilder< Int64Type >
 
using TimestampBuilder = NumericBuilder< TimestampType >
 
using Time32Builder = NumericBuilder< Time32Type >
 
using Time64Builder = NumericBuilder< Time64Type >
 
using Date32Builder = NumericBuilder< Date32Type >
 
using Date64Builder = NumericBuilder< Date64Type >
 
using HalfFloatBuilder = NumericBuilder< HalfFloatType >
 
using FloatBuilder = NumericBuilder< FloatType >
 
using DoubleBuilder = NumericBuilder< DoubleType >
 
using DecimalBuilder = Decimal128Builder
 
using TypePtr = std::shared_ptr< DataType >
 
using Date64Array = NumericArray< Date64Type >
 
using Date32Array = NumericArray< Date32Type >
 
using Time32Array = NumericArray< Time32Type >
 
using Time64Array = NumericArray< Time64Type >
 
using TimestampArray = NumericArray< TimestampType >
 
using IntervalArray = NumericArray< IntervalType >
 
template<typename T >
using is_number = std::is_base_of< Number, T >
 
template<typename T >
using enable_if_8bit_int = typename std::enable_if< is_8bit_int< T >::value >::type
 
template<typename T >
using enable_if_primitive_ctype = typename std::enable_if< std::is_base_of< PrimitiveCType, T >::value >::type
 
template<typename T >
using enable_if_date = typename std::enable_if< std::is_base_of< DateType, T >::value >::type
 
template<typename T >
using enable_if_time = typename std::enable_if< std::is_base_of< TimeType, T >::value >::type
 
template<typename T >
using enable_if_timestamp = typename std::enable_if< std::is_base_of< TimestampType, T >::value >::type
 
template<typename T >
using enable_if_has_c_type = typename std::enable_if< has_c_type< T >::value >::type
 
template<typename T >
using enable_if_null = typename std::enable_if< std::is_same< NullType, T >::value >::type
 
template<typename T >
using enable_if_binary = typename std::enable_if< std::is_base_of< BinaryType, T >::value >::type
 
template<typename T >
using enable_if_boolean = typename std::enable_if< std::is_same< BooleanType, T >::value >::type
 
template<typename T >
using enable_if_fixed_size_binary = typename std::enable_if< std::is_base_of< FixedSizeBinaryType, T >::value >::type
 
template<typename T >
using enable_if_list = typename std::enable_if< std::is_base_of< ListType, T >::value >::type
 
template<typename T >
using enable_if_number = typename std::enable_if< is_number< T >::value >::type
 
typedef int32_t hash_slot_t
 
template<typename T , typename... Args>
using EnableIfIsOneOf = typename std::enable_if< IsOneOf< T, Args... >::value, T >::type
 Shorthand for using IsOneOf + std::enable_if. More...
 

Enumerations

enum  StatusCode : char {
  StatusCode::OK = 0, StatusCode::OutOfMemory = 1, StatusCode::KeyError = 2, StatusCode::TypeError = 3,
  StatusCode::Invalid = 4, StatusCode::IOError = 5, StatusCode::CapacityError = 6, StatusCode::UnknownError = 9,
  StatusCode::NotImplemented = 10, StatusCode::SerializationError = 11, StatusCode::PythonError = 12, StatusCode::PlasmaObjectExists = 20,
  StatusCode::PlasmaObjectNonexistent = 21, StatusCode::PlasmaStoreFull = 22, StatusCode::PlasmaObjectAlreadySealed = 23
}
 
enum  DateUnit : char { DateUnit::DAY = 0, DateUnit::MILLI = 1 }
 

Functions

template<class T1 , class T2 >
bool operator== (const stl_allocator< T1 > &lhs, const stl_allocator< T2 > &rhs) noexcept
 
template<class T1 , class T2 >
bool operator!= (const stl_allocator< T1 > &lhs, const stl_allocator< T2 > &rhs) noexcept
 
std::shared_ptr< ArrayMakeArray (const std::shared_ptr< ArrayData > &data)
 Create a strongly-typed Array instance from generic ArrayData. More...
 
Status ValidateArray (const Array &array)
 Perform any validation checks to determine obvious inconsistencies with the array's internal data. More...
 
std::shared_ptr< BufferSliceMutableBuffer (const std::shared_ptr< Buffer > &buffer, const int64_t offset, const int64_t length)
 Construct a mutable buffer slice. More...
 
Status AllocateBuffer (MemoryPool *pool, const int64_t size, std::shared_ptr< Buffer > *out)
 Allocate a fixed size mutable buffer from a memory pool, zero its padding. More...
 
Status AllocateBuffer (const int64_t size, std::shared_ptr< Buffer > *out)
 Allocate a fixed-size mutable buffer from the default memory pool. More...
 
Status AllocateResizableBuffer (MemoryPool *pool, const int64_t size, std::shared_ptr< ResizableBuffer > *out)
 Allocate a resizeable buffer from a memory pool, zero its padding. More...
 
Status AllocateResizableBuffer (const int64_t size, std::shared_ptr< ResizableBuffer > *out)
 Allocate a resizeable buffer from the default memory pool. More...
 
Status MakeBuilder (MemoryPool *pool, const std::shared_ptr< DataType > &type, std::unique_ptr< ArrayBuilder > *out)
 
bool ArrayEquals (const Array &left, const Array &right)
 Returns true if the arrays are exactly equal. More...
 
bool TensorEquals (const Tensor &left, const Tensor &right)
 
bool ArrayApproxEquals (const Array &left, const Array &right)
 Returns true if the arrays are approximately equal. More...
 
bool ArrayRangeEquals (const Array &left, const Array &right, int64_t start_idx, int64_t end_idx, int64_t other_start_idx)
 Returns true if indicated equal-length segment of arrays is exactly equal. More...
 
bool TypeEquals (const DataType &left, const DataType &right)
 Returns true if the type metadata are exactly equal. More...
 
MemoryPooldefault_memory_pool ()
 
Status PrettyPrint (const RecordBatch &batch, int indent, std::ostream *sink)
 Print human-readable representation of RecordBatch. More...
 
Status PrettyPrint (const Array &arr, int indent, std::ostream *sink)
 Print human-readable representation of Array. More...
 
Status PrettyPrint (const Array &arr, const PrettyPrintOptions &options, std::ostream *sink)
 Print human-readable representation of Array. More...
 
Status PrettyPrint (const Array &arr, const PrettyPrintOptions &options, std::string *result)
 Print human-readable representation of Array. More...
 
Status PrettyPrint (const ChunkedArray &chunked_arr, const PrettyPrintOptions &options, std::ostream *sink)
 Print human-readable representation of ChunkedArray. More...
 
Status PrettyPrint (const ChunkedArray &chunked_arr, const PrettyPrintOptions &options, std::string *result)
 Print human-readable representation of ChunkedArray. More...
 
Status PrettyPrint (const Schema &schema, const PrettyPrintOptions &options, std::ostream *sink)
 
Status PrettyPrint (const Schema &schema, const PrettyPrintOptions &options, std::string *result)
 
Status DebugPrint (const Array &arr, int indent)
 
Status ConcatenateTables (const std::vector< std::shared_ptr< Table >> &tables, std::shared_ptr< Table > *table)
 Construct table from multiple input tables. More...
 
std::ostream & operator<< (std::ostream &os, const DataType &type)
 
std::shared_ptr< DataTypefixed_size_binary (int32_t byte_width)
 Make an instance of FixedSizeBinaryType. More...
 
std::shared_ptr< DataTypedecimal (int32_t precision, int32_t scale)
 Make an instance of DecimalType. More...
 
std::shared_ptr< DataTypelist (const std::shared_ptr< Field > &value_type)
 Make an instance of ListType. More...
 
std::shared_ptr< DataTypelist (const std::shared_ptr< DataType > &value_type)
 Make an instance of ListType. More...
 
std::shared_ptr< DataTypetimestamp (TimeUnit::type unit)
 Make an instance of TimestampType. More...
 
std::shared_ptr< DataTypetimestamp (TimeUnit::type unit, const std::string &timezone)
 Make an instance of TimestampType. More...
 
std::shared_ptr< DataTypetime32 (TimeUnit::type unit)
 Create an instance of 32-bit time type Unit can be either SECOND or MILLI. More...
 
std::shared_ptr< DataTypetime64 (TimeUnit::type unit)
 Create an instance of 64-bit time type Unit can be either MICRO or NANO. More...
 
std::shared_ptr< DataTypestruct_ (const std::vector< std::shared_ptr< Field >> &fields)
 Create an instance of Struct type. More...
 
std::shared_ptr< DataTypeunion_ (const std::vector< std::shared_ptr< Field >> &child_fields, const std::vector< uint8_t > &type_codes, UnionMode::type mode=UnionMode::SPARSE)
 Create an instance of Union type. More...
 
std::shared_ptr< DataTypeunion_ (const std::vector< std::shared_ptr< Array >> &children, UnionMode::type mode=UnionMode::SPARSE)
 Create and instance of Union type. More...
 
std::shared_ptr< DataTypedictionary (const std::shared_ptr< DataType > &index_type, const std::shared_ptr< Array > &values, bool ordered=false)
 Create an instance of Dictionary type. More...
 
std::shared_ptr< Fieldfield (const std::string &name, const std::shared_ptr< DataType > &type, bool nullable=true, const std::shared_ptr< const KeyValueMetadata > &metadata=NULLPTR)
 Create a Field instance. More...
 
std::shared_ptr< Schemaschema (const std::vector< std::shared_ptr< Field >> &fields, const std::shared_ptr< const KeyValueMetadata > &metadata=NULLPTR)
 Create a Schema instance. More...
 
std::shared_ptr< Schemaschema (std::vector< std::shared_ptr< Field >> &&fields, const std::shared_ptr< const KeyValueMetadata > &metadata=NULLPTR)
 Create a Schema instance. More...
 
std::shared_ptr< DataTypenull ()
 
std::shared_ptr< DataTypeboolean ()
 
std::shared_ptr< DataTypeint8 ()
 
std::shared_ptr< DataTypeint16 ()
 
std::shared_ptr< DataTypeint32 ()
 
std::shared_ptr< DataTypeint64 ()
 
std::shared_ptr< DataTypeuint8 ()
 
std::shared_ptr< DataTypeuint16 ()
 
std::shared_ptr< DataTypeuint32 ()
 
std::shared_ptr< DataTypeuint64 ()
 
std::shared_ptr< DataTypefloat16 ()
 
std::shared_ptr< DataTypefloat32 ()
 
std::shared_ptr< DataTypefloat64 ()
 
std::shared_ptr< DataTypeutf8 ()
 
std::shared_ptr< DataTypebinary ()
 
std::shared_ptr< DataTypedate32 ()
 
std::shared_ptr< DataTypedate64 ()
 
std::shared_ptr< DataTypedecimal_type (int precision, int scale)
 
Status GetEmptyBitmap (MemoryPool *pool, int64_t length, std::shared_ptr< Buffer > *result)
 
Status CopyBitmap (MemoryPool *pool, const uint8_t *bitmap, int64_t offset, int64_t length, std::shared_ptr< Buffer > *out)
 Copy a bit range of an existing bitmap. More...
 
int64_t CountSetBits (const uint8_t *data, int64_t bit_offset, int64_t length)
 Compute the number of 1's in the given data array. More...
 
bool BitmapEquals (const uint8_t *left, int64_t left_offset, const uint8_t *right, int64_t right_offset, int64_t bit_length)
 
Status BitmapAnd (MemoryPool *pool, const uint8_t *left, int64_t left_offset, const uint8_t *right, int64_t right_offset, int64_t length, int64_t out_offset, std::shared_ptr< Buffer > *out_buffer)
 
template<typename OutputType , typename InputType >
OutputType checked_cast (InputType &&value)
 
bool operator== (const Decimal128 &left, const Decimal128 &right)
 
bool operator!= (const Decimal128 &left, const Decimal128 &right)
 
bool operator< (const Decimal128 &left, const Decimal128 &right)
 
bool operator<= (const Decimal128 &left, const Decimal128 &right)
 
bool operator> (const Decimal128 &left, const Decimal128 &right)
 
bool operator>= (const Decimal128 &left, const Decimal128 &right)
 
Decimal128 operator- (const Decimal128 &operand)
 
Decimal128 operator~ (const Decimal128 &operand)
 
Decimal128 operator+ (const Decimal128 &left, const Decimal128 &right)
 
Decimal128 operator- (const Decimal128 &left, const Decimal128 &right)
 
Decimal128 operator* (const Decimal128 &left, const Decimal128 &right)
 
Decimal128 operator/ (const Decimal128 &left, const Decimal128 &right)
 
Decimal128 operator% (const Decimal128 &left, const Decimal128 &right)
 
std::shared_ptr< KeyValueMetadatakey_value_metadata (const std::unordered_map< std::string, std::string > &pairs)
 Create a KeyValueMetadata instance. More...
 
template<class FUNCTION >
Status ParallelFor (int num_tasks, FUNCTION &&func)
 
template<class FUNCTION >
Status ParallelFor (int nthreads, int num_tasks, FUNCTION &&func)
 
int GetCpuThreadPoolCapacity ()
 
Status SetCpuThreadPoolCapacity (int threads)
 
template<typename VISITOR >
Status VisitTypeInline (const DataType &type, VISITOR *visitor)
 
template<typename VISITOR >
Status VisitArrayInline (const Array &array, VISITOR *visitor)
 

Variables

constexpr int64_t kUnknownNullCount = -1
 
 NumericArray< Int8Type >
 
 NumericArray< UInt8Type >
 
 NumericArray< Int16Type >
 
 NumericArray< UInt16Type >
 
 NumericArray< Int32Type >
 
 NumericArray< UInt32Type >
 
 NumericArray< Int64Type >
 
 NumericArray< UInt64Type >
 
 NumericArray< HalfFloatType >
 
 NumericArray< FloatType >
 
 NumericArray< DoubleType >
 
 NumericArray< Date32Type >
 
 NumericArray< Date64Type >
 
 NumericArray< Time32Type >
 
 NumericArray< Time64Type >
 
 NumericArray< TimestampType >
 
constexpr int64_t kBinaryMemoryLimit = std::numeric_limits<int32_t>::max() - 1
 
constexpr int64_t kListMaximumElements = std::numeric_limits<int32_t>::max() - 1
 
constexpr int64_t kMinBuilderCapacity = 1 << 5
 

Detailed Description

Top-level namespace for Apache Arrow C++ API.

Typedef Documentation

◆ ArrayVector

using arrow::ArrayVector = typedef std::vector<std::shared_ptr<Array> >

◆ BufferVector

using arrow::BufferVector = typedef std::vector<std::shared_ptr<Buffer> >

◆ Date32Array

◆ Date32Builder

◆ Date64Array

◆ Date64Builder

◆ DecimalArray

◆ DecimalBuilder

◆ DoubleBuilder

◆ enable_if_8bit_int

template<typename T >
using arrow::enable_if_8bit_int = typedef typename std::enable_if<is_8bit_int<T>::value>::type

◆ enable_if_binary

template<typename T >
using arrow::enable_if_binary = typedef typename std::enable_if<std::is_base_of<BinaryType, T>::value>::type

◆ enable_if_boolean

template<typename T >
using arrow::enable_if_boolean = typedef typename std::enable_if<std::is_same<BooleanType, T>::value>::type

◆ enable_if_date

template<typename T >
using arrow::enable_if_date = typedef typename std::enable_if<std::is_base_of<DateType, T>::value>::type

◆ enable_if_fixed_size_binary

template<typename T >
using arrow::enable_if_fixed_size_binary = typedef typename std::enable_if<std::is_base_of<FixedSizeBinaryType, T>::value>::type

◆ enable_if_has_c_type

template<typename T >
using arrow::enable_if_has_c_type = typedef typename std::enable_if<has_c_type<T>::value>::type

◆ enable_if_list

template<typename T >
using arrow::enable_if_list = typedef typename std::enable_if<std::is_base_of<ListType, T>::value>::type

◆ enable_if_null

template<typename T >
using arrow::enable_if_null = typedef typename std::enable_if<std::is_same<NullType, T>::value>::type

◆ enable_if_number

template<typename T >
using arrow::enable_if_number = typedef typename std::enable_if<is_number<T>::value>::type

◆ enable_if_primitive_ctype

template<typename T >
using arrow::enable_if_primitive_ctype = typedef typename std::enable_if<std::is_base_of<PrimitiveCType, T>::value>::type

◆ enable_if_time

template<typename T >
using arrow::enable_if_time = typedef typename std::enable_if<std::is_base_of<TimeType, T>::value>::type

◆ enable_if_timestamp

template<typename T >
using arrow::enable_if_timestamp = typedef typename std::enable_if<std::is_base_of<TimestampType, T>::value>::type

◆ EnableIfIsOneOf

template<typename T , typename... Args>
using arrow::EnableIfIsOneOf = typedef typename std::enable_if<IsOneOf<T, Args...>::value, T>::type

Shorthand for using IsOneOf + std::enable_if.

◆ FloatBuilder

◆ HalfFloatBuilder

◆ hash_slot_t

typedef int32_t arrow::hash_slot_t

◆ Int16Builder

◆ Int32Builder

◆ Int64Builder

◆ Int8Builder

◆ IntervalArray

◆ is_number

template<typename T >
using arrow::is_number = typedef std::is_base_of<Number, T>

◆ Time32Array

◆ Time32Builder

◆ Time64Array

◆ Time64Builder

◆ TimestampArray

◆ TimestampBuilder

◆ TypePtr

using arrow::TypePtr = typedef std::shared_ptr<DataType>

◆ UInt16Builder

◆ UInt32Builder

◆ UInt64Builder

◆ UInt8Builder

Enumeration Type Documentation

◆ DateUnit

enum arrow::DateUnit : char
strong
Enumerator
DAY 
MILLI 

◆ StatusCode

enum arrow::StatusCode : char
strong
Enumerator
OK 
OutOfMemory 
KeyError 
TypeError 
Invalid 
IOError 
CapacityError 
UnknownError 
NotImplemented 
SerializationError 
PythonError 
PlasmaObjectExists 
PlasmaObjectNonexistent 
PlasmaStoreFull 
PlasmaObjectAlreadySealed 

Function Documentation

◆ AllocateBuffer() [1/2]

Status arrow::AllocateBuffer ( MemoryPool pool,
const int64_t  size,
std::shared_ptr< Buffer > *  out 
)

Allocate a fixed size mutable buffer from a memory pool, zero its padding.

Parameters
[in]poola memory pool
[in]sizesize of buffer to allocate
[out]outthe allocated buffer (contains padding)
Returns
Status message

◆ AllocateBuffer() [2/2]

Status arrow::AllocateBuffer ( const int64_t  size,
std::shared_ptr< Buffer > *  out 
)

Allocate a fixed-size mutable buffer from the default memory pool.

Parameters
[in]sizesize of buffer to allocate
[out]outthe allocated buffer (contains padding)
Returns
Status message

◆ AllocateResizableBuffer() [1/2]

Status arrow::AllocateResizableBuffer ( MemoryPool pool,
const int64_t  size,
std::shared_ptr< ResizableBuffer > *  out 
)

Allocate a resizeable buffer from a memory pool, zero its padding.

Parameters
[in]poola memory pool
[in]sizesize of buffer to allocate
[out]outthe allocated buffer
Returns
Status message

◆ AllocateResizableBuffer() [2/2]

Status arrow::AllocateResizableBuffer ( const int64_t  size,
std::shared_ptr< ResizableBuffer > *  out 
)

Allocate a resizeable buffer from the default memory pool.

Parameters
[in]sizesize of buffer to allocate
[out]outthe allocated buffer
Returns
Status message

◆ ArrayApproxEquals()

bool arrow::ArrayApproxEquals ( const Array left,
const Array right 
)

Returns true if the arrays are approximately equal.

For non-floating point types, this is equivalent to ArrayEquals(left, right)

◆ ArrayEquals()

bool arrow::ArrayEquals ( const Array left,
const Array right 
)

Returns true if the arrays are exactly equal.

◆ ArrayRangeEquals()

bool arrow::ArrayRangeEquals ( const Array left,
const Array right,
int64_t  start_idx,
int64_t  end_idx,
int64_t  other_start_idx 
)

Returns true if indicated equal-length segment of arrays is exactly equal.

◆ binary()

std::shared_ptr<DataType> arrow::binary ( )

◆ BitmapAnd()

Status arrow::BitmapAnd ( MemoryPool pool,
const uint8_t *  left,
int64_t  left_offset,
const uint8_t *  right,
int64_t  right_offset,
int64_t  length,
int64_t  out_offset,
std::shared_ptr< Buffer > *  out_buffer 
)

◆ BitmapEquals()

bool arrow::BitmapEquals ( const uint8_t *  left,
int64_t  left_offset,
const uint8_t *  right,
int64_t  right_offset,
int64_t  bit_length 
)

◆ boolean()

std::shared_ptr<DataType> arrow::boolean ( )

◆ checked_cast()

template<typename OutputType , typename InputType >
OutputType arrow::checked_cast ( InputType &&  value)
inline

◆ ConcatenateTables()

Status arrow::ConcatenateTables ( const std::vector< std::shared_ptr< Table >> &  tables,
std::shared_ptr< Table > *  table 
)

Construct table from multiple input tables.

Returns
Status, fails if any schemas are different

◆ CopyBitmap()

Status arrow::CopyBitmap ( MemoryPool pool,
const uint8_t *  bitmap,
int64_t  offset,
int64_t  length,
std::shared_ptr< Buffer > *  out 
)

Copy a bit range of an existing bitmap.

Parameters
[in]poolmemory pool to allocate memory from
[in]bitmapsource data
[in]offsetbit offset into the source data
[in]lengthnumber of bits to copy
[out]outthe resulting copy
Returns
Status message

◆ CountSetBits()

int64_t arrow::CountSetBits ( const uint8_t *  data,
int64_t  bit_offset,
int64_t  length 
)

Compute the number of 1's in the given data array.

Parameters
[in]dataa packed LSB-ordered bitmap as a byte array
[in]bit_offseta bitwise offset into the bitmap
[in]lengththe number of bits to inspect in the bitmap relative to the offset
Returns
The number of set (1) bits in the range

◆ date32()

std::shared_ptr<DataType> arrow::date32 ( )

◆ date64()

std::shared_ptr<DataType> arrow::date64 ( )

◆ DebugPrint()

Status arrow::DebugPrint ( const Array arr,
int  indent 
)

◆ decimal()

std::shared_ptr<DataType> arrow::decimal ( int32_t  precision,
int32_t  scale 
)

Make an instance of DecimalType.

◆ decimal_type()

std::shared_ptr<DataType> arrow::decimal_type ( int  precision,
int  scale 
)

◆ default_memory_pool()

MemoryPool* arrow::default_memory_pool ( )

◆ dictionary()

std::shared_ptr<DataType> arrow::dictionary ( const std::shared_ptr< DataType > &  index_type,
const std::shared_ptr< Array > &  values,
bool  ordered = false 
)

Create an instance of Dictionary type.

◆ field()

std::shared_ptr<Field> arrow::field ( const std::string &  name,
const std::shared_ptr< DataType > &  type,
bool  nullable = true,
const std::shared_ptr< const KeyValueMetadata > &  metadata = NULLPTR 
)

Create a Field instance.

Parameters
namethe field name
typethe field value type
nullablewhether the values are nullable, default true
metadataany custom key-value metadata, default null

◆ fixed_size_binary()

std::shared_ptr<DataType> arrow::fixed_size_binary ( int32_t  byte_width)

Make an instance of FixedSizeBinaryType.

◆ float16()

std::shared_ptr<DataType> arrow::float16 ( )

◆ float32()

std::shared_ptr<DataType> arrow::float32 ( )

◆ float64()

std::shared_ptr<DataType> arrow::float64 ( )

◆ GetCpuThreadPoolCapacity()

int arrow::GetCpuThreadPoolCapacity ( )

◆ GetEmptyBitmap()

Status arrow::GetEmptyBitmap ( MemoryPool pool,
int64_t  length,
std::shared_ptr< Buffer > *  result 
)

◆ int16()

std::shared_ptr<DataType> arrow::int16 ( )

◆ int32()

std::shared_ptr<DataType> arrow::int32 ( )

◆ int64()

std::shared_ptr<DataType> arrow::int64 ( )

◆ int8()

std::shared_ptr<DataType> arrow::int8 ( )

◆ key_value_metadata()

std::shared_ptr<KeyValueMetadata> arrow::key_value_metadata ( const std::unordered_map< std::string, std::string > &  pairs)

Create a KeyValueMetadata instance.

Parameters
pairskey-value mapping

◆ list() [1/2]

std::shared_ptr<DataType> arrow::list ( const std::shared_ptr< Field > &  value_type)

Make an instance of ListType.

◆ list() [2/2]

std::shared_ptr<DataType> arrow::list ( const std::shared_ptr< DataType > &  value_type)

Make an instance of ListType.

◆ MakeArray()

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

Create a strongly-typed Array instance from generic ArrayData.

Parameters
[in]datathe array contents
Returns
the resulting Array instance

◆ MakeBuilder()

Status arrow::MakeBuilder ( MemoryPool pool,
const std::shared_ptr< DataType > &  type,
std::unique_ptr< ArrayBuilder > *  out 
)

◆ null()

std::shared_ptr<DataType> arrow::null ( )

◆ operator!=() [1/2]

template<class T1 , class T2 >
bool arrow::operator!= ( const stl_allocator< T1 > &  lhs,
const stl_allocator< T2 > &  rhs 
)
noexcept

◆ operator!=() [2/2]

bool arrow::operator!= ( const Decimal128 left,
const Decimal128 right 
)

◆ operator%()

Decimal128 arrow::operator% ( const Decimal128 left,
const Decimal128 right 
)

◆ operator*()

Decimal128 arrow::operator* ( const Decimal128 left,
const Decimal128 right 
)

◆ operator+()

Decimal128 arrow::operator+ ( const Decimal128 left,
const Decimal128 right 
)

◆ operator-() [1/2]

Decimal128 arrow::operator- ( const Decimal128 operand)

◆ operator-() [2/2]

Decimal128 arrow::operator- ( const Decimal128 left,
const Decimal128 right 
)

◆ operator/()

Decimal128 arrow::operator/ ( const Decimal128 left,
const Decimal128 right 
)

◆ operator<()

bool arrow::operator< ( const Decimal128 left,
const Decimal128 right 
)

◆ operator<<()

std::ostream& arrow::operator<< ( std::ostream &  os,
const DataType type 
)
inline

◆ operator<=()

bool arrow::operator<= ( const Decimal128 left,
const Decimal128 right 
)

◆ operator==() [1/2]

template<class T1 , class T2 >
bool arrow::operator== ( const stl_allocator< T1 > &  lhs,
const stl_allocator< T2 > &  rhs 
)
noexcept

◆ operator==() [2/2]

bool arrow::operator== ( const Decimal128 left,
const Decimal128 right 
)

◆ operator>()

bool arrow::operator> ( const Decimal128 left,
const Decimal128 right 
)

◆ operator>=()

bool arrow::operator>= ( const Decimal128 left,
const Decimal128 right 
)

◆ operator~()

Decimal128 arrow::operator~ ( const Decimal128 operand)

◆ ParallelFor() [1/2]

template<class FUNCTION >
Status arrow::ParallelFor ( int  num_tasks,
FUNCTION &&  func 
)

◆ ParallelFor() [2/2]

template<class FUNCTION >
Status arrow::ParallelFor ( int  nthreads,
int  num_tasks,
FUNCTION &&  func 
)

◆ PrettyPrint() [1/8]

Status arrow::PrettyPrint ( const RecordBatch batch,
int  indent,
std::ostream *  sink 
)

Print human-readable representation of RecordBatch.

◆ PrettyPrint() [2/8]

Status arrow::PrettyPrint ( const Array arr,
int  indent,
std::ostream *  sink 
)

Print human-readable representation of Array.

◆ PrettyPrint() [3/8]

Status arrow::PrettyPrint ( const Array arr,
const PrettyPrintOptions options,
std::ostream *  sink 
)

Print human-readable representation of Array.

◆ PrettyPrint() [4/8]

Status arrow::PrettyPrint ( const Array arr,
const PrettyPrintOptions options,
std::string *  result 
)

Print human-readable representation of Array.

◆ PrettyPrint() [5/8]

Status arrow::PrettyPrint ( const ChunkedArray chunked_arr,
const PrettyPrintOptions options,
std::ostream *  sink 
)

Print human-readable representation of ChunkedArray.

◆ PrettyPrint() [6/8]

Status arrow::PrettyPrint ( const ChunkedArray chunked_arr,
const PrettyPrintOptions options,
std::string *  result 
)

Print human-readable representation of ChunkedArray.

◆ PrettyPrint() [7/8]

Status arrow::PrettyPrint ( const Schema schema,
const PrettyPrintOptions options,
std::ostream *  sink 
)

◆ PrettyPrint() [8/8]

Status arrow::PrettyPrint ( const Schema schema,
const PrettyPrintOptions options,
std::string *  result 
)

◆ schema() [1/2]

std::shared_ptr<Schema> arrow::schema ( const std::vector< std::shared_ptr< Field >> &  fields,
const std::shared_ptr< const KeyValueMetadata > &  metadata = NULLPTR 
)

Create a Schema instance.

Parameters
fieldsthe schema's fields
metadataany custom key-value metadata, default null
Returns
schema shared_ptr to Schema

◆ schema() [2/2]

std::shared_ptr<Schema> arrow::schema ( std::vector< std::shared_ptr< Field >> &&  fields,
const std::shared_ptr< const KeyValueMetadata > &  metadata = NULLPTR 
)

Create a Schema instance.

Parameters
fieldsthe schema's fields (rvalue reference)
metadataany custom key-value metadata, default null
Returns
schema shared_ptr to Schema

◆ SetCpuThreadPoolCapacity()

Status arrow::SetCpuThreadPoolCapacity ( int  threads)

◆ SliceMutableBuffer()

std::shared_ptr<Buffer> arrow::SliceMutableBuffer ( const std::shared_ptr< Buffer > &  buffer,
const int64_t  offset,
const int64_t  length 
)

Construct a mutable buffer slice.

If the parent buffer is not mutable, this will abort in debug builds

◆ struct_()

std::shared_ptr<DataType> arrow::struct_ ( const std::vector< std::shared_ptr< Field >> &  fields)

Create an instance of Struct type.

◆ TensorEquals()

bool arrow::TensorEquals ( const Tensor left,
const Tensor right 
)

◆ time32()

std::shared_ptr<DataType> arrow::time32 ( TimeUnit::type  unit)

Create an instance of 32-bit time type Unit can be either SECOND or MILLI.

◆ time64()

std::shared_ptr<DataType> arrow::time64 ( TimeUnit::type  unit)

Create an instance of 64-bit time type Unit can be either MICRO or NANO.

◆ timestamp() [1/2]

std::shared_ptr<DataType> arrow::timestamp ( TimeUnit::type  unit)

Make an instance of TimestampType.

◆ timestamp() [2/2]

std::shared_ptr<DataType> arrow::timestamp ( TimeUnit::type  unit,
const std::string &  timezone 
)

Make an instance of TimestampType.

◆ TypeEquals()

bool arrow::TypeEquals ( const DataType left,
const DataType right 
)

Returns true if the type metadata are exactly equal.

◆ uint16()

std::shared_ptr<DataType> arrow::uint16 ( )

◆ uint32()

std::shared_ptr<DataType> arrow::uint32 ( )

◆ uint64()

std::shared_ptr<DataType> arrow::uint64 ( )

◆ uint8()

std::shared_ptr<DataType> arrow::uint8 ( )

◆ union_() [1/2]

std::shared_ptr<DataType> arrow::union_ ( const std::vector< std::shared_ptr< Field >> &  child_fields,
const std::vector< uint8_t > &  type_codes,
UnionMode::type  mode = UnionMode::SPARSE 
)

Create an instance of Union type.

◆ union_() [2/2]

std::shared_ptr<DataType> arrow::union_ ( const std::vector< std::shared_ptr< Array >> &  children,
UnionMode::type  mode = UnionMode::SPARSE 
)

Create and instance of Union type.

◆ utf8()

std::shared_ptr<DataType> arrow::utf8 ( )

◆ ValidateArray()

Status arrow::ValidateArray ( const Array array)

Perform any validation checks to determine obvious inconsistencies with the array's internal data.

This can be an expensive check.

Parameters
arrayan Array instance
Returns
Status

◆ VisitArrayInline()

template<typename VISITOR >
Status arrow::VisitArrayInline ( const Array array,
VISITOR *  visitor 
)
inline

◆ VisitTypeInline()

template<typename VISITOR >
Status arrow::VisitTypeInline ( const DataType type,
VISITOR *  visitor 
)
inline

Variable Documentation

◆ kBinaryMemoryLimit

constexpr int64_t arrow::kBinaryMemoryLimit = std::numeric_limits<int32_t>::max() - 1

◆ kListMaximumElements

constexpr int64_t arrow::kListMaximumElements = std::numeric_limits<int32_t>::max() - 1

◆ kMinBuilderCapacity

constexpr int64_t arrow::kMinBuilderCapacity = 1 << 5

◆ kUnknownNullCount

constexpr int64_t arrow::kUnknownNullCount = -1

◆ NumericArray< Date32Type >

◆ NumericArray< Date64Type >

◆ NumericArray< DoubleType >

◆ NumericArray< FloatType >

◆ NumericArray< HalfFloatType >

◆ NumericArray< Int16Type >

◆ NumericArray< Int32Type >

◆ NumericArray< Int64Type >

◆ NumericArray< Int8Type >

◆ NumericArray< Time32Type >

◆ NumericArray< Time64Type >

◆ NumericArray< TimestampType >

◆ NumericArray< UInt16Type >

◆ NumericArray< UInt32Type >

◆ NumericArray< UInt64Type >

◆ NumericArray< UInt8Type >