Changeset: 4db3c16dd7cd for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=4db3c16dd7cd
Modified Files:
        clients/Tests/exports.stable.out
        gdk/gdk.h
        gdk/gdk_batop.c
        gdk/gdk_private.h
Branch: default
Log Message:

Use an enum for BAT properties (GDK_MIN_VALUE and GDK_MAX_VALUE).


diffs (97 lines):

diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out
--- a/clients/Tests/exports.stable.out
+++ b/clients/Tests/exports.stable.out
@@ -118,7 +118,7 @@ gdk_return BATextend(BAT *b, BUN newcap)
 void BATfakeCommit(BAT *b);
 gdk_return BATfirstn(BAT **topn, BAT **gids, BAT *b, BAT *cands, BAT *grps, 
BUN n, bool asc, bool distinct) __attribute__((__warn_unused_result__));
 int BATgetaccess(BAT *b);
-PROPrec *BATgetprop(BAT *b, int idx);
+PROPrec *BATgetprop(BAT *b, enum prop_t idx);
 gdk_return BATgroup(BAT **groups, BAT **extents, BAT **histo, BAT *b, BAT *s, 
BAT *g, BAT *e, BAT *h) __attribute__((__warn_unused_result__));
 const char *BATgroupaggrinit(BAT *b, BAT *g, BAT *e, BAT *s, oid *minp, oid 
*maxp, BUN *ngrpp, BUN *startp, BUN *endp, const oid **candp, const oid 
**candendp);
 gdk_return BATgroupavg(BAT **bnp, BAT **cntsp, BAT *b, BAT *g, BAT *e, BAT *s, 
int tp, bool skip_nils, bool abort_on_error, int scale);
@@ -161,7 +161,7 @@ BAT *BATproject(BAT *l, BAT *r);
 BAT *BATprojectchain(BAT **bats);
 gdk_return BATrangejoin(BAT **r1p, BAT **r2p, BAT *l, BAT *rl, BAT *rh, BAT 
*sl, BAT *sr, bool li, bool hi, BUN estimate) 
__attribute__((__warn_unused_result__));
 gdk_return BATreplace(BAT *b, BAT *p, BAT *n, bool force) 
__attribute__((__warn_unused_result__));
-void BATrmprop(BAT *b, int idx);
+void BATrmprop(BAT *b, enum prop_t idx);
 gdk_return BATroles(BAT *b, const char *tnme);
 BAT *BATsample(BAT *b, BUN n);
 BAT *BATsample_with_seed(BAT *b, BUN n, unsigned seed);
@@ -170,7 +170,7 @@ gdk_return BATsemijoin(BAT **r1p, BAT **
 gdk_return BATsetaccess(BAT *b, int mode);
 void BATsetcapacity(BAT *b, BUN cnt);
 void BATsetcount(BAT *b, BUN cnt);
-void BATsetprop(BAT *b, int idx, int type, const void *v);
+void BATsetprop(BAT *b, enum prop_t idx, int type, const void *v);
 BAT *BATslice(BAT *b, BUN low, BUN high);
 gdk_return BATsort(BAT **sorted, BAT **order, BAT **groups, BAT *b, BAT *o, 
BAT *g, bool reverse, bool stable) __attribute__((__warn_unused_result__));
 gdk_return BATstr_group_concat(ValPtr res, BAT *b, BAT *s, bool skip_nils, 
bool abort_on_error, bool nil_if_empty, const char *separator);
diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -2692,14 +2692,15 @@ gdk_export void VIEWbounds(BAT *b, BAT *
  * properties. They can be used to improve query processing at higher
  * levels.
  */
-
-#define GDK_MIN_VALUE 3                /* smallest non-nil value in BAT */
-#define GDK_MAX_VALUE 4                /* largest non-nil value in BAT */
+enum prop_t {
+       GDK_MIN_VALUE = 3,      /* smallest non-nil value in BAT */
+       GDK_MAX_VALUE,          /* largest non-nil value in BAT */
+};
 
 gdk_export void PROPdestroy(BAT *b);
-gdk_export PROPrec *BATgetprop(BAT *b, int idx);
-gdk_export void BATsetprop(BAT *b, int idx, int type, const void *v);
-gdk_export void BATrmprop(BAT *b, int idx);
+gdk_export PROPrec *BATgetprop(BAT *b, enum prop_t idx);
+gdk_export void BATsetprop(BAT *b, enum prop_t idx, int type, const void *v);
+gdk_export void BATrmprop(BAT *b, enum prop_t idx);
 
 /*
  * @- BAT relational operators
diff --git a/gdk/gdk_batop.c b/gdk/gdk_batop.c
--- a/gdk/gdk_batop.c
+++ b/gdk/gdk_batop.c
@@ -1905,7 +1905,7 @@ PROPdestroy(BAT *b)
 }
 
 PROPrec *
-BATgetprop(BAT *b, int idx)
+BATgetprop(BAT *b, enum prop_t idx)
 {
        PROPrec *p = b->tprops;
 
@@ -1918,7 +1918,7 @@ BATgetprop(BAT *b, int idx)
 }
 
 void
-BATsetprop(BAT *b, int idx, int type, const void *v)
+BATsetprop(BAT *b, enum prop_t idx, int type, const void *v)
 {
        PROPrec *p = BATgetprop(b, idx);
 
@@ -1943,7 +1943,7 @@ BATsetprop(BAT *b, int idx, int type, co
 }
 
 void
-BATrmprop(BAT *b, int idx)
+BATrmprop(BAT *b, enum prop_t idx)
 {
        PROPrec *prop = b->tprops, *prev = NULL;
 
diff --git a/gdk/gdk_private.h b/gdk/gdk_private.h
--- a/gdk/gdk_private.h
+++ b/gdk/gdk_private.h
@@ -266,7 +266,7 @@ void IMPSprint(BAT *b)              /* never called:
 #define BBP_THREADMASK 63
 
 struct PROPrec {
-       int id;
+       enum prop_t id;
        ValRecord v;
        struct PROPrec *next;   /* simple chain of properties */
 };
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to