quasardb C API: ArrowArrayStream Struct Reference

quasardb C API

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- Data Structures
- Data Structure Index
- Data Fields

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Data Fields
ArrowArrayStream Struct Reference

## Data Fields
int(* | get_schema )(struct ArrowArrayStream *, struct ArrowSchema *out)
int(* | get_next )(struct ArrowArrayStream *, struct ArrowArray *out)
const char *(* | get_last_error )(struct ArrowArrayStream *)
void(* | release )(struct ArrowArrayStream *)
void * | private_data
| Opaque producer-specific data.

## Field Documentation

const char*(* ArrowArrayStream::get_last_error)(struct ArrowArrayStream *)

Callback to get optional detailed error information. This must only be called if the last stream operation failed with a non-0 return code.

Returns
  pointer to a null-terminated character array describing the last error, or NULL if no description is available.

The returned pointer is only valid until the next operation on this stream (including release).

int(* ArrowArrayStream::get_next)(struct ArrowArrayStream *, struct ArrowArray *out)

Callback to get the next array (if no error and the array is released, the stream has ended)

Returns
  0 if successful, an `errno`-compatible error code otherwise.

If successful, the ArrowArray must be released independently from the stream.

int(* ArrowArrayStream::get_schema)(struct ArrowArrayStream *, struct ArrowSchema *out)

Callback to get the stream type (will be the same for all arrays in the stream).

Returns
  0 if successful, an `errno`-compatible error code otherwise.

If successful, the ArrowSchema must be released independently from the stream.

void(* ArrowArrayStream::release)(struct ArrowArrayStream *)

Release callback: release the stream's own resources. Note that arrays returned by `get_next` must be individually released.

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

- qdb/arrow_abi.h