| /* |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| */ |
| |
| #pragma once |
| |
| #include <glib.h> |
| |
| /** |
| * SECTION: version |
| * @section_id: version-macros |
| * @title: Version related macros |
| * @include: parquet-glib/parquet-glib.h |
| * |
| * Apache Parquet GLib provides macros that can be used by C pre-processor. |
| * They are useful to check version related things at compile time. |
| */ |
| |
| /** |
| * GPARQUET_VERSION_MAJOR: |
| * |
| * The major version. |
| * |
| * Since: 0.16.0 |
| */ |
| #define GPARQUET_VERSION_MAJOR (@GPARQUET_VERSION_MAJOR@) |
| |
| /** |
| * GPARQUET_VERSION_MINOR: |
| * |
| * The minor version. |
| * |
| * Since: 0.16.0 |
| */ |
| #define GPARQUET_VERSION_MINOR (@GPARQUET_VERSION_MINOR@) |
| |
| /** |
| * GPARQUET_VERSION_MICRO: |
| * |
| * The micro version. |
| * |
| * Since: 0.16.0 |
| */ |
| #define GPARQUET_VERSION_MICRO (@GPARQUET_VERSION_MICRO@) |
| |
| /** |
| * GPARQUET_VERSION_TAG: |
| * |
| * The version tag. Normally, it's an empty string. It's "SNAPSHOT" |
| * for snapshot version. |
| * |
| * Since: 0.16.0 |
| */ |
| #define GPARQUET_VERSION_TAG "@GPARQUET_VERSION_TAG@" |
| |
| /** |
| * GPARQUET_VERSION_CHECK: |
| * @major: A major version to check for. |
| * @minor: A minor version to check for. |
| * @micro: A micro version to check for. |
| * |
| * You can use this macro in C pre-processor. |
| * |
| * Returns: %TRUE if the compile time Apache Parquet GLib version is the |
| * same as or newer than the passed version, %FALSE otherwise. |
| * |
| * Since: 0.16.0 |
| */ |
| #define GPARQUET_VERSION_CHECK(major, minor, micro) \ |
| (GPARQUET_MAJOR_VERSION > (major) || \ |
| (GPARQUET_MAJOR_VERSION == (major) && \ |
| GPARQUET_MINOR_VERSION > (minor)) || \ |
| (GPARQUET_MAJOR_VERSION == (major) && \ |
| GPARQUET_MINOR_VERSION == (minor) && \ |
| GPARQUET_MICRO_VERSION >= (micro))) |
| |
| /** |
| * GPARQUET_DISABLE_DEPRECATION_WARNINGS: |
| * |
| * If this macro is defined, no deprecated warnings are produced. |
| * |
| * You must define this macro before including the |
| * parquet-glib/parquet-glib.h header. |
| * |
| * Since: 0.16.0 |
| */ |
| |
| #ifdef GPARQUET_DISABLE_DEPRECATION_WARNINGS |
| # define GPARQUET_DEPRECATED |
| # define GPARQUET_DEPRECATED_FOR(function) |
| # define GPARQUET_UNAVAILABLE(major, minor) |
| #else |
| # define GPARQUET_DEPRECATED G_DEPRECATED |
| # define GPARQUET_DEPRECATED_FOR(function) G_DEPRECATED_FOR(function) |
| # define GPARQUET_UNAVAILABLE(major, minor) G_UNAVAILABLE(major, minor) |
| #endif |
| |
| /** |
| * GPARQUET_VERSION_1_0: |
| * |
| * You can use this macro value for compile time API version check. |
| * |
| * Since: 1.0.0 |
| */ |
| #define GPARQUET_VERSION_1_0 G_ENCODE_VERSION(1, 0) |
| |
| /** |
| * GPARQUET_VERSION_0_16: |
| * |
| * You can use this macro value for compile time API version check. |
| * |
| * Since: 0.16.0 |
| */ |
| #define GPARQUET_VERSION_0_16 G_ENCODE_VERSION(0, 16) |
| |
| /** |
| * GPARQUET_VERSION_MIN_REQUIRED: |
| * |
| * You can use this macro for compile time API version check. |
| * |
| * This macro value must be one of the predefined version macros such |
| * as %GPARQUET_VERSION_0_16. |
| * |
| * If you use any functions that is defined by newer version than |
| * %GPARQUET_VERSION_MIN_REQUIRED, deprecated warnings are produced at |
| * compile time. |
| * |
| * You must define this macro before including the |
| * parquet-glib/parquet-glib.h header. |
| * |
| * Since: 0.16.0 |
| */ |
| #ifndef GPARQUET_VERSION_MIN_REQUIRED |
| # define GPARQUET_VERSION_MIN_REQUIRED \ |
| G_ENCODE_VERSION(GPARQUET_VERSION_MAJOR, GPARQUET_VERSION_MINOR) |
| #endif |
| |
| /** |
| * GPARQUET_VERSION_MAX_ALLOWED: |
| * |
| * You can use this macro for compile time API version check. |
| * |
| * This macro value must be one of the predefined version macros such |
| * as %GPARQUET_VERSION_0_16. |
| * |
| * If you use any functions that is defined by newer version than |
| * %GPARQUET_VERSION_MAX_ALLOWED, deprecated warnings are produced at |
| * compile time. |
| * |
| * You must define this macro before including the |
| * parquet-glib/parquet-glib.h header. |
| * |
| * Since: 0.16.0 |
| */ |
| #ifndef GPARQUET_VERSION_MAX_ALLOWED |
| # define GPARQUET_VERSION_MAX_ALLOWED \ |
| G_ENCODE_VERSION(GPARQUET_VERSION_MAJOR, GPARQUET_VERSION_MINOR) |
| #endif |
| |
| |
| #define GPARQUET_AVAILABLE_IN_ALL |
| |
| #if GPARQUET_VERSION_MIN_REQUIRED >= GPARQUET_VERSION_1_0 |
| # define GPARQUET_DEPRECATED_IN_1_0 GPARQUET_DEPRECATED |
| # define GPARQUET_DEPRECATED_IN_1_0_FOR(function) GPARQUET_DEPRECATED_FOR(function) |
| #else |
| # define GPARQUET_DEPRECATED_IN_1_0 |
| # define GPARQUET_DEPRECATED_IN_1_0_FOR(function) |
| #endif |
| |
| #if GPARQUET_VERSION_MAX_ALLOWED < GPARQUET_VERSION_1_0 |
| # define GPARQUET_AVAILABLE_IN_1_0 GPARQUET_UNAVAILABLE(1, 0) |
| #else |
| # define GPARQUET_AVAILABLE_IN_1_0 |
| #endif |
| |
| #if GPARQUET_VERSION_MIN_REQUIRED >= GPARQUET_VERSION_0_17 |
| # define GPARQUET_DEPRECATED_IN_0_17 GPARQUET_DEPRECATED |
| # define GPARQUET_DEPRECATED_IN_0_17_FOR(function) GPARQUET_DEPRECATED_FOR(function) |
| #else |
| # define GPARQUET_DEPRECATED_IN_0_17 |
| # define GPARQUET_DEPRECATED_IN_0_17_FOR(function) |
| #endif |
| |
| #if GPARQUET_VERSION_MAX_ALLOWED < GPARQUET_VERSION_0_17 |
| # define GPARQUET_AVAILABLE_IN_0_17 GPARQUET_UNAVAILABLE(0, 17) |
| #else |
| # define GPARQUET_AVAILABLE_IN_0_17 |
| #endif |
| |
| #if GPARQUET_VERSION_MIN_REQUIRED >= GPARQUET_VERSION_0_16 |
| # define GPARQUET_DEPRECATED_IN_0_16 GPARQUET_DEPRECATED |
| # define GPARQUET_DEPRECATED_IN_0_16_FOR(function) GPARQUET_DEPRECATED_FOR(function) |
| #else |
| # define GPARQUET_DEPRECATED_IN_0_16 |
| # define GPARQUET_DEPRECATED_IN_0_16_FOR(function) |
| #endif |
| |
| #if GPARQUET_VERSION_MAX_ALLOWED < GPARQUET_VERSION_0_16 |
| # define GPARQUET_AVAILABLE_IN_0_16 GPARQUET_UNAVAILABLE(0, 16) |
| #else |
| # define GPARQUET_AVAILABLE_IN_0_16 |
| #endif |