Changeset: f6360c814cda for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f6360c814cda
Modified Files:
        monetdb5/modules/mal/batExtensions.c
        monetdb5/modules/mal/batcalc.c
Branch: string_imprints
Log Message:

Move MAL code to proper module


diffs (155 lines):

diff --git a/monetdb5/modules/mal/batExtensions.c 
b/monetdb5/modules/mal/batExtensions.c
--- a/monetdb5/modules/mal/batExtensions.c
+++ b/monetdb5/modules/mal/batExtensions.c
@@ -337,6 +337,75 @@ CMDBATappend_bulk(Client cntxt, MalBlkPt
        return MAL_SUCCEED;
 }
 
+/*
+ * String imprints dev/testing. TODO: remove.
+ */
+static str
+CMDstrimp_ndigrams(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
+{
+       bat bid;
+       BAT *b;
+       size_t n;
+
+       (void)cntxt;
+       (void)mb;
+
+       // return mythrow(MAL, "batcalc.striter", OPERATION_FAILED);
+       bid = *getArgReference_bat(stk, pci, 1);
+       if ((b = BATdescriptor(bid)) == NULL)
+               throw(MAL, "batcalc.ndigrams", SQLSTATE(HY002) 
RUNTIME_OBJECT_MISSING);
+
+       if (!GDKstrimp_ndigrams(b, &n)) {
+               throw(MAL, "batcalc.ndigrams", SQLSTATE(HY002) 
OPERATION_FAILED);
+       }
+
+       *getArgReference_lng(stk, pci, 0) = n;
+
+       return MAL_SUCCEED;
+}
+
+static str
+CMDstrimp_makehist(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
+{
+       bat bid;
+       BAT *b, *ob;
+       size_t i;
+       uint64_t hist[STRIMP_HISTSIZE];
+       uint16_t count;
+
+       (void)cntxt;
+       (void)mb;
+
+       bid = *getArgReference_bat(stk, pci, 2);
+       if ((b = BATdescriptor(bid)) == NULL)
+               throw(MAL, "batcalc.ndigrams", SQLSTATE(HY002) 
RUNTIME_OBJECT_MISSING);
+
+       if (!GDKstrimp_makehistogram(b, hist, STRIMP_HISTSIZE, &count)) {
+               throw(MAL, "batcalc.ndigrams", SQLSTATE(HY002) 
OPERATION_FAILED);
+       }
+
+       ob = COLnew(0, TYPE_lng, STRIMP_HISTSIZE, TRANSIENT);
+       if (ob == NULL) {
+               throw(MAL, "strimp.makehist", SQLSTATE(HY013) MAL_MALLOC_FAIL);
+       }
+
+       for (i=0; i < STRIMP_HISTSIZE; i++) {
+               if (BUNappend(ob, hist + i, false) != GDK_SUCCEED)
+                       throw(MAL, "strimp.makehist", SQLSTATE(HY013) 
MAL_MALLOC_FAIL);
+       }
+
+       *getArgReference_bat(stk, pci, 0) = count;
+       // *getArgReference_bat(stk, pci, 1) = ob->batCacheid;
+
+       // BBPkeepref(ob->batCacheid);
+       return MAL_SUCCEED;
+}
+
+/*
+ * String imprints dev/testing. TODO: end remove.
+ */
+
+
 #include "mel.h"
 mel_func batExtensions_init_funcs[] = {
  pattern("bat", "new", CMDBATnew, false, "", args(1,2, 
batargany("",1),argany("tt",1))),
@@ -365,6 +434,17 @@ mel_func batExtensions_init_funcs[] = {
 #endif
  pattern("bat", "appendBulk", CMDBATappend_bulk, false, "append the arguments 
ins to i", args(1,4, batargany("",1), 
batargany("i",1),arg("force",bit),varargany("ins",1))),
  pattern("bat", "appendBulk", CMDBATappend_bulk, false, "append the arguments 
ins to i", args(1,4, batargany("",1), 
batargany("i",1),arg("force",bit),batvarargany("ins",1))),
+
+  /*
+  * String imprints dev/testing. TODO: remove.
+  */
+ pattern("bat", "count_digrams", CMDstrimp_ndigrams, false, "count digrams in 
a string bat", args(1, 2, arg("",lng), batarg("b", str))),
+ //pattern("batcalc", "make_histogam", CMDstrimp_makehist, false, "make a 
histogram of all the byte pairs in a BAT", args(2, 3, arg("", sht), batarg("", 
lng), batarg("b", str))),
+ pattern("bat", "make_histogam", CMDstrimp_makehist, false, "make a histogram 
of all the byte pairs in a BAT", args(1, 2, arg("", sht), batarg("b", str))),
+ /*
+  * String imprints dev/testing. TODO: end remove.
+  */
+
  { .imp=NULL }
 };
 #include "mal_import.h"
diff --git a/monetdb5/modules/mal/batcalc.c b/monetdb5/modules/mal/batcalc.c
--- a/monetdb5/modules/mal/batcalc.c
+++ b/monetdb5/modules/mal/batcalc.c
@@ -1368,39 +1368,6 @@ CMDifthen(Client cntxt, MalBlkPtr mb, Ma
        return MAL_SUCCEED;
 }
 
-
-/*
- * String imprints dev/testing. TODO: remove.
- */
-static str
-CMDstrimp_ndigrams(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
-{
-       bat bid;
-       BAT *b;
-       size_t n;
-
-       (void)cntxt;
-       (void)mb;
-
-       // return mythrow(MAL, "batcalc.striter", OPERATION_FAILED);
-       bid = *getArgReference_bat(stk, pci, 1);
-       if ((b = BATdescriptor(bid)) == NULL)
-               throw(MAL, "batcalc.ndigrams", SQLSTATE(HY002) 
RUNTIME_OBJECT_MISSING);
-
-       if (!GDKstrimp_ndigrams(b, &n)) {
-               throw(MAL, "batcalc.ndigrams", SQLSTATE(HY002) 
OPERATION_FAILED);
-       }
-
-       *getArgReference_lng(stk, pci, 0) = n;
-
-       return MAL_SUCCEED;
-}
-
-
-/*
- * String imprints dev/testing. TODO: end remove.
- */
-
 #include "mel.h"
 
 static str
@@ -2221,14 +2188,6 @@ static mel_func batcalc_init_funcs[] = {
  pattern("batcalc", "ifthenelse", CMDifthen, false, "If-then-else operation to 
assemble a conditional result", args(1,4, 
batargany("",1),batarg("b",bit),argany("v1",1),batargany("b2",1))),
  pattern("batcalc", "ifthenelse", CMDifthen, false, "If-then-else operation to 
assemble a conditional result", args(1,4, 
batargany("",1),batarg("b",bit),batargany("b1",1),batargany("b2",1))),
 
- /*
-  * String imprints dev/testing. TODO: remove.
-  */
- pattern("batcalc", "count_digrams", CMDstrimp_ndigrams, false, "count digrams 
in a string bat", args(1, 2, arg("",lng), batarg("b", str))),
-
- /*
-  * String imprints dev/testing. TODO: end remove.
-  */
  { .imp=NULL }
 
 };
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to