Struct CArrowSchema
An Arrow C Data Interface Schema, which represents a type, field, or schema.
public struct CArrowSchema
- Inherited Members
Remarks
This is used to export ArrowType, Field, or Schema to other languages. It matches the layout of the ArrowSchema struct described in https://github.com/apache/arrow/blob/main/cpp/src/arrow/c/abi.h.
Fields
ArrowFlagDictionaryOrdered
For dictionary-encoded types, whether the ordering of dictionary indices is semantically meaningful.
public const long ArrowFlagDictionaryOrdered = 1
Field Value
ArrowFlagMapKeysSorted
For map types, whether the keys within each map value are sorted.
public const long ArrowFlagMapKeysSorted = 4
Field Value
ArrowFlagNullable
Whether this field is semantically nullable (regardless of whether it actually has null values)
public const long ArrowFlagNullable = 2
Field Value
children
public CArrowSchema** children
Field Value
dictionary
public CArrowSchema* dictionary
Field Value
flags
public long flags
Field Value
format
public byte* format
Field Value
- byte*
metadata
public byte* metadata
Field Value
- byte*
n_children
public long n_children
Field Value
name
public byte* name
Field Value
- byte*
private_data
public void* private_data
Field Value
- void*
Methods
Create()
Allocate and zero-initialize an unmanaged pointer of this type.
public static CArrowSchema* Create()
Returns
Remarks
This pointer must later be freed by Free(CArrowSchema*).
Free(CArrowSchema*)
Free a pointer that was allocated in Create().
public static void Free(CArrowSchema* schema)
Parameters
schema
CArrowSchema*
Remarks
Do not call this on a pointer that was allocated elsewhere.
GetFlag(long)
Get the value of a particular flag.
public readonly bool GetFlag(long flag)
Parameters
flag
long
Returns
Remarks
Known valid flags are ArrowFlagDictionaryOrdered, ArrowFlagNullable, and ArrowFlagMapKeysSorted.