This is an automated email from the ASF dual-hosted git repository. uwe pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/arrow.git
The following commit(s) were added to refs/heads/master by this push: new bdedf23 ARROW-2088: [GLib] Add GArrowNumericArray bdedf23 is described below commit bdedf2390aafd7809032a2c6c5946db2123be325 Author: Kouhei Sutou <k...@clear-code.com> AuthorDate: Sun Feb 4 19:56:11 2018 +0100 ARROW-2088: [GLib] Add GArrowNumericArray We can use the class to determine whether an array is a numeric array or not. Author: Kouhei Sutou <k...@clear-code.com> Closes #1556 from kou/glib-add-numeric-array and squashes the following commits: 41a2535 [Kouhei Sutou] [GLib] Add GArrowNumericArray --- c_glib/arrow-glib/basic-array.cpp | 45 ++- c_glib/arrow-glib/basic-array.h | 724 +++++++------------------------------- 2 files changed, 149 insertions(+), 620 deletions(-) diff --git a/c_glib/arrow-glib/basic-array.cpp b/c_glib/arrow-glib/basic-array.cpp index 3c027c0..35a5ea8 100644 --- a/c_glib/arrow-glib/basic-array.cpp +++ b/c_glib/arrow-glib/basic-array.cpp @@ -778,9 +778,24 @@ garrow_boolean_array_get_values(GArrowBooleanArray *array, } +G_DEFINE_TYPE(GArrowNumericArray, \ + garrow_numeric_array, \ + GARROW_TYPE_PRIMITIVE_ARRAY) + +static void +garrow_numeric_array_init(GArrowNumericArray *object) +{ +} + +static void +garrow_numeric_array_class_init(GArrowNumericArrayClass *klass) +{ +} + + G_DEFINE_TYPE(GArrowInt8Array, \ garrow_int8_array, \ - GARROW_TYPE_PRIMITIVE_ARRAY) + GARROW_TYPE_NUMERIC_ARRAY) static void garrow_int8_array_init(GArrowInt8Array *object) @@ -853,7 +868,7 @@ garrow_int8_array_get_values(GArrowInt8Array *array, G_DEFINE_TYPE(GArrowUInt8Array, \ garrow_uint8_array, \ - GARROW_TYPE_PRIMITIVE_ARRAY) + GARROW_TYPE_NUMERIC_ARRAY) static void garrow_uint8_array_init(GArrowUInt8Array *object) @@ -926,7 +941,7 @@ garrow_uint8_array_get_values(GArrowUInt8Array *array, G_DEFINE_TYPE(GArrowInt16Array, \ garrow_int16_array, \ - GARROW_TYPE_PRIMITIVE_ARRAY) + GARROW_TYPE_NUMERIC_ARRAY) static void garrow_int16_array_init(GArrowInt16Array *object) @@ -999,7 +1014,7 @@ garrow_int16_array_get_values(GArrowInt16Array *array, G_DEFINE_TYPE(GArrowUInt16Array, \ garrow_uint16_array, \ - GARROW_TYPE_PRIMITIVE_ARRAY) + GARROW_TYPE_NUMERIC_ARRAY) static void garrow_uint16_array_init(GArrowUInt16Array *object) @@ -1072,7 +1087,7 @@ garrow_uint16_array_get_values(GArrowUInt16Array *array, G_DEFINE_TYPE(GArrowInt32Array, \ garrow_int32_array, \ - GARROW_TYPE_PRIMITIVE_ARRAY) + GARROW_TYPE_NUMERIC_ARRAY) static void garrow_int32_array_init(GArrowInt32Array *object) @@ -1145,7 +1160,7 @@ garrow_int32_array_get_values(GArrowInt32Array *array, G_DEFINE_TYPE(GArrowUInt32Array, \ garrow_uint32_array, \ - GARROW_TYPE_PRIMITIVE_ARRAY) + GARROW_TYPE_NUMERIC_ARRAY) static void garrow_uint32_array_init(GArrowUInt32Array *object) @@ -1218,7 +1233,7 @@ garrow_uint32_array_get_values(GArrowUInt32Array *array, G_DEFINE_TYPE(GArrowInt64Array, \ garrow_int64_array, \ - GARROW_TYPE_PRIMITIVE_ARRAY) + GARROW_TYPE_NUMERIC_ARRAY) static void garrow_int64_array_init(GArrowInt64Array *object) @@ -1293,7 +1308,7 @@ garrow_int64_array_get_values(GArrowInt64Array *array, G_DEFINE_TYPE(GArrowUInt64Array, \ garrow_uint64_array, \ - GARROW_TYPE_PRIMITIVE_ARRAY) + GARROW_TYPE_NUMERIC_ARRAY) static void garrow_uint64_array_init(GArrowUInt64Array *object) @@ -1368,7 +1383,7 @@ garrow_uint64_array_get_values(GArrowUInt64Array *array, G_DEFINE_TYPE(GArrowFloatArray, \ garrow_float_array, \ - GARROW_TYPE_PRIMITIVE_ARRAY) + GARROW_TYPE_NUMERIC_ARRAY) static void garrow_float_array_init(GArrowFloatArray *object) @@ -1441,7 +1456,7 @@ garrow_float_array_get_values(GArrowFloatArray *array, G_DEFINE_TYPE(GArrowDoubleArray, \ garrow_double_array, \ - GARROW_TYPE_PRIMITIVE_ARRAY) + GARROW_TYPE_NUMERIC_ARRAY) static void garrow_double_array_init(GArrowDoubleArray *object) @@ -1690,7 +1705,7 @@ garrow_string_array_get_string(GArrowStringArray *array, G_DEFINE_TYPE(GArrowDate32Array, \ garrow_date32_array, \ - GARROW_TYPE_PRIMITIVE_ARRAY) + GARROW_TYPE_NUMERIC_ARRAY) static void garrow_date32_array_init(GArrowDate32Array *object) @@ -1767,7 +1782,7 @@ garrow_date32_array_get_values(GArrowDate32Array *array, G_DEFINE_TYPE(GArrowDate64Array, \ garrow_date64_array, \ - GARROW_TYPE_PRIMITIVE_ARRAY) + GARROW_TYPE_NUMERIC_ARRAY) static void garrow_date64_array_init(GArrowDate64Array *object) @@ -1846,7 +1861,7 @@ garrow_date64_array_get_values(GArrowDate64Array *array, G_DEFINE_TYPE(GArrowTimestampArray, \ garrow_timestamp_array, \ - GARROW_TYPE_PRIMITIVE_ARRAY) + GARROW_TYPE_NUMERIC_ARRAY) static void garrow_timestamp_array_init(GArrowTimestampArray *object) @@ -1929,7 +1944,7 @@ garrow_timestamp_array_get_values(GArrowTimestampArray *array, G_DEFINE_TYPE(GArrowTime32Array, \ garrow_time32_array, \ - GARROW_TYPE_PRIMITIVE_ARRAY) + GARROW_TYPE_NUMERIC_ARRAY) static void garrow_time32_array_init(GArrowTime32Array *object) @@ -2010,7 +2025,7 @@ garrow_time32_array_get_values(GArrowTime32Array *array, G_DEFINE_TYPE(GArrowTime64Array, \ garrow_time64_array, \ - GARROW_TYPE_PRIMITIVE_ARRAY) + GARROW_TYPE_NUMERIC_ARRAY) static void garrow_time64_array_init(GArrowTime64Array *object) diff --git a/c_glib/arrow-glib/basic-array.h b/c_glib/arrow-glib/basic-array.h index 420c30e..4bf0af3 100644 --- a/c_glib/arrow-glib/basic-array.h +++ b/c_glib/arrow-glib/basic-array.h @@ -116,48 +116,17 @@ GType garrow_null_array_get_type(void) G_GNUC_CONST; GArrowNullArray *garrow_null_array_new(gint64 length); -#define GARROW_TYPE_PRIMITIVE_ARRAY \ - (garrow_primitive_array_get_type()) -#define GARROW_PRIMITIVE_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), \ - GARROW_TYPE_PRIMITIVE_ARRAY, \ - GArrowPrimitiveArray)) -#define GARROW_PRIMITIVE_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), \ - GARROW_TYPE_PRIMITIVE_ARRAY, \ - GArrowPrimitiveArrayClass)) -#define GARROW_IS_PRIMITIVE_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ - GARROW_TYPE_PRIMITIVE_ARRAY)) -#define GARROW_IS_PRIMITIVE_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), \ - GARROW_TYPE_PRIMITIVE_ARRAY)) -#define GARROW_PRIMITIVE_ARRAY_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS((obj), \ - GARROW_TYPE_PRIMITIVE_ARRAY, \ - GArrowPrimitiveArrayClass)) - -typedef struct _GArrowPrimitiveArray GArrowPrimitiveArray; -typedef struct _GArrowPrimitiveArrayClass GArrowPrimitiveArrayClass; - -/** - * GArrowPrimitiveArray: - * - * It wraps `arrow::PrimitiveArray`. - */ -struct _GArrowPrimitiveArray -{ - /*< private >*/ - GArrowArray parent_instance; -}; - +#define GARROW_TYPE_PRIMITIVE_ARRAY (garrow_primitive_array_get_type()) +G_DECLARE_DERIVABLE_TYPE(GArrowPrimitiveArray, + garrow_primitive_array, + GARROW, + PRIMITIVE_ARRAY, + GArrowArray) struct _GArrowPrimitiveArrayClass { GArrowArrayClass parent_class; }; -GType garrow_primitive_array_get_type(void) G_GNUC_CONST; - GArrowBuffer *garrow_primitive_array_get_buffer(GArrowPrimitiveArray *array); @@ -213,49 +182,28 @@ gboolean garrow_boolean_array_get_value (GArrowBooleanArray *array, gboolean *garrow_boolean_array_get_values(GArrowBooleanArray *array, gint64 *length); - -#define GARROW_TYPE_INT8_ARRAY \ - (garrow_int8_array_get_type()) -#define GARROW_INT8_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), \ - GARROW_TYPE_INT8_ARRAY, \ - GArrowInt8Array)) -#define GARROW_INT8_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), \ - GARROW_TYPE_INT8_ARRAY, \ - GArrowInt8ArrayClass)) -#define GARROW_IS_INT8_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ - GARROW_TYPE_INT8_ARRAY)) -#define GARROW_IS_INT8_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), \ - GARROW_TYPE_INT8_ARRAY)) -#define GARROW_INT8_ARRAY_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS((obj), \ - GARROW_TYPE_INT8_ARRAY, \ - GArrowInt8ArrayClass)) - -typedef struct _GArrowInt8Array GArrowInt8Array; -typedef struct _GArrowInt8ArrayClass GArrowInt8ArrayClass; - -/** - * GArrowInt8Array: - * - * It wraps `arrow::Int8Array`. - */ -struct _GArrowInt8Array +#define GARROW_TYPE_NUMERIC_ARRAY (garrow_numeric_array_get_type()) +G_DECLARE_DERIVABLE_TYPE(GArrowNumericArray, + garrow_numeric_array, + GARROW, + NUMERIC_ARRAY, + GArrowPrimitiveArray) +struct _GArrowNumericArrayClass { - /*< private >*/ - GArrowPrimitiveArray parent_instance; + GArrowPrimitiveArrayClass parent_class; }; +#define GARROW_TYPE_INT8_ARRAY (garrow_int8_array_get_type()) +G_DECLARE_DERIVABLE_TYPE(GArrowInt8Array, + garrow_int8_array, + GARROW, + INT8_ARRAY, + GArrowNumericArray) struct _GArrowInt8ArrayClass { - GArrowPrimitiveArrayClass parent_class; + GArrowNumericArrayClass parent_class; }; -GType garrow_int8_array_get_type(void) G_GNUC_CONST; - GArrowInt8Array *garrow_int8_array_new(gint64 length, GArrowBuffer *data, GArrowBuffer *null_bitmap, @@ -267,48 +215,17 @@ const gint8 *garrow_int8_array_get_values(GArrowInt8Array *array, gint64 *length); -#define GARROW_TYPE_UINT8_ARRAY \ - (garrow_uint8_array_get_type()) -#define GARROW_UINT8_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), \ - GARROW_TYPE_UINT8_ARRAY, \ - GArrowUInt8Array)) -#define GARROW_UINT8_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), \ - GARROW_TYPE_UINT8_ARRAY, \ - GArrowUInt8ArrayClass)) -#define GARROW_IS_UINT8_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ - GARROW_TYPE_UINT8_ARRAY)) -#define GARROW_IS_UINT8_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), \ - GARROW_TYPE_UINT8_ARRAY)) -#define GARROW_UINT8_ARRAY_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS((obj), \ - GARROW_TYPE_UINT8_ARRAY, \ - GArrowUInt8ArrayClass)) - -typedef struct _GArrowUInt8Array GArrowUInt8Array; -typedef struct _GArrowUInt8ArrayClass GArrowUInt8ArrayClass; - -/** - * GArrowUInt8Array: - * - * It wraps `arrow::UInt8Array`. - */ -struct _GArrowUInt8Array -{ - /*< private >*/ - GArrowPrimitiveArray parent_instance; -}; - +#define GARROW_TYPE_UINT8_ARRAY (garrow_uint8_array_get_type()) +G_DECLARE_DERIVABLE_TYPE(GArrowUInt8Array, + garrow_uint8_array, + GARROW, + UINT8_ARRAY, + GArrowNumericArray) struct _GArrowUInt8ArrayClass { - GArrowPrimitiveArrayClass parent_class; + GArrowNumericArrayClass parent_class; }; -GType garrow_uint8_array_get_type(void) G_GNUC_CONST; - GArrowUInt8Array *garrow_uint8_array_new(gint64 length, GArrowBuffer *data, GArrowBuffer *null_bitmap, @@ -320,48 +237,17 @@ const guint8 *garrow_uint8_array_get_values(GArrowUInt8Array *array, gint64 *length); -#define GARROW_TYPE_INT16_ARRAY \ - (garrow_int16_array_get_type()) -#define GARROW_INT16_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), \ - GARROW_TYPE_INT16_ARRAY, \ - GArrowInt16Array)) -#define GARROW_INT16_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), \ - GARROW_TYPE_INT16_ARRAY, \ - GArrowInt16ArrayClass)) -#define GARROW_IS_INT16_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ - GARROW_TYPE_INT16_ARRAY)) -#define GARROW_IS_INT16_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), \ - GARROW_TYPE_INT16_ARRAY)) -#define GARROW_INT16_ARRAY_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS((obj), \ - GARROW_TYPE_INT16_ARRAY, \ - GArrowInt16ArrayClass)) - -typedef struct _GArrowInt16Array GArrowInt16Array; -typedef struct _GArrowInt16ArrayClass GArrowInt16ArrayClass; - -/** - * GArrowInt16Array: - * - * It wraps `arrow::Int16Array`. - */ -struct _GArrowInt16Array -{ - /*< private >*/ - GArrowPrimitiveArray parent_instance; -}; - +#define GARROW_TYPE_INT16_ARRAY (garrow_int16_array_get_type()) +G_DECLARE_DERIVABLE_TYPE(GArrowInt16Array, + garrow_int16_array, + GARROW, + INT16_ARRAY, + GArrowNumericArray) struct _GArrowInt16ArrayClass { - GArrowPrimitiveArrayClass parent_class; + GArrowNumericArrayClass parent_class; }; -GType garrow_int16_array_get_type(void) G_GNUC_CONST; - GArrowInt16Array *garrow_int16_array_new(gint64 length, GArrowBuffer *data, GArrowBuffer *null_bitmap, @@ -373,48 +259,17 @@ const gint16 *garrow_int16_array_get_values(GArrowInt16Array *array, gint64 *length); -#define GARROW_TYPE_UINT16_ARRAY \ - (garrow_uint16_array_get_type()) -#define GARROW_UINT16_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), \ - GARROW_TYPE_UINT16_ARRAY, \ - GArrowUInt16Array)) -#define GARROW_UINT16_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), \ - GARROW_TYPE_UINT16_ARRAY, \ - GArrowUInt16ArrayClass)) -#define GARROW_IS_UINT16_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ - GARROW_TYPE_UINT16_ARRAY)) -#define GARROW_IS_UINT16_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), \ - GARROW_TYPE_UINT16_ARRAY)) -#define GARROW_UINT16_ARRAY_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS((obj), \ - GARROW_TYPE_UINT16_ARRAY, \ - GArrowUInt16ArrayClass)) - -typedef struct _GArrowUInt16Array GArrowUInt16Array; -typedef struct _GArrowUInt16ArrayClass GArrowUInt16ArrayClass; - -/** - * GArrowUInt16Array: - * - * It wraps `arrow::UInt16Array`. - */ -struct _GArrowUInt16Array -{ - /*< private >*/ - GArrowPrimitiveArray parent_instance; -}; - +#define GARROW_TYPE_UINT16_ARRAY (garrow_uint16_array_get_type()) +G_DECLARE_DERIVABLE_TYPE(GArrowUInt16Array, + garrow_uint16_array, + GARROW, + UINT16_ARRAY, + GArrowNumericArray) struct _GArrowUInt16ArrayClass { - GArrowPrimitiveArrayClass parent_class; + GArrowNumericArrayClass parent_class; }; -GType garrow_uint16_array_get_type(void) G_GNUC_CONST; - GArrowUInt16Array *garrow_uint16_array_new(gint64 length, GArrowBuffer *data, GArrowBuffer *null_bitmap, @@ -426,48 +281,17 @@ const guint16 *garrow_uint16_array_get_values(GArrowUInt16Array *array, gint64 *length); -#define GARROW_TYPE_INT32_ARRAY \ - (garrow_int32_array_get_type()) -#define GARROW_INT32_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), \ - GARROW_TYPE_INT32_ARRAY, \ - GArrowInt32Array)) -#define GARROW_INT32_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), \ - GARROW_TYPE_INT32_ARRAY, \ - GArrowInt32ArrayClass)) -#define GARROW_IS_INT32_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ - GARROW_TYPE_INT32_ARRAY)) -#define GARROW_IS_INT32_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), \ - GARROW_TYPE_INT32_ARRAY)) -#define GARROW_INT32_ARRAY_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS((obj), \ - GARROW_TYPE_INT32_ARRAY, \ - GArrowInt32ArrayClass)) - -typedef struct _GArrowInt32Array GArrowInt32Array; -typedef struct _GArrowInt32ArrayClass GArrowInt32ArrayClass; - -/** - * GArrowInt32Array: - * - * It wraps `arrow::Int32Array`. - */ -struct _GArrowInt32Array -{ - /*< private >*/ - GArrowPrimitiveArray parent_instance; -}; - +#define GARROW_TYPE_INT32_ARRAY (garrow_int32_array_get_type()) +G_DECLARE_DERIVABLE_TYPE(GArrowInt32Array, + garrow_int32_array, + GARROW, + INT32_ARRAY, + GArrowNumericArray) struct _GArrowInt32ArrayClass { - GArrowPrimitiveArrayClass parent_class; + GArrowNumericArrayClass parent_class; }; -GType garrow_int32_array_get_type(void) G_GNUC_CONST; - GArrowInt32Array *garrow_int32_array_new(gint64 length, GArrowBuffer *data, GArrowBuffer *null_bitmap, @@ -479,48 +303,17 @@ const gint32 *garrow_int32_array_get_values(GArrowInt32Array *array, gint64 *length); -#define GARROW_TYPE_UINT32_ARRAY \ - (garrow_uint32_array_get_type()) -#define GARROW_UINT32_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), \ - GARROW_TYPE_UINT32_ARRAY, \ - GArrowUInt32Array)) -#define GARROW_UINT32_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), \ - GARROW_TYPE_UINT32_ARRAY, \ - GArrowUInt32ArrayClass)) -#define GARROW_IS_UINT32_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ - GARROW_TYPE_UINT32_ARRAY)) -#define GARROW_IS_UINT32_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), \ - GARROW_TYPE_UINT32_ARRAY)) -#define GARROW_UINT32_ARRAY_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS((obj), \ - GARROW_TYPE_UINT32_ARRAY, \ - GArrowUInt32ArrayClass)) - -typedef struct _GArrowUInt32Array GArrowUInt32Array; -typedef struct _GArrowUInt32ArrayClass GArrowUInt32ArrayClass; - -/** - * GArrowUInt32Array: - * - * It wraps `arrow::UInt32Array`. - */ -struct _GArrowUInt32Array -{ - /*< private >*/ - GArrowPrimitiveArray parent_instance; -}; - +#define GARROW_TYPE_UINT32_ARRAY (garrow_uint32_array_get_type()) +G_DECLARE_DERIVABLE_TYPE(GArrowUInt32Array, + garrow_uint32_array, + GARROW, + UINT32_ARRAY, + GArrowNumericArray) struct _GArrowUInt32ArrayClass { - GArrowPrimitiveArrayClass parent_class; + GArrowNumericArrayClass parent_class; }; -GType garrow_uint32_array_get_type(void) G_GNUC_CONST; - GArrowUInt32Array *garrow_uint32_array_new(gint64 length, GArrowBuffer *data, GArrowBuffer *null_bitmap, @@ -532,48 +325,17 @@ const guint32 *garrow_uint32_array_get_values(GArrowUInt32Array *array, gint64 *length); -#define GARROW_TYPE_INT64_ARRAY \ - (garrow_int64_array_get_type()) -#define GARROW_INT64_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), \ - GARROW_TYPE_INT64_ARRAY, \ - GArrowInt64Array)) -#define GARROW_INT64_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), \ - GARROW_TYPE_INT64_ARRAY, \ - GArrowInt64ArrayClass)) -#define GARROW_IS_INT64_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ - GARROW_TYPE_INT64_ARRAY)) -#define GARROW_IS_INT64_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), \ - GARROW_TYPE_INT64_ARRAY)) -#define GARROW_INT64_ARRAY_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS((obj), \ - GARROW_TYPE_INT64_ARRAY, \ - GArrowInt64ArrayClass)) - -typedef struct _GArrowInt64Array GArrowInt64Array; -typedef struct _GArrowInt64ArrayClass GArrowInt64ArrayClass; - -/** - * GArrowInt64Array: - * - * It wraps `arrow::Int64Array`. - */ -struct _GArrowInt64Array -{ - /*< private >*/ - GArrowPrimitiveArray parent_instance; -}; - +#define GARROW_TYPE_INT64_ARRAY (garrow_int64_array_get_type()) +G_DECLARE_DERIVABLE_TYPE(GArrowInt64Array, + garrow_int64_array, + GARROW, + INT64_ARRAY, + GArrowNumericArray) struct _GArrowInt64ArrayClass { - GArrowPrimitiveArrayClass parent_class; + GArrowNumericArrayClass parent_class; }; -GType garrow_int64_array_get_type(void) G_GNUC_CONST; - GArrowInt64Array *garrow_int64_array_new(gint64 length, GArrowBuffer *data, GArrowBuffer *null_bitmap, @@ -585,48 +347,17 @@ const gint64 *garrow_int64_array_get_values(GArrowInt64Array *array, gint64 *length); -#define GARROW_TYPE_UINT64_ARRAY \ - (garrow_uint64_array_get_type()) -#define GARROW_UINT64_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), \ - GARROW_TYPE_UINT64_ARRAY, \ - GArrowUInt64Array)) -#define GARROW_UINT64_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), \ - GARROW_TYPE_UINT64_ARRAY, \ - GArrowUInt64ArrayClass)) -#define GARROW_IS_UINT64_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ - GARROW_TYPE_UINT64_ARRAY)) -#define GARROW_IS_UINT64_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), \ - GARROW_TYPE_UINT64_ARRAY)) -#define GARROW_UINT64_ARRAY_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS((obj), \ - GARROW_TYPE_UINT64_ARRAY, \ - GArrowUInt64ArrayClass)) - -typedef struct _GArrowUInt64Array GArrowUInt64Array; -typedef struct _GArrowUInt64ArrayClass GArrowUInt64ArrayClass; - -/** - * GArrowUInt64Array: - * - * It wraps `arrow::UInt64Array`. - */ -struct _GArrowUInt64Array -{ - /*< private >*/ - GArrowPrimitiveArray parent_instance; -}; - +#define GARROW_TYPE_UINT64_ARRAY (garrow_uint64_array_get_type()) +G_DECLARE_DERIVABLE_TYPE(GArrowUInt64Array, + garrow_uint64_array, + GARROW, + UINT64_ARRAY, + GArrowNumericArray) struct _GArrowUInt64ArrayClass { - GArrowPrimitiveArrayClass parent_class; + GArrowNumericArrayClass parent_class; }; -GType garrow_uint64_array_get_type(void) G_GNUC_CONST; - GArrowUInt64Array *garrow_uint64_array_new(gint64 length, GArrowBuffer *data, GArrowBuffer *null_bitmap, @@ -638,48 +369,17 @@ const guint64 *garrow_uint64_array_get_values(GArrowUInt64Array *array, gint64 *length); -#define GARROW_TYPE_FLOAT_ARRAY \ - (garrow_float_array_get_type()) -#define GARROW_FLOAT_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), \ - GARROW_TYPE_FLOAT_ARRAY, \ - GArrowFloatArray)) -#define GARROW_FLOAT_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), \ - GARROW_TYPE_FLOAT_ARRAY, \ - GArrowFloatArrayClass)) -#define GARROW_IS_FLOAT_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ - GARROW_TYPE_FLOAT_ARRAY)) -#define GARROW_IS_FLOAT_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), \ - GARROW_TYPE_FLOAT_ARRAY)) -#define GARROW_FLOAT_ARRAY_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS((obj), \ - GARROW_TYPE_FLOAT_ARRAY, \ - GArrowFloatArrayClass)) - -typedef struct _GArrowFloatArray GArrowFloatArray; -typedef struct _GArrowFloatArrayClass GArrowFloatArrayClass; - -/** - * GArrowFloatArray: - * - * It wraps `arrow::FloatArray`. - */ -struct _GArrowFloatArray -{ - /*< private >*/ - GArrowPrimitiveArray parent_instance; -}; - +#define GARROW_TYPE_FLOAT_ARRAY (garrow_float_array_get_type()) +G_DECLARE_DERIVABLE_TYPE(GArrowFloatArray, + garrow_float_array, + GARROW, + FLOAT_ARRAY, + GArrowNumericArray) struct _GArrowFloatArrayClass { - GArrowPrimitiveArrayClass parent_class; + GArrowNumericArrayClass parent_class; }; -GType garrow_float_array_get_type(void) G_GNUC_CONST; - GArrowFloatArray *garrow_float_array_new(gint64 length, GArrowBuffer *data, GArrowBuffer *null_bitmap, @@ -691,48 +391,17 @@ const gfloat *garrow_float_array_get_values(GArrowFloatArray *array, gint64 *length); -#define GARROW_TYPE_DOUBLE_ARRAY \ - (garrow_double_array_get_type()) -#define GARROW_DOUBLE_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), \ - GARROW_TYPE_DOUBLE_ARRAY, \ - GArrowDoubleArray)) -#define GARROW_DOUBLE_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), \ - GARROW_TYPE_DOUBLE_ARRAY, \ - GArrowDoubleArrayClass)) -#define GARROW_IS_DOUBLE_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ - GARROW_TYPE_DOUBLE_ARRAY)) -#define GARROW_IS_DOUBLE_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), \ - GARROW_TYPE_DOUBLE_ARRAY)) -#define GARROW_DOUBLE_ARRAY_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS((obj), \ - GARROW_TYPE_DOUBLE_ARRAY, \ - GArrowDoubleArrayClass)) - -typedef struct _GArrowDoubleArray GArrowDoubleArray; -typedef struct _GArrowDoubleArrayClass GArrowDoubleArrayClass; - -/** - * GArrowDoubleArray: - * - * It wraps `arrow::DoubleArray`. - */ -struct _GArrowDoubleArray -{ - /*< private >*/ - GArrowPrimitiveArray parent_instance; -}; - +#define GARROW_TYPE_DOUBLE_ARRAY (garrow_double_array_get_type()) +G_DECLARE_DERIVABLE_TYPE(GArrowDoubleArray, + garrow_double_array, + GARROW, + DOUBLE_ARRAY, + GArrowNumericArray) struct _GArrowDoubleArrayClass { - GArrowPrimitiveArrayClass parent_class; + GArrowNumericArrayClass parent_class; }; -GType garrow_double_array_get_type(void) G_GNUC_CONST; - GArrowDoubleArray *garrow_double_array_new(gint64 length, GArrowBuffer *data, GArrowBuffer *null_bitmap, @@ -849,48 +518,17 @@ gchar *garrow_string_array_get_string(GArrowStringArray *array, gint64 i); -#define GARROW_TYPE_DATE32_ARRAY \ - (garrow_date32_array_get_type()) -#define GARROW_DATE32_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), \ - GARROW_TYPE_DATE32_ARRAY, \ - GArrowDate32Array)) -#define GARROW_DATE32_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), \ - GARROW_TYPE_DATE32_ARRAY, \ - GArrowDate32ArrayClass)) -#define GARROW_IS_DATE32_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ - GARROW_TYPE_DATE32_ARRAY)) -#define GARROW_IS_DATE32_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), \ - GARROW_TYPE_DATE32_ARRAY)) -#define GARROW_DATE32_ARRAY_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS((obj), \ - GARROW_TYPE_DATE32_ARRAY, \ - GArrowDate32ArrayClass)) - -typedef struct _GArrowDate32Array GArrowDate32Array; -typedef struct _GArrowDate32ArrayClass GArrowDate32ArrayClass; - -/** - * GArrowDate32Array: - * - * It wraps `arrow::Date32Array`. - */ -struct _GArrowDate32Array -{ - /*< private >*/ - GArrowPrimitiveArray parent_instance; -}; - +#define GARROW_TYPE_DATE32_ARRAY (garrow_date32_array_get_type()) +G_DECLARE_DERIVABLE_TYPE(GArrowDate32Array, + garrow_date32_array, + GARROW, + DATE32_ARRAY, + GArrowNumericArray) struct _GArrowDate32ArrayClass { - GArrowPrimitiveArrayClass parent_class; + GArrowNumericArrayClass parent_class; }; -GType garrow_date32_array_get_type(void) G_GNUC_CONST; - GArrowDate32Array *garrow_date32_array_new(gint64 length, GArrowBuffer *data, GArrowBuffer *null_bitmap, @@ -902,48 +540,17 @@ const gint32 *garrow_date32_array_get_values(GArrowDate32Array *array, gint64 *length); -#define GARROW_TYPE_DATE64_ARRAY \ - (garrow_date64_array_get_type()) -#define GARROW_DATE64_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), \ - GARROW_TYPE_DATE64_ARRAY, \ - GArrowDate64Array)) -#define GARROW_DATE64_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), \ - GARROW_TYPE_DATE64_ARRAY, \ - GArrowDate64ArrayClass)) -#define GARROW_IS_DATE64_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ - GARROW_TYPE_DATE64_ARRAY)) -#define GARROW_IS_DATE64_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), \ - GARROW_TYPE_DATE64_ARRAY)) -#define GARROW_DATE64_ARRAY_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS((obj), \ - GARROW_TYPE_DATE64_ARRAY, \ - GArrowDate64ArrayClass)) - -typedef struct _GArrowDate64Array GArrowDate64Array; -typedef struct _GArrowDate64ArrayClass GArrowDate64ArrayClass; - -/** - * GArrowDate64Array: - * - * It wraps `arrow::Date64Array`. - */ -struct _GArrowDate64Array -{ - /*< private >*/ - GArrowPrimitiveArray parent_instance; -}; - +#define GARROW_TYPE_DATE64_ARRAY (garrow_date64_array_get_type()) +G_DECLARE_DERIVABLE_TYPE(GArrowDate64Array, + garrow_date64_array, + GARROW, + DATE64_ARRAY, + GArrowNumericArray) struct _GArrowDate64ArrayClass { - GArrowPrimitiveArrayClass parent_class; + GArrowNumericArrayClass parent_class; }; -GType garrow_date64_array_get_type(void) G_GNUC_CONST; - GArrowDate64Array *garrow_date64_array_new(gint64 length, GArrowBuffer *data, GArrowBuffer *null_bitmap, @@ -955,48 +562,17 @@ const gint64 *garrow_date64_array_get_values(GArrowDate64Array *array, gint64 *length); -#define GARROW_TYPE_TIMESTAMP_ARRAY \ - (garrow_timestamp_array_get_type()) -#define GARROW_TIMESTAMP_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), \ - GARROW_TYPE_TIMESTAMP_ARRAY, \ - GArrowTimestampArray)) -#define GARROW_TIMESTAMP_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), \ - GARROW_TYPE_TIMESTAMP_ARRAY, \ - GArrowTimestampArrayClass)) -#define GARROW_IS_TIMESTAMP_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ - GARROW_TYPE_TIMESTAMP_ARRAY)) -#define GARROW_IS_TIMESTAMP_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), \ - GARROW_TYPE_TIMESTAMP_ARRAY)) -#define GARROW_TIMESTAMP_ARRAY_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS((obj), \ - GARROW_TYPE_TIMESTAMP_ARRAY, \ - GArrowTimestampArrayClass)) - -typedef struct _GArrowTimestampArray GArrowTimestampArray; -typedef struct _GArrowTimestampArrayClass GArrowTimestampArrayClass; - -/** - * GArrowTimestampArray: - * - * It wraps `arrow::TimestampArray`. - */ -struct _GArrowTimestampArray -{ - /*< private >*/ - GArrowPrimitiveArray parent_instance; -}; - +#define GARROW_TYPE_TIMESTAMP_ARRAY (garrow_timestamp_array_get_type()) +G_DECLARE_DERIVABLE_TYPE(GArrowTimestampArray, + garrow_timestamp_array, + GARROW, + TIMESTAMP_ARRAY, + GArrowNumericArray) struct _GArrowTimestampArrayClass { - GArrowPrimitiveArrayClass parent_class; + GArrowNumericArrayClass parent_class; }; -GType garrow_timestamp_array_get_type(void) G_GNUC_CONST; - GArrowTimestampArray *garrow_timestamp_array_new(GArrowTimestampDataType *data_type, gint64 length, GArrowBuffer *data, @@ -1009,48 +585,17 @@ const gint64 *garrow_timestamp_array_get_values(GArrowTimestampArray *array, gint64 *length); -#define GARROW_TYPE_TIME32_ARRAY \ - (garrow_time32_array_get_type()) -#define GARROW_TIME32_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), \ - GARROW_TYPE_TIME32_ARRAY, \ - GArrowTime32Array)) -#define GARROW_TIME32_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), \ - GARROW_TYPE_TIME32_ARRAY, \ - GArrowTime32ArrayClass)) -#define GARROW_IS_TIME32_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ - GARROW_TYPE_TIME32_ARRAY)) -#define GARROW_IS_TIME32_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), \ - GARROW_TYPE_TIME32_ARRAY)) -#define GARROW_TIME32_ARRAY_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS((obj), \ - GARROW_TYPE_TIME32_ARRAY, \ - GArrowTime32ArrayClass)) - -typedef struct _GArrowTime32Array GArrowTime32Array; -typedef struct _GArrowTime32ArrayClass GArrowTime32ArrayClass; - -/** - * GArrowTime32Array: - * - * It wraps `arrow::Time32Array`. - */ -struct _GArrowTime32Array -{ - /*< private >*/ - GArrowPrimitiveArray parent_instance; -}; - +#define GARROW_TYPE_TIME32_ARRAY (garrow_time32_array_get_type()) +G_DECLARE_DERIVABLE_TYPE(GArrowTime32Array, + garrow_time32_array, + GARROW, + TIME32_ARRAY, + GArrowNumericArray) struct _GArrowTime32ArrayClass { - GArrowPrimitiveArrayClass parent_class; + GArrowNumericArrayClass parent_class; }; -GType garrow_time32_array_get_type(void) G_GNUC_CONST; - GArrowTime32Array *garrow_time32_array_new(GArrowTime32DataType *data_type, gint64 length, GArrowBuffer *data, @@ -1063,48 +608,17 @@ const gint32 *garrow_time32_array_get_values(GArrowTime32Array *array, gint64 *length); -#define GARROW_TYPE_TIME64_ARRAY \ - (garrow_time64_array_get_type()) -#define GARROW_TIME64_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj), \ - GARROW_TYPE_TIME64_ARRAY, \ - GArrowTime64Array)) -#define GARROW_TIME64_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST((klass), \ - GARROW_TYPE_TIME64_ARRAY, \ - GArrowTime64ArrayClass)) -#define GARROW_IS_TIME64_ARRAY(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj), \ - GARROW_TYPE_TIME64_ARRAY)) -#define GARROW_IS_TIME64_ARRAY_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE((klass), \ - GARROW_TYPE_TIME64_ARRAY)) -#define GARROW_TIME64_ARRAY_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS((obj), \ - GARROW_TYPE_TIME64_ARRAY, \ - GArrowTime64ArrayClass)) - -typedef struct _GArrowTime64Array GArrowTime64Array; -typedef struct _GArrowTime64ArrayClass GArrowTime64ArrayClass; - -/** - * GArrowTime64Array: - * - * It wraps `arrow::Time64Array`. - */ -struct _GArrowTime64Array -{ - /*< private >*/ - GArrowPrimitiveArray parent_instance; -}; - +#define GARROW_TYPE_TIME64_ARRAY (garrow_time64_array_get_type()) +G_DECLARE_DERIVABLE_TYPE(GArrowTime64Array, + garrow_time64_array, + GARROW, + TIME64_ARRAY, + GArrowNumericArray) struct _GArrowTime64ArrayClass { - GArrowPrimitiveArrayClass parent_class; + GArrowNumericArrayClass parent_class; }; -GType garrow_time64_array_get_type(void) G_GNUC_CONST; - GArrowTime64Array *garrow_time64_array_new(GArrowTime64DataType *data_type, gint64 length, GArrowBuffer *data, -- To stop receiving notification emails like this one, please contact u...@apache.org.