Top |
gpointer | data-type | Write / Construct Only |
GArrowDataType * | storage-data-type | Read / Write / Construct Only |
gpointer | registry | Write / Construct Only |
GObject ├── GArrowDataType │ ├── GArrowBinaryDataType │ ├── GArrowFixedWidthDataType │ │ ├── GArrowBooleanDataType │ │ ├── GArrowTemporalDataType │ │ │ ├── GArrowDate32DataType │ │ │ ├── GArrowDate64DataType │ │ │ ├── GArrowIntervalDataType │ │ │ ├── GArrowTimeDataType │ │ │ │ ├── GArrowTime32DataType │ │ │ │ ├── GArrowTime64DataType │ │ │ │ ├── GArrowTime32DataType │ │ │ │ ╰── GArrowTime64DataType │ │ │ ╰── GArrowTimestampDataType │ │ ├── GArrowFixedSizeBinaryDataType │ │ ├── GArrowDictionaryDataType │ │ ├── GArrowNumericDataType │ │ │ ├── GArrowFloatingPointDataType │ │ │ ├── GArrowIntegerDataType │ │ │ ╰── GArrowIntegerDataType │ │ │ ├── GArrowInt16DataType │ │ │ ├── GArrowInt32DataType │ │ │ ├── GArrowInt64DataType │ │ │ ├── GArrowInt8DataType │ │ │ ├── GArrowUInt16DataType │ │ │ ├── GArrowUInt32DataType │ │ │ ├── GArrowUInt64DataType │ │ │ ├── GArrowUInt8DataType │ │ │ ├── GArrowInt16DataType │ │ │ ├── GArrowInt32DataType │ │ │ ├── GArrowInt64DataType │ │ │ ╰── GArrowInt8DataType │ │ ├── GArrowRunEndEncodedDataType │ │ ├── GArrowFixedSizeBinaryDataType │ │ │ ├── GArrowDecimalDataType │ │ │ ╰── GArrowDecimalDataType │ │ │ ├── GArrowDecimal128DataType │ │ │ ├── GArrowDecimal256DataType │ │ │ ├── GArrowDecimal128DataType │ │ │ ╰── GArrowDecimal256DataType │ │ ├── GArrowNumericDataType │ │ │ ╰── GArrowFloatingPointDataType │ │ │ ├── GArrowDoubleDataType │ │ │ ├── GArrowFloatDataType │ │ │ ├── GArrowHalfFloatDataType │ │ │ ├── GArrowDoubleDataType │ │ │ ╰── GArrowFloatDataType │ │ ╰── GArrowTemporalDataType │ │ ├── GArrowIntervalDataType │ │ │ ├── GArrowDayTimeIntervalDataType │ │ │ ├── GArrowMonthDayNanoIntervalDataType │ │ │ ├── GArrowMonthIntervalDataType │ │ │ ╰── GArrowDayTimeIntervalDataType │ │ ├── GArrowDate32DataType │ │ ╰── GArrowDate64DataType │ ├── GArrowUnionDataType │ ├── GArrowExtensionDataType │ ├── GArrowLargeBinaryDataType │ ├── GArrowLargeListDataType │ ├── GArrowLargeStringDataType │ ├── GArrowListDataType │ ├── GArrowNullDataType │ ├── GArrowStringDataType │ ├── GArrowStructDataType │ ├── GArrowFixedWidthDataType │ │ ╰── GArrowBooleanDataType │ ╰── GArrowBinaryDataType ╰── GArrowExtensionDataTypeRegistry
GArrowDataType is a base class for all data type classes such as GArrowBooleanDataType.
GArrowNullDataType is a class for the null data type.
GArrowBooleanDataType is a class for the boolean data type.
GArrowInt8DataType is a class for the 8-bit integer data type.
GArrowUInt8DataType is a class for the 8-bit unsigned integer data type.
GArrowInt16DataType is a class for the 16-bit integer data type.
GArrowUInt16DataType is a class for the 16-bit unsigned integer data type.
GArrowInt32DataType is a class for the 32-bit integer data type.
GArrowUInt32DataType is a class for the 32-bit unsigned integer data type.
GArrowInt64DataType is a class for the 64-bit integer data type.
GArrowUInt64DataType is a class for the 64-bit unsigned integer data type.
GArrowHalfFloatDataType is a class for the 16-bit floating point data type.
GArrowFloatDataType is a class for the 32-bit floating point data type.
GArrowDoubleDataType is a class for the 64-bit floating point data type.
GArrowBinaryDataType is a class for the binary data type.
GArrowLargeBinaryDataType is a class for the 64-bit offsets binary data type.
GArrowFixedSizeBinaryDataType is a class for the fixed-size binary data type.
GArrowStringDataType is a class for the UTF-8 encoded string data type.
GArrowLargeStringDataType is a class for the 64-bit offsets UTF-8 encoded string data type.
GArrowTemporalDataType is an abstract class for temporal related data type such as GArrowDate32DataType.
GArrowDate32DataType is a class for the number of days since UNIX epoch in the 32-bit signed integer data type.
GArrowDate64DataType is a class for the number of milliseconds since UNIX epoch in the 64-bit signed integer data type.
GArrowTimestampDataType is a class for the number of seconds/milliseconds/microseconds/nanoseconds since UNIX epoch in the 64-bit signed integer data type.
GArrowTime32DataType is a class for the number of seconds or milliseconds since midnight in the 32-bit signed integer data type.
GArrowTime64DataType is a class for the number of microseconds or nanoseconds since midnight in the 64-bit signed integer data type.
GArrowIntervalDataType is an abstract class for interval related data type such as GArrowMonthIntervalDataType.
GArrowMonthIntervalDataType is a class for the month intarval data type.
GArrowDayTimeIntervalDataType is a class for the day time intarval data type.
GArrowMonthDayNanoIntervalDataType is a class for the month day nano intarval data type.
GArrowDecimalDataType is a base class for the decimal data types.
GArrowDecimal128DataType is a class for the 128-bit decimal data type.
GArrowDecimal256DataType is a class for the 256-bit decimal data type.
GArrowExtensionDataType is a base class for user-defined extension data types.
GArrowExtensionDataTypeRegistry is a class to manage extension data types.
GArrowDataType * garrow_data_type_import (gpointer c_abi_schema
,GError **error
);
An imported GArrowDataType on success,
NULL
on error.
You don't need to release the passed struct ArrowSchema *
,
even if this function reports an error.
[transfer full][nullable]
Since: 6.0.0
gpointer garrow_data_type_export (GArrowDataType *data_type
,GError **error
);
An exported GArrowDataType as
struct ArrowStruct *
on success, NULL
on error.
It should be freed with the ArrowSchema::release
callback then
g_free()
when no longer needed.
[transfer full][nullable]
Since: 6.0.0
gboolean garrow_data_type_equal (GArrowDataType *data_type
,GArrowDataType *other_data_type
);
gchar *
garrow_data_type_to_string (GArrowDataType *data_type
);
The string representation of the data type.
It should be freed with g_free()
when no longer needed.
gchar *
garrow_data_type_get_name (GArrowDataType *data_type
);
Since: 3.0.0
gint
garrow_fixed_width_data_type_get_bit_width
(GArrowFixedWidthDataType *data_type
);
gboolean
garrow_integer_data_type_is_signed (GArrowIntegerDataType *data_type
);
Since: 0.16.0
GArrowHalfFloatDataType *
garrow_half_float_data_type_new (void
);
Since: 11.0.0
GArrowFixedSizeBinaryDataType *
garrow_fixed_size_binary_data_type_new
(gint32 byte_width
);
gint32
garrow_fixed_size_binary_data_type_get_byte_width
(GArrowFixedSizeBinaryDataType *data_type
);
Since: 0.12.0
GArrowLargeBinaryDataType *
garrow_large_binary_data_type_new (void
);
Since: 0.17.0
GArrowLargeStringDataType *
garrow_large_string_data_type_new (void
);
Since: 0.17.0
GArrowDate32DataType *
garrow_date32_data_type_new (void
);
A newly created the number of milliseconds since UNIX epoch in 32-bit signed integer data type.
Since: 0.7.0
GArrowDate64DataType *
garrow_date64_data_type_new (void
);
A newly created the number of milliseconds since UNIX epoch in 64-bit signed integer data type.
Since: 0.7.0
GArrowTimestampDataType *
garrow_timestamp_data_type_new (GArrowTimeUnit unit
);
A newly created the number of seconds/milliseconds/microseconds/nanoseconds since UNIX epoch in 64-bit signed integer data type.
Since: 0.7.0
GArrowTimeUnit
garrow_timestamp_data_type_get_unit (GArrowTimestampDataType *timestamp_data_type
);
Since: 0.8.0
GArrowTimeUnit
garrow_time_data_type_get_unit (GArrowTimeDataType *time_data_type
);
Since: 0.7.0
GArrowTime32DataType * garrow_time32_data_type_new (GArrowTimeUnit unit
,GError **error
);
A newly created the number of seconds or milliseconds since midnight in 32-bit signed integer data type.
[nullable]
Since: 0.7.0
GArrowTime64DataType * garrow_time64_data_type_new (GArrowTimeUnit unit
,GError **error
);
A newly created the number of seconds or milliseconds since midnight in 64-bit signed integer data type.
[nullable]
Since: 0.7.0
GArrowIntervalType
garrow_interval_data_type_get_interval_type
(GArrowIntervalDataType *type
);
Since: 7.0.0
GArrowMonthIntervalDataType *
garrow_month_interval_data_type_new (void
);
Since: 7.0.0
GArrowDayTimeIntervalDataType *
garrow_day_time_interval_data_type_new
(void
);
Since: 7.0.0
GArrowMonthDayNanoIntervalDataType *
garrow_month_day_nano_interval_data_type_new
(void
);
Since: 7.0.0
GArrowDecimalDataType * garrow_decimal_data_type_new (gint32 precision
,gint32 scale
,GError **error
);
The newly created decimal data type on success, NULL
on error.
GArrowDecimal256DataType is used if precision
is larger than
garrow_decimal128_data_type_max_precision()
,
GArrowDecimal128DataType is used otherwise.
[nullable]
Since: 0.10.0
gint32
garrow_decimal_data_type_get_precision
(GArrowDecimalDataType *decimal_data_type
);
Since: 0.10.0
gint32
garrow_decimal_data_type_get_scale (GArrowDecimalDataType *decimal_data_type
);
Since: 0.10.0
gint32 garrow_decimal128_data_type_max_precision ();
Since: 3.0.0
GArrowDecimal128DataType * garrow_decimal128_data_type_new (gint32 precision
,gint32 scale
,GError **error
);
Since: 0.12.0
gint32 garrow_decimal256_data_type_max_precision ();
Since: 3.0.0
GArrowDecimal256DataType * garrow_decimal256_data_type_new (gint32 precision
,gint32 scale
,GError **error
);
Since: 3.0.0
gchar *
garrow_extension_data_type_get_extension_name
(GArrowExtensionDataType *data_type
);
Since: 3.0.0
GArrowExtensionArray * garrow_extension_data_type_wrap_array (GArrowExtensionDataType *data_type
,GArrowArray *storage
);
Since: 3.0.0
GArrowChunkedArray * garrow_extension_data_type_wrap_chunked_array (GArrowExtensionDataType *data_type
,GArrowChunkedArray *storage
);
Since: 3.0.0
GArrowExtensionDataTypeRegistry *
garrow_extension_data_type_registry_default
(void
);
Since: 3.0.0
gboolean garrow_extension_data_type_registry_register (GArrowExtensionDataTypeRegistry *registry
,GArrowExtensionDataType *data_type
,GError **error
);
Register the given data_type
to the registry
.
Since: 3.0.0
gboolean garrow_extension_data_type_registry_unregister (GArrowExtensionDataTypeRegistry *registry
,const gchar *name
,GError **error
);
Unregister an extension data type that has the given name
from the
registry
.
Since: 3.0.0
GArrowExtensionDataType * garrow_extension_data_type_registry_lookup (GArrowExtensionDataTypeRegistry *registry
,const gchar *name
);
Since: 3.0.0
#define GARROW_TYPE_FIXED_WIDTH_DATA_TYPE (garrow_fixed_width_data_type_get_type())
struct GArrowFixedWidthDataTypeClass { GArrowDataTypeClass parent_class; };
struct GArrowNullDataTypeClass { GArrowDataTypeClass parent_class; };
#define GARROW_TYPE_BOOLEAN_DATA_TYPE (garrow_boolean_data_type_get_type())
struct GArrowBooleanDataTypeClass { GArrowFixedWidthDataTypeClass parent_class; };
#define GARROW_TYPE_NUMERIC_DATA_TYPE (garrow_numeric_data_type_get_type())
struct GArrowNumericDataTypeClass { GArrowFixedWidthDataTypeClass parent_class; };
#define GARROW_TYPE_INTEGER_DATA_TYPE (garrow_integer_data_type_get_type())
struct GArrowIntegerDataTypeClass { GArrowNumericDataTypeClass parent_class; };
struct GArrowInt8DataTypeClass { GArrowIntegerDataTypeClass parent_class; };
struct GArrowUInt8DataTypeClass { GArrowIntegerDataTypeClass parent_class; };
struct GArrowInt16DataTypeClass { GArrowIntegerDataTypeClass parent_class; };
#define GARROW_TYPE_UINT16_DATA_TYPE (garrow_uint16_data_type_get_type())
struct GArrowUInt16DataTypeClass { GArrowIntegerDataTypeClass parent_class; };
struct GArrowInt32DataTypeClass { GArrowIntegerDataTypeClass parent_class; };
#define GARROW_TYPE_UINT32_DATA_TYPE (garrow_uint32_data_type_get_type())
struct GArrowUInt32DataTypeClass { GArrowIntegerDataTypeClass parent_class; };
struct GArrowInt64DataTypeClass { GArrowIntegerDataTypeClass parent_class; };
#define GARROW_TYPE_UINT64_DATA_TYPE (garrow_uint64_data_type_get_type())
struct GArrowUInt64DataTypeClass { GArrowIntegerDataTypeClass parent_class; };
struct GArrowFloatingPointDataTypeClass { GArrowNumericDataTypeClass parent_class; };
#define GARROW_TYPE_HALF_FLOAT_DATA_TYPE (garrow_half_float_data_type_get_type())
struct GArrowHalfFloatDataTypeClass { GArrowFloatingPointDataTypeClass parent_class; };
struct GArrowFloatDataTypeClass { GArrowFloatingPointDataTypeClass parent_class; };
#define GARROW_TYPE_DOUBLE_DATA_TYPE (garrow_double_data_type_get_type())
struct GArrowDoubleDataTypeClass { GArrowFloatingPointDataTypeClass parent_class; };
#define GARROW_TYPE_BINARY_DATA_TYPE (garrow_binary_data_type_get_type())
struct GArrowBinaryDataTypeClass { GArrowDataTypeClass parent_class; };
#define GARROW_TYPE_FIXED_SIZE_BINARY_DATA_TYPE (garrow_fixed_size_binary_data_type_get_type())
struct GArrowFixedSizeBinaryDataTypeClass { GArrowFixedWidthDataTypeClass parent_class; };
#define GARROW_TYPE_LARGE_BINARY_DATA_TYPE (garrow_large_binary_data_type_get_type())
struct GArrowLargeBinaryDataTypeClass { GArrowDataTypeClass parent_class; };
#define GARROW_TYPE_STRING_DATA_TYPE (garrow_string_data_type_get_type())
struct GArrowStringDataTypeClass { GArrowBinaryDataTypeClass parent_class; };
#define GARROW_TYPE_LARGE_STRING_DATA_TYPE (garrow_large_string_data_type_get_type())
struct GArrowLargeStringDataTypeClass { GArrowLargeBinaryDataTypeClass parent_class; };
#define GARROW_TYPE_TEMPORAL_DATA_TYPE (garrow_temporal_data_type_get_type())
struct GArrowTemporalDataTypeClass { GArrowFixedWidthDataTypeClass parent_class; };
#define GARROW_TYPE_DATE32_DATA_TYPE (garrow_date32_data_type_get_type())
struct GArrowDate32DataTypeClass { GArrowTemporalDataTypeClass parent_class; };
#define GARROW_TYPE_DATE64_DATA_TYPE (garrow_date64_data_type_get_type())
struct GArrowDate64DataTypeClass { GArrowTemporalDataTypeClass parent_class; };
#define GARROW_TYPE_TIMESTAMP_DATA_TYPE (garrow_timestamp_data_type_get_type())
struct GArrowTimestampDataTypeClass { GArrowTemporalDataTypeClass parent_class; };
struct GArrowTimeDataTypeClass { GArrowTemporalDataTypeClass parent_class; };
#define GARROW_TYPE_TIME32_DATA_TYPE (garrow_time32_data_type_get_type())
struct GArrowTime32DataTypeClass { GArrowTimeDataTypeClass parent_class; };
#define GARROW_TYPE_TIME64_DATA_TYPE (garrow_time64_data_type_get_type())
struct GArrowTime64DataTypeClass { GArrowTimeDataTypeClass parent_class; };
#define GARROW_TYPE_INTERVAL_DATA_TYPE (garrow_interval_data_type_get_type())
struct GArrowIntervalDataTypeClass { GArrowTimeDataTypeClass parent_class; };
struct GArrowMonthIntervalDataTypeClass { GArrowIntervalDataTypeClass parent_class; };
struct GArrowDayTimeIntervalDataTypeClass { GArrowIntervalDataTypeClass parent_class; };
struct GArrowMonthDayNanoIntervalDataTypeClass { GArrowIntervalDataTypeClass parent_class; };
#define GARROW_TYPE_DECIMAL_DATA_TYPE (garrow_decimal_data_type_get_type())
struct GArrowDecimalDataTypeClass { GArrowFixedSizeBinaryDataTypeClass parent_class; };
#define GARROW_TYPE_DECIMAL128_DATA_TYPE (garrow_decimal128_data_type_get_type())
struct GArrowDecimal128DataTypeClass { GArrowDecimalDataTypeClass parent_class; };
#define GARROW_TYPE_DECIMAL256_DATA_TYPE (garrow_decimal256_data_type_get_type())
struct GArrowDecimal256DataTypeClass { GArrowDecimalDataTypeClass parent_class; };
#define GARROW_TYPE_EXTENSION_DATA_TYPE (garrow_extension_data_type_get_type())
struct GArrowExtensionDataTypeClass { GArrowDataTypeClass parent_class; gchar *(*get_extension_name)(GArrowExtensionDataType *data_type); gboolean (*equal)(GArrowExtensionDataType *data_type, GArrowExtensionDataType *other_data_type); GArrowDataType *(*deserialize)(GArrowExtensionDataType *data_type, GArrowDataType *storage_data_type, GBytes *serialized_data, GError **error); GBytes *(*serialize)(GArrowExtensionDataType *data_type); GType (*get_array_gtype)(GArrowExtensionDataType *data_type); };
It must returns the name of this extension data type. |
||
It must returns |
||
It must returns a serialized GArrowDataType from the given
|
||
It must returns a serialized data of this extension data type to deserialize later. |
||
It must returns GType for corresponding extension array class. |
Since: 3.0.0
struct GArrowExtensionDataTypeRegistryClass { GObjectClass parent_class; };
typedef struct _GArrowDayTimeIntervalDataType GArrowDayTimeIntervalDataType;
typedef struct _GArrowExtensionDataTypeRegistry GArrowExtensionDataTypeRegistry;
typedef struct _GArrowFixedSizeBinaryDataType GArrowFixedSizeBinaryDataType;
typedef struct _GArrowFloatingPointDataType GArrowFloatingPointDataType;
typedef struct _GArrowMonthDayNanoIntervalDataType GArrowMonthDayNanoIntervalDataType;
typedef struct _GArrowMonthIntervalDataType GArrowMonthIntervalDataType;
“data-type”
property“data-type” gpointer
The raw std::shared<arrow::DataType> *.
Owner: GArrowDataType
Flags: Write / Construct Only
“storage-data-type”
property“storage-data-type” GArrowDataType *
The underlying GArrowDataType.
Owner: GArrowExtensionDataType
Flags: Read / Write / Construct Only
“registry”
property“registry” gpointer
The raw std::shared<arrow::ExtensionTypeRegistry> *.
Owner: GArrowExtensionDataTypeRegistry
Flags: Write / Construct Only