Changeset: 2bd50305d500 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=2bd50305d500
Modified Files:
        clients/Tests/exports.stable.out
        monetdb5/modules/kernel/batcalc.c
        monetdb5/modules/kernel/batcalc.mal
        monetdb5/modules/kernel/batcalc.mal.sh
Branch: default
Log Message:

Cleanup of changeset b51e0d4dae3f.
No need for batcalc.TYPE working on non-BAT types (that's what
calc.TYPE is for).
Make that clients exports test finds all exported functions by not
hiding the export declaration inside a #define.


diffs (truncated from 1475 to 300 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
@@ -1330,8 +1330,26 @@ str CMDclearTrace(int *res);
 str CMDcloseProfilerStream(int *res);
 str CMDclrFilterProfiler(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr 
pci);
 str CMDclrFilterVariable(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr 
pc);
-str CMDconvert(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
-str CMDconvertsignal(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
+str CMDconvert_bit(bat *ret, bat *bid);
+str CMDconvert_bte(bat *ret, bat *bid);
+str CMDconvert_dbl(bat *ret, bat *bid);
+str CMDconvert_flt(bat *ret, bat *bid);
+str CMDconvert_int(bat *ret, bat *bid);
+str CMDconvert_lng(bat *ret, bat *bid);
+str CMDconvert_oid(bat *ret, bat *bid);
+str CMDconvert_sht(bat *ret, bat *bid);
+str CMDconvert_str(bat *ret, bat *bid);
+str CMDconvert_wrd(bat *ret, bat *bid);
+str CMDconvertsignal_bit(bat *ret, bat *bid);
+str CMDconvertsignal_bte(bat *ret, bat *bid);
+str CMDconvertsignal_dbl(bat *ret, bat *bid);
+str CMDconvertsignal_flt(bat *ret, bat *bid);
+str CMDconvertsignal_int(bat *ret, bat *bid);
+str CMDconvertsignal_lng(bat *ret, bat *bid);
+str CMDconvertsignal_oid(bat *ret, bat *bid);
+str CMDconvertsignal_sht(bat *ret, bat *bid);
+str CMDconvertsignal_str(bat *ret, bat *bid);
+str CMDconvertsignal_wrd(bat *ret, bat *bid);
 str CMDdeactivateProfiler(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr 
pci);
 str CMDdebug(int *ret, int *flg);
 str CMDdumpTrace(int *res);
diff --git a/monetdb5/modules/kernel/batcalc.c 
b/monetdb5/modules/kernel/batcalc.c
--- a/monetdb5/modules/kernel/batcalc.c
+++ b/monetdb5/modules/kernel/batcalc.c
@@ -1327,32 +1327,6 @@ CMDcalcavg(dbl *avg, bat *bid)
        return CMDcalcavg2(avg, NULL, bid);
 }
 
-batcalc_export str CMDconvert(Client cntxt, MalBlkPtr mb, MalStkPtr stk, 
InstrPtr pci);
-
-str
-CMDconvert(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
-{
-       (void) cntxt;
-       (void) mb;
-
-       if (VARconvert(&stk->stk[getArg(pci, 0)], &stk->stk[getArg(pci, 1)], 0) 
== GDK_FAIL)
-               return mythrow(MAL, "batcalc.convert", OPERATION_FAILED);
-       return MAL_SUCCEED;
-}
-
-batcalc_export str CMDconvertsignal(Client cntxt, MalBlkPtr mb, MalStkPtr stk, 
InstrPtr pci);
-
-str
-CMDconvertsignal(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
-{
-       (void) cntxt;
-       (void) mb;
-
-       if (VARconvert(&stk->stk[getArg(pci, 0)], &stk->stk[getArg(pci, 1)], 1) 
== GDK_FAIL)
-               return mythrow(MAL, "batcalc.convert", OPERATION_FAILED);
-       return MAL_SUCCEED;
-}
-
 static str
 CMDconvertbat(bat *ret, bat *bid, int tp, int abort_on_error)
 {
@@ -1362,36 +1336,55 @@ CMDconvertbat(bat *ret, bat *bid, int tp
                throw(MAL, "batcalc.convert", RUNTIME_OBJECT_MISSING);
        bn = BATconvert(b, tp, abort_on_error);
        BBPreleaseref(b->batCacheid);
-       if (bn == NULL)
-               return mythrow(MAL, "batcalc.convert", OPERATION_FAILED);
+       if (bn == NULL) {
+               char buf[20];
+               snprintf(buf, sizeof(buf), "batcalc.%s", ATOMname(tp));
+               return mythrow(MAL, buf, OPERATION_FAILED);
+       }
        BBPkeepref(*ret = bn->batCacheid);
        return MAL_SUCCEED;
 }
 
-#define CONVERT_TYPE(TYPE)                                                     
                        \
-batcalc_export str CMDconvert_##TYPE(bat *ret, bat *bid);              \
-                                                                               
                                                \
-str                                                                            
                                                \
-CMDconvert_##TYPE(bat *ret, bat *bid)                                          
        \
-{                                                                              
                                                \
-       return CMDconvertbat(ret, bid, TYPE_##TYPE, 0);                         
\
-}                                                                              
                                                \
-                                                                               
                                                \
-batcalc_export str CMDconvertsignal_##TYPE(bat *ret, bat *bid);        \
-                                                                               
                                                \
-str                                                                            
                                                \
-CMDconvertsignal_##TYPE(bat *ret, bat *bid)                                    
        \
-{                                                                              
                                                \
-       return CMDconvertbat(ret, bid, TYPE_##TYPE, 1);                         
\
+#define BATCONVERT_TYPE(TYPE)                                          \
+str                                                                            
                        \
+CMDconvert_##TYPE(bat *ret, bat *bid)                          \
+{                                                                              
                        \
+       return CMDconvertbat(ret, bid, TYPE_##TYPE, 0); \
+}                                                                              
                        \
+str                                                                            
                        \
+CMDconvertsignal_##TYPE(bat *ret, bat *bid)                    \
+{                                                                              
                        \
+       return CMDconvertbat(ret, bid, TYPE_##TYPE, 1); \
 }
 
-CONVERT_TYPE(bit)
-CONVERT_TYPE(bte)
-CONVERT_TYPE(sht)
-CONVERT_TYPE(int)
-CONVERT_TYPE(wrd)
-CONVERT_TYPE(lng)
-CONVERT_TYPE(flt)
-CONVERT_TYPE(dbl)
-CONVERT_TYPE(oid)
-CONVERT_TYPE(str)
+/* exports outside of define for clients exports test */
+batcalc_export str CMDconvert_bit(bat *ret, bat *bid);
+batcalc_export str CMDconvertsignal_bit(bat *ret, bat *bid);
+BATCONVERT_TYPE(bit)
+batcalc_export str CMDconvert_bte(bat *ret, bat *bid);
+batcalc_export str CMDconvertsignal_bte(bat *ret, bat *bid);
+BATCONVERT_TYPE(bte)
+batcalc_export str CMDconvert_sht(bat *ret, bat *bid);
+batcalc_export str CMDconvertsignal_sht(bat *ret, bat *bid);
+BATCONVERT_TYPE(sht)
+batcalc_export str CMDconvert_int(bat *ret, bat *bid);
+batcalc_export str CMDconvertsignal_int(bat *ret, bat *bid);
+BATCONVERT_TYPE(int)
+batcalc_export str CMDconvert_wrd(bat *ret, bat *bid);
+batcalc_export str CMDconvertsignal_wrd(bat *ret, bat *bid);
+BATCONVERT_TYPE(wrd)
+batcalc_export str CMDconvert_lng(bat *ret, bat *bid);
+batcalc_export str CMDconvertsignal_lng(bat *ret, bat *bid);
+BATCONVERT_TYPE(lng)
+batcalc_export str CMDconvert_flt(bat *ret, bat *bid);
+batcalc_export str CMDconvertsignal_flt(bat *ret, bat *bid);
+BATCONVERT_TYPE(flt)
+batcalc_export str CMDconvert_dbl(bat *ret, bat *bid);
+batcalc_export str CMDconvertsignal_dbl(bat *ret, bat *bid);
+BATCONVERT_TYPE(dbl)
+batcalc_export str CMDconvert_oid(bat *ret, bat *bid);
+batcalc_export str CMDconvertsignal_oid(bat *ret, bat *bid);
+BATCONVERT_TYPE(oid)
+batcalc_export str CMDconvert_str(bat *ret, bat *bid);
+batcalc_export str CMDconvertsignal_str(bat *ret, bat *bid);
+BATCONVERT_TYPE(str)
diff --git a/monetdb5/modules/kernel/batcalc.mal 
b/monetdb5/modules/kernel/batcalc.mal
--- a/monetdb5/modules/kernel/batcalc.mal
+++ b/monetdb5/modules/kernel/batcalc.mal
@@ -11947,1300 +11947,700 @@ comment "average and number of non-nil v
 command bit(b:bat[:any_1,:bit]) :bat[:any_1,:bit]
 address CMDconvertsignal_bit
 comment "cast from bit to bit, signal error on overflow";
-pattern bit(v:bit) :bit
-address CMDconvertsignal
-comment "cast from bit to bit, signal error on overflow";
 command bit_noerror(b:bat[:any_1,:bit]) :bat[:any_1,:bit]
 address CMDconvert_bit
 comment "cast from bit to bit";
-pattern bit_noerror(v:bit) :bit
-address CMDconvert
-comment "cast from bit to bit";
 
 command bit(b:bat[:any_1,:bte]) :bat[:any_1,:bit]
 address CMDconvertsignal_bit
 comment "cast from bte to bit, signal error on overflow";
-pattern bit(v:bte) :bit
-address CMDconvertsignal
-comment "cast from bte to bit, signal error on overflow";
 command bit_noerror(b:bat[:any_1,:bte]) :bat[:any_1,:bit]
 address CMDconvert_bit
 comment "cast from bte to bit";
-pattern bit_noerror(v:bte) :bit
-address CMDconvert
-comment "cast from bte to bit";
 
 command bit(b:bat[:any_1,:sht]) :bat[:any_1,:bit]
 address CMDconvertsignal_bit
 comment "cast from sht to bit, signal error on overflow";
-pattern bit(v:sht) :bit
-address CMDconvertsignal
-comment "cast from sht to bit, signal error on overflow";
 command bit_noerror(b:bat[:any_1,:sht]) :bat[:any_1,:bit]
 address CMDconvert_bit
 comment "cast from sht to bit";
-pattern bit_noerror(v:sht) :bit
-address CMDconvert
-comment "cast from sht to bit";
 
 command bit(b:bat[:any_1,:int]) :bat[:any_1,:bit]
 address CMDconvertsignal_bit
 comment "cast from int to bit, signal error on overflow";
-pattern bit(v:int) :bit
-address CMDconvertsignal
-comment "cast from int to bit, signal error on overflow";
 command bit_noerror(b:bat[:any_1,:int]) :bat[:any_1,:bit]
 address CMDconvert_bit
 comment "cast from int to bit";
-pattern bit_noerror(v:int) :bit
-address CMDconvert
-comment "cast from int to bit";
 
 command bit(b:bat[:any_1,:wrd]) :bat[:any_1,:bit]
 address CMDconvertsignal_bit
 comment "cast from wrd to bit, signal error on overflow";
-pattern bit(v:wrd) :bit
-address CMDconvertsignal
-comment "cast from wrd to bit, signal error on overflow";
 command bit_noerror(b:bat[:any_1,:wrd]) :bat[:any_1,:bit]
 address CMDconvert_bit
 comment "cast from wrd to bit";
-pattern bit_noerror(v:wrd) :bit
-address CMDconvert
-comment "cast from wrd to bit";
 
 command bit(b:bat[:any_1,:lng]) :bat[:any_1,:bit]
 address CMDconvertsignal_bit
 comment "cast from lng to bit, signal error on overflow";
-pattern bit(v:lng) :bit
-address CMDconvertsignal
-comment "cast from lng to bit, signal error on overflow";
 command bit_noerror(b:bat[:any_1,:lng]) :bat[:any_1,:bit]
 address CMDconvert_bit
 comment "cast from lng to bit";
-pattern bit_noerror(v:lng) :bit
-address CMDconvert
-comment "cast from lng to bit";
 
 command bit(b:bat[:any_1,:flt]) :bat[:any_1,:bit]
 address CMDconvertsignal_bit
 comment "cast from flt to bit, signal error on overflow";
-pattern bit(v:flt) :bit
-address CMDconvertsignal
-comment "cast from flt to bit, signal error on overflow";
 command bit_noerror(b:bat[:any_1,:flt]) :bat[:any_1,:bit]
 address CMDconvert_bit
 comment "cast from flt to bit";
-pattern bit_noerror(v:flt) :bit
-address CMDconvert
-comment "cast from flt to bit";
 
 command bit(b:bat[:any_1,:dbl]) :bat[:any_1,:bit]
 address CMDconvertsignal_bit
 comment "cast from dbl to bit, signal error on overflow";
-pattern bit(v:dbl) :bit
-address CMDconvertsignal
-comment "cast from dbl to bit, signal error on overflow";
 command bit_noerror(b:bat[:any_1,:dbl]) :bat[:any_1,:bit]
 address CMDconvert_bit
 comment "cast from dbl to bit";
-pattern bit_noerror(v:dbl) :bit
-address CMDconvert
-comment "cast from dbl to bit";
 
 command bit(b:bat[:any_1,:oid]) :bat[:any_1,:bit]
 address CMDconvertsignal_bit
 comment "cast from oid to bit, signal error on overflow";
-pattern bit(v:oid) :bit
-address CMDconvertsignal
-comment "cast from oid to bit, signal error on overflow";
 command bit_noerror(b:bat[:any_1,:oid]) :bat[:any_1,:bit]
 address CMDconvert_bit
 comment "cast from oid to bit";
-pattern bit_noerror(v:oid) :bit
-address CMDconvert
-comment "cast from oid to bit";
 
 command bit(b:bat[:any_1,:str]) :bat[:any_1,:bit]
 address CMDconvertsignal_bit
 comment "cast from str to bit, signal error on overflow";
-pattern bit(v:str) :bit
-address CMDconvertsignal
-comment "cast from str to bit, signal error on overflow";
 command bit_noerror(b:bat[:any_1,:str]) :bat[:any_1,:bit]
 address CMDconvert_bit
 comment "cast from str to bit";
-pattern bit_noerror(v:str) :bit
-address CMDconvert
-comment "cast from str to bit";
 
 command bte(b:bat[:any_1,:bit]) :bat[:any_1,:bte]
 address CMDconvertsignal_bte
 comment "cast from bit to bte, signal error on overflow";
-pattern bte(v:bit) :bte
-address CMDconvertsignal
-comment "cast from bit to bte, signal error on overflow";
 command bte_noerror(b:bat[:any_1,:bit]) :bat[:any_1,:bte]
 address CMDconvert_bte
 comment "cast from bit to bte";
-pattern bte_noerror(v:bit) :bte
-address CMDconvert
-comment "cast from bit to bte";
 
 command bte(b:bat[:any_1,:bte]) :bat[:any_1,:bte]
 address CMDconvertsignal_bte
_______________________________________________
Checkin-list mailing list
Checkin-list@monetdb.org
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to