Skip to content

Commit

Permalink
GraphBLAS 9.4.3: move global objects outside the extern "C" {...} block
Browse files Browse the repository at this point in the history
  • Loading branch information
DrTimothyAldenDavis committed Dec 20, 2024
1 parent e56d1bc commit 18ab5b9
Show file tree
Hide file tree
Showing 3 changed files with 160 additions and 163 deletions.
7 changes: 0 additions & 7 deletions Example/Include/my_internal.h
Original file line number Diff line number Diff line change
Expand Up @@ -54,14 +54,7 @@
#endif

#if ! defined (NO_GRAPHBLAS)
#if defined ( __cplusplus )
extern "C"
{
#endif
#include "GraphBLAS.h"
#if defined ( __cplusplus )
}
#endif
#if !defined ( GxB_SUITESPARSE_GRAPHBLAS ) || \
GxB_IMPLEMENTATION < GxB_VERSION (9,3,1)
#error "This library requires SuiteSparse:GraphBLAS 9.3.1 or later"
Expand Down
158 changes: 80 additions & 78 deletions GraphBLAS/Config/GraphBLAS.h.in
Original file line number Diff line number Diff line change
Expand Up @@ -1233,6 +1233,9 @@ typedef void (*GxB_index_unary_function)
const void *y // input scalar y
) ;

// GxB_SelectOp: use GrB_IndexUnaryOp instead
typedef struct GB_SelectOp_opaque *GxB_SelectOp ; // Historical; do not use

//==============================================================================
// GrB_IndexUnaryOp: a unary operator that depends on the row/col indices
//==============================================================================
Expand Down Expand Up @@ -1339,6 +1342,9 @@ typedef struct GB_Semiring_opaque *GrB_Semiring ;

typedef struct GB_Scalar_opaque *GrB_Scalar ;

// GxB_Scalar: use GrB_Scalar instead (as-is)
typedef struct GB_Scalar_opaque *GxB_Scalar ; // Historical, do not use.

//==============================================================================
// GrB_Vector: a GraphBLAS vector
//==============================================================================
Expand Down Expand Up @@ -11457,14 +11463,7 @@ GrB_Info GrB_getVersion (unsigned int *, unsigned int *) ;
// GxB_INDEX_MAX: use GrB_INDEX_MAX+1 instead
#define GxB_INDEX_MAX ((GrB_Index) (1ULL << 60))

// GxB_ABS_*: use GrB_ABS_* instead (as-is)
GB_GLOBAL GrB_UnaryOp
GxB_ABS_BOOL, GxB_ABS_INT8, GxB_ABS_INT16, GxB_ABS_INT32, GxB_ABS_INT64,
GxB_ABS_UINT8, GxB_ABS_UINT16, GxB_ABS_UINT32, GxB_ABS_UINT64, GxB_ABS_FP32,
GxB_ABS_FP64 ;

// GxB_SelectOp: use GrB_IndexUnaryOp instead
typedef struct GB_SelectOp_opaque *GxB_SelectOp ;
GB_GLOBAL GxB_SelectOp GxB_TRIL, GxB_TRIU, GxB_DIAG, GxB_OFFDIAG, GxB_NONZERO,
GxB_EQ_ZERO, GxB_GT_ZERO, GxB_GE_ZERO, GxB_LT_ZERO, GxB_LE_ZERO,
GxB_NE_THUNK, GxB_EQ_THUNK, GxB_GT_THUNK, GxB_GE_THUNK, GxB_LT_THUNK,
Expand All @@ -11474,77 +11473,6 @@ GrB_Info GxB_SelectOp_ttype (GrB_Type *, GxB_SelectOp) ;
GrB_Info GxB_SelectOp_fprint (GxB_SelectOp op, const char *name,
GxB_Print_Level pr, FILE *f) ;

// GxB_Scalar: use GrB_Scalar instead (as-is)
typedef struct GB_Scalar_opaque *GxB_Scalar ;

// GxB_* monoids: GrB_* monoids instead (as-is)
GB_GLOBAL GrB_Monoid
GxB_MIN_INT8_MONOID, GxB_MIN_INT16_MONOID, GxB_MIN_INT32_MONOID,
GxB_MIN_INT64_MONOID, GxB_MIN_UINT8_MONOID, GxB_MIN_UINT16_MONOID,
GxB_MIN_UINT32_MONOID, GxB_MIN_UINT64_MONOID, GxB_MIN_FP32_MONOID,
GxB_MIN_FP64_MONOID, GxB_MAX_INT8_MONOID, GxB_MAX_INT16_MONOID,
GxB_MAX_INT32_MONOID, GxB_MAX_INT64_MONOID, GxB_MAX_UINT8_MONOID,
GxB_MAX_UINT16_MONOID, GxB_MAX_UINT32_MONOID, GxB_MAX_UINT64_MONOID,
GxB_MAX_FP32_MONOID, GxB_MAX_FP64_MONOID, GxB_PLUS_INT8_MONOID,
GxB_PLUS_INT16_MONOID, GxB_PLUS_INT32_MONOID, GxB_PLUS_INT64_MONOID,
GxB_PLUS_UINT8_MONOID, GxB_PLUS_UINT16_MONOID, GxB_PLUS_UINT32_MONOID,
GxB_PLUS_UINT64_MONOID, GxB_PLUS_FP32_MONOID, GxB_PLUS_FP64_MONOID,
GxB_TIMES_INT8_MONOID, GxB_TIMES_INT16_MONOID, GxB_TIMES_INT32_MONOID,
GxB_TIMES_INT64_MONOID, GxB_TIMES_UINT8_MONOID, GxB_TIMES_UINT16_MONOID,
GxB_TIMES_UINT32_MONOID, GxB_TIMES_UINT64_MONOID, GxB_TIMES_FP32_MONOID,
GxB_TIMES_FP64_MONOID, GxB_LOR_BOOL_MONOID, GxB_LAND_BOOL_MONOID,
GxB_LXOR_BOOL_MONOID, GxB_LXNOR_BOOL_MONOID, GxB_EQ_BOOL_MONOID ;

// GxB_* semirings: use the GrB_* semirings instead (as-is)
GB_GLOBAL GrB_Semiring

GxB_PLUS_TIMES_INT8, GxB_PLUS_MIN_INT8, GxB_MIN_PLUS_INT8,
GxB_PLUS_TIMES_INT16, GxB_PLUS_MIN_INT16, GxB_MIN_PLUS_INT16,
GxB_PLUS_TIMES_INT32, GxB_PLUS_MIN_INT32, GxB_MIN_PLUS_INT32,
GxB_PLUS_TIMES_INT64, GxB_PLUS_MIN_INT64, GxB_MIN_PLUS_INT64,
GxB_PLUS_TIMES_UINT8, GxB_PLUS_MIN_UINT8, GxB_MIN_PLUS_UINT8,
GxB_PLUS_TIMES_UINT16, GxB_PLUS_MIN_UINT16, GxB_MIN_PLUS_UINT16,
GxB_PLUS_TIMES_UINT32, GxB_PLUS_MIN_UINT32, GxB_MIN_PLUS_UINT32,
GxB_PLUS_TIMES_UINT64, GxB_PLUS_MIN_UINT64, GxB_MIN_PLUS_UINT64,
GxB_PLUS_TIMES_FP32, GxB_PLUS_MIN_FP32, GxB_MIN_PLUS_FP32,
GxB_PLUS_TIMES_FP64, GxB_PLUS_MIN_FP64, GxB_MIN_PLUS_FP64,

GxB_MIN_TIMES_INT8, GxB_MIN_FIRST_INT8, GxB_MIN_SECOND_INT8,
GxB_MIN_TIMES_INT16, GxB_MIN_FIRST_INT16, GxB_MIN_SECOND_INT16,
GxB_MIN_TIMES_INT32, GxB_MIN_FIRST_INT32, GxB_MIN_SECOND_INT32,
GxB_MIN_TIMES_INT64, GxB_MIN_FIRST_INT64, GxB_MIN_SECOND_INT64,
GxB_MIN_TIMES_UINT8, GxB_MIN_FIRST_UINT8, GxB_MIN_SECOND_UINT8,
GxB_MIN_TIMES_UINT16, GxB_MIN_FIRST_UINT16, GxB_MIN_SECOND_UINT16,
GxB_MIN_TIMES_UINT32, GxB_MIN_FIRST_UINT32, GxB_MIN_SECOND_UINT32,
GxB_MIN_TIMES_UINT64, GxB_MIN_FIRST_UINT64, GxB_MIN_SECOND_UINT64,
GxB_MIN_TIMES_FP32, GxB_MIN_FIRST_FP32, GxB_MIN_SECOND_FP32,
GxB_MIN_TIMES_FP64, GxB_MIN_FIRST_FP64, GxB_MIN_SECOND_FP64,

GxB_MIN_MAX_INT8, GxB_MAX_PLUS_INT8, GxB_MAX_TIMES_INT8,
GxB_MIN_MAX_INT16, GxB_MAX_PLUS_INT16, GxB_MAX_TIMES_INT16,
GxB_MIN_MAX_INT32, GxB_MAX_PLUS_INT32, GxB_MAX_TIMES_INT32,
GxB_MIN_MAX_INT64, GxB_MAX_PLUS_INT64, GxB_MAX_TIMES_INT64,
GxB_MIN_MAX_UINT8, GxB_MAX_PLUS_UINT8, GxB_MAX_TIMES_UINT8,
GxB_MIN_MAX_UINT16, GxB_MAX_PLUS_UINT16, GxB_MAX_TIMES_UINT16,
GxB_MIN_MAX_UINT32, GxB_MAX_PLUS_UINT32, GxB_MAX_TIMES_UINT32,
GxB_MIN_MAX_UINT64, GxB_MAX_PLUS_UINT64, GxB_MAX_TIMES_UINT64,
GxB_MIN_MAX_FP32, GxB_MAX_PLUS_FP32, GxB_MAX_TIMES_FP32,
GxB_MIN_MAX_FP64, GxB_MAX_PLUS_FP64, GxB_MAX_TIMES_FP64,

GxB_MAX_FIRST_INT8, GxB_MAX_SECOND_INT8, GxB_MAX_MIN_INT8,
GxB_MAX_FIRST_INT16, GxB_MAX_SECOND_INT16, GxB_MAX_MIN_INT16,
GxB_MAX_FIRST_INT32, GxB_MAX_SECOND_INT32, GxB_MAX_MIN_INT32,
GxB_MAX_FIRST_INT64, GxB_MAX_SECOND_INT64, GxB_MAX_MIN_INT64,
GxB_MAX_FIRST_UINT8, GxB_MAX_SECOND_UINT8, GxB_MAX_MIN_UINT8,
GxB_MAX_FIRST_UINT16, GxB_MAX_SECOND_UINT16, GxB_MAX_MIN_UINT16,
GxB_MAX_FIRST_UINT32, GxB_MAX_SECOND_UINT32, GxB_MAX_MIN_UINT32,
GxB_MAX_FIRST_UINT64, GxB_MAX_SECOND_UINT64, GxB_MAX_MIN_UINT64,
GxB_MAX_FIRST_FP32, GxB_MAX_SECOND_FP32, GxB_MAX_MIN_FP32,
GxB_MAX_FIRST_FP64, GxB_MAX_SECOND_FP64, GxB_MAX_MIN_FP64,

GxB_LOR_LAND_BOOL, GxB_LAND_LOR_BOOL, GxB_LXOR_LAND_BOOL,
GxB_EQ_LOR_BOOL ; // use GrB_LXNOR_LOR_SEMIRING_BOOL instead (as-is)

// GxB_Desc*get/set and GrB_Descriptor_set: use GrB_get/set instead.
GrB_Info GrB_Descriptor_set (GrB_Descriptor, GrB_Desc_Field, GrB_Desc_Value) ;
GrB_Info GxB_Descriptor_get (GrB_Desc_Value *, GrB_Descriptor, GrB_Desc_Field) ;
Expand Down Expand Up @@ -11806,5 +11734,79 @@ GrB_Info GxB_deserialize_type_name (char *, const void *, GrB_Index) ;
}
#endif

// GxB_ABS_*: use GrB_ABS_* instead (as-is)
GB_GLOBAL GrB_UnaryOp
GxB_ABS_BOOL, GxB_ABS_INT8, GxB_ABS_INT16, GxB_ABS_INT32, GxB_ABS_INT64,
GxB_ABS_UINT8, GxB_ABS_UINT16, GxB_ABS_UINT32, GxB_ABS_UINT64, GxB_ABS_FP32,
GxB_ABS_FP64 ;

// GxB_* monoids: GrB_* monoids instead (as-is)
GB_GLOBAL GrB_Monoid
GxB_MIN_INT8_MONOID, GxB_MIN_INT16_MONOID, GxB_MIN_INT32_MONOID,
GxB_MIN_INT64_MONOID, GxB_MIN_UINT8_MONOID, GxB_MIN_UINT16_MONOID,
GxB_MIN_UINT32_MONOID, GxB_MIN_UINT64_MONOID, GxB_MIN_FP32_MONOID,
GxB_MIN_FP64_MONOID, GxB_MAX_INT8_MONOID, GxB_MAX_INT16_MONOID,
GxB_MAX_INT32_MONOID, GxB_MAX_INT64_MONOID, GxB_MAX_UINT8_MONOID,
GxB_MAX_UINT16_MONOID, GxB_MAX_UINT32_MONOID, GxB_MAX_UINT64_MONOID,
GxB_MAX_FP32_MONOID, GxB_MAX_FP64_MONOID, GxB_PLUS_INT8_MONOID,
GxB_PLUS_INT16_MONOID, GxB_PLUS_INT32_MONOID, GxB_PLUS_INT64_MONOID,
GxB_PLUS_UINT8_MONOID, GxB_PLUS_UINT16_MONOID, GxB_PLUS_UINT32_MONOID,
GxB_PLUS_UINT64_MONOID, GxB_PLUS_FP32_MONOID, GxB_PLUS_FP64_MONOID,
GxB_TIMES_INT8_MONOID, GxB_TIMES_INT16_MONOID, GxB_TIMES_INT32_MONOID,
GxB_TIMES_INT64_MONOID, GxB_TIMES_UINT8_MONOID, GxB_TIMES_UINT16_MONOID,
GxB_TIMES_UINT32_MONOID, GxB_TIMES_UINT64_MONOID, GxB_TIMES_FP32_MONOID,
GxB_TIMES_FP64_MONOID, GxB_LOR_BOOL_MONOID, GxB_LAND_BOOL_MONOID,
GxB_LXOR_BOOL_MONOID, GxB_LXNOR_BOOL_MONOID, GxB_EQ_BOOL_MONOID ;

// GxB_* semirings: use the GrB_* semirings instead (as-is)
GB_GLOBAL GrB_Semiring

GxB_PLUS_TIMES_INT8, GxB_PLUS_MIN_INT8, GxB_MIN_PLUS_INT8,
GxB_PLUS_TIMES_INT16, GxB_PLUS_MIN_INT16, GxB_MIN_PLUS_INT16,
GxB_PLUS_TIMES_INT32, GxB_PLUS_MIN_INT32, GxB_MIN_PLUS_INT32,
GxB_PLUS_TIMES_INT64, GxB_PLUS_MIN_INT64, GxB_MIN_PLUS_INT64,
GxB_PLUS_TIMES_UINT8, GxB_PLUS_MIN_UINT8, GxB_MIN_PLUS_UINT8,
GxB_PLUS_TIMES_UINT16, GxB_PLUS_MIN_UINT16, GxB_MIN_PLUS_UINT16,
GxB_PLUS_TIMES_UINT32, GxB_PLUS_MIN_UINT32, GxB_MIN_PLUS_UINT32,
GxB_PLUS_TIMES_UINT64, GxB_PLUS_MIN_UINT64, GxB_MIN_PLUS_UINT64,
GxB_PLUS_TIMES_FP32, GxB_PLUS_MIN_FP32, GxB_MIN_PLUS_FP32,
GxB_PLUS_TIMES_FP64, GxB_PLUS_MIN_FP64, GxB_MIN_PLUS_FP64,

GxB_MIN_TIMES_INT8, GxB_MIN_FIRST_INT8, GxB_MIN_SECOND_INT8,
GxB_MIN_TIMES_INT16, GxB_MIN_FIRST_INT16, GxB_MIN_SECOND_INT16,
GxB_MIN_TIMES_INT32, GxB_MIN_FIRST_INT32, GxB_MIN_SECOND_INT32,
GxB_MIN_TIMES_INT64, GxB_MIN_FIRST_INT64, GxB_MIN_SECOND_INT64,
GxB_MIN_TIMES_UINT8, GxB_MIN_FIRST_UINT8, GxB_MIN_SECOND_UINT8,
GxB_MIN_TIMES_UINT16, GxB_MIN_FIRST_UINT16, GxB_MIN_SECOND_UINT16,
GxB_MIN_TIMES_UINT32, GxB_MIN_FIRST_UINT32, GxB_MIN_SECOND_UINT32,
GxB_MIN_TIMES_UINT64, GxB_MIN_FIRST_UINT64, GxB_MIN_SECOND_UINT64,
GxB_MIN_TIMES_FP32, GxB_MIN_FIRST_FP32, GxB_MIN_SECOND_FP32,
GxB_MIN_TIMES_FP64, GxB_MIN_FIRST_FP64, GxB_MIN_SECOND_FP64,

GxB_MIN_MAX_INT8, GxB_MAX_PLUS_INT8, GxB_MAX_TIMES_INT8,
GxB_MIN_MAX_INT16, GxB_MAX_PLUS_INT16, GxB_MAX_TIMES_INT16,
GxB_MIN_MAX_INT32, GxB_MAX_PLUS_INT32, GxB_MAX_TIMES_INT32,
GxB_MIN_MAX_INT64, GxB_MAX_PLUS_INT64, GxB_MAX_TIMES_INT64,
GxB_MIN_MAX_UINT8, GxB_MAX_PLUS_UINT8, GxB_MAX_TIMES_UINT8,
GxB_MIN_MAX_UINT16, GxB_MAX_PLUS_UINT16, GxB_MAX_TIMES_UINT16,
GxB_MIN_MAX_UINT32, GxB_MAX_PLUS_UINT32, GxB_MAX_TIMES_UINT32,
GxB_MIN_MAX_UINT64, GxB_MAX_PLUS_UINT64, GxB_MAX_TIMES_UINT64,
GxB_MIN_MAX_FP32, GxB_MAX_PLUS_FP32, GxB_MAX_TIMES_FP32,
GxB_MIN_MAX_FP64, GxB_MAX_PLUS_FP64, GxB_MAX_TIMES_FP64,

GxB_MAX_FIRST_INT8, GxB_MAX_SECOND_INT8, GxB_MAX_MIN_INT8,
GxB_MAX_FIRST_INT16, GxB_MAX_SECOND_INT16, GxB_MAX_MIN_INT16,
GxB_MAX_FIRST_INT32, GxB_MAX_SECOND_INT32, GxB_MAX_MIN_INT32,
GxB_MAX_FIRST_INT64, GxB_MAX_SECOND_INT64, GxB_MAX_MIN_INT64,
GxB_MAX_FIRST_UINT8, GxB_MAX_SECOND_UINT8, GxB_MAX_MIN_UINT8,
GxB_MAX_FIRST_UINT16, GxB_MAX_SECOND_UINT16, GxB_MAX_MIN_UINT16,
GxB_MAX_FIRST_UINT32, GxB_MAX_SECOND_UINT32, GxB_MAX_MIN_UINT32,
GxB_MAX_FIRST_UINT64, GxB_MAX_SECOND_UINT64, GxB_MAX_MIN_UINT64,
GxB_MAX_FIRST_FP32, GxB_MAX_SECOND_FP32, GxB_MAX_MIN_FP32,
GxB_MAX_FIRST_FP64, GxB_MAX_SECOND_FP64, GxB_MAX_MIN_FP64,

GxB_LOR_LAND_BOOL, GxB_LAND_LOR_BOOL, GxB_LXOR_LAND_BOOL,
GxB_EQ_LOR_BOOL ; // use GrB_LXNOR_LOR_SEMIRING_BOOL instead (as-is)

#endif

Loading

0 comments on commit 18ab5b9

Please sign in to comment.