Make H5F_LIBVER_LATEST a real enum value (#5083)

It was formerly a macro, but is now an enum value with the same
value as the latest numbered API.
This commit is contained in:
Dana Robinson 2024-11-12 05:34:25 -08:00 committed by GitHub
parent 9063e4ef25
commit 9019113587
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 30 additions and 20 deletions

View File

@ -575,10 +575,10 @@ public class HDF5Constants {
/** */
public static final int H5F_LIBVER_V200 = H5F_LIBVER_V200();
/** */
public static final int H5F_LIBVER_NBOUNDS = H5F_LIBVER_NBOUNDS();
/** */
public static final int H5F_LIBVER_LATEST = H5F_LIBVER_LATEST();
/** */
public static final int H5F_LIBVER_NBOUNDS = H5F_LIBVER_NBOUNDS();
/** */
public static final int H5F_OBJ_ALL = H5F_OBJ_ALL();
/** */
public static final int H5F_OBJ_ATTR = H5F_OBJ_ATTR();
@ -2080,10 +2080,10 @@ public class HDF5Constants {
private static native final int H5F_LIBVER_V200();
private static native final int H5F_LIBVER_NBOUNDS();
private static native final int H5F_LIBVER_LATEST();
private static native final int H5F_LIBVER_NBOUNDS();
private static native final int H5F_OBJ_ALL();
private static native final int H5F_OBJ_ATTR();

View File

@ -1309,16 +1309,16 @@ Java_hdf_hdf5lib_HDF5Constants_H5F_1LIBVER_1V200(JNIEnv *env, jclass cls)
return H5F_LIBVER_V200;
}
JNIEXPORT jint JNICALL
Java_hdf_hdf5lib_HDF5Constants_H5F_1LIBVER_1NBOUNDS(JNIEnv *env, jclass cls)
{
return H5F_LIBVER_NBOUNDS;
}
JNIEXPORT jint JNICALL
Java_hdf_hdf5lib_HDF5Constants_H5F_1LIBVER_1LATEST(JNIEnv *env, jclass cls)
{
return H5F_LIBVER_LATEST;
}
JNIEXPORT jint JNICALL
Java_hdf_hdf5lib_HDF5Constants_H5F_1LIBVER_1NBOUNDS(JNIEnv *env, jclass cls)
{
return H5F_LIBVER_NBOUNDS;
}
JNIEXPORT jint JNICALL
Java_hdf_hdf5lib_HDF5Constants_H5F_1OBJ_1ALL(JNIEnv *env, jclass cls)
{
return H5F_OBJ_ALL;

View File

@ -156,6 +156,17 @@ New Features
Library:
--------
- H5F_LIBVER_LATEST is now an enum value
This was previously #defined to the latest H5F_libver_t API version, but
is now an enum value with an integer value equal to the latest H5F_libver_t
API version's value. e.g.:
<snip>
H5F_LIBVER_V200 = 5,
H5F_LIBVER_LATEST = 5,
</snip>
- Added support for complex number datatypes
Support for the C99 "float _Complex", "double _Complex" and "long double _Complex"

View File

@ -163,17 +163,16 @@ typedef struct H5F_sect_info_t {
*/
typedef enum H5F_libver_t {
H5F_LIBVER_ERROR = -1,
H5F_LIBVER_EARLIEST = 0, /**< Use the earliest possible format for storing objects */
H5F_LIBVER_V18 = 1, /**< Use the latest v18 format for storing objects */
H5F_LIBVER_V110 = 2, /**< Use the latest v110 format for storing objects */
H5F_LIBVER_V112 = 3, /**< Use the latest v112 format for storing objects */
H5F_LIBVER_V114 = 4, /**< Use the latest v114 format for storing objects */
H5F_LIBVER_V200 = 5, /**< Use the latest v200 format for storing objects */
H5F_LIBVER_EARLIEST = 0, /**< Use the earliest possible file format for storing objects */
H5F_LIBVER_V18 = 1, /**< Use the 1.8 file format for storing objects */
H5F_LIBVER_V110 = 2, /**< Use the 1.10 file format for storing objects */
H5F_LIBVER_V112 = 3, /**< Use the 1.12 file format for storing objects */
H5F_LIBVER_V114 = 4, /**< Use the 1.14 file format for storing objects */
H5F_LIBVER_V200 = 5, /**< Use the 2.0 file format for storing objects */
H5F_LIBVER_LATEST = 5, /**< Use the latest file format for storing objects */
H5F_LIBVER_NBOUNDS /**< Sentinel */
} H5F_libver_t;
#define H5F_LIBVER_LATEST H5F_LIBVER_V200
/**
* File space handling strategy
*/

View File

@ -4967,9 +4967,9 @@ H5_DLL herr_t H5Pset_gc_references(hid_t fapl_id, unsigned gc_ref);
* enumerated values in the #H5F_libver_t struct, which is
* defined in H5Fpublic.h.
*
* The macro #H5F_LIBVER_LATEST is aliased to the highest
* enumerated value in #H5F_libver_t, indicating that this is
* currently the latest format available.
* #H5F_LIBVER_LATEST is equivalent to the highest explicitly numbered
* API value in #H5F_libver_t, indicating that this is currently the
* latest format available.
*
* The library supports the following pairs of (\p low, \p high)
* combinations as derived from the values in #H5F_libver_t: