Changeset: 917d071d8fd0 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=917d071d8fd0
Modified Files:
clients/Tests/MAL-signatures.stable.out
clients/Tests/MAL-signatures.stable.out.int128
clients/Tests/exports.stable.out
monetdb5/ChangeLog
monetdb5/modules/kernel/group.c
monetdb5/modules/kernel/group.h
monetdb5/modules/kernel/group.mal
Branch: default
Log Message:
Implemented group.(sub)group(done) with a single output.
diffs (254 lines):
diff --git a/clients/Tests/MAL-signatures.stable.out
b/clients/Tests/MAL-signatures.stable.out
--- a/clients/Tests/MAL-signatures.stable.out
+++ b/clients/Tests/MAL-signatures.stable.out
@@ -11069,26 +11069,38 @@ stdout of test 'MAL-signatures` in direc
[ "geom", "mbrRight", "command geom.mbrRight(geom1:wkb,
geom2:wkb):bit ", "mbrRight_wkb;", "Returns true if the mbr of geom1
is right of the mbr of geom2" ]
[ "geom", "prelude", "command geom.prelude():void ",
"geom_prelude;", "" ]
[ "geom", "setSRID", "command geom.setSRID(w:wkb, srid:int):wkb ",
"wkbSetSRID;", "Sets the Reference System ID for this Geometry." ]
+[ "group", "group", "command group.group(b:bat[:any_1]):bat[:oid]
", "GRPgroup11;", "" ]
[ "group", "group", "command group.group(b:bat[:any_1])
(groups:bat[:oid], extents:bat[:oid], histo:bat[:lng]) ", "GRPgroup1;", ""
]
+[ "group", "group", "command group.group(b:bat[:any_1],
s:bat[:oid]):bat[:oid] ", "GRPgroup21;", "" ]
[ "group", "group", "command group.group(b:bat[:any_1],
s:bat[:oid]) (groups:bat[:oid], extents:bat[:oid], histo:bat[:lng]) ",
"GRPgroup2;", "" ]
[ "group", "group", "command group.group(b:bat[:any_1])
(groups:bat[:oid], extents:bat[:oid]) ", "GRPgroup3;", "" ]
[ "group", "group", "command group.group(b:bat[:any_1],
s:bat[:oid]) (groups:bat[:oid], extents:bat[:oid]) ", "GRPgroup4;", ""
]
+[ "group", "groupdone", "command
group.groupdone(b:bat[:any_1]):bat[:oid] ", "GRPgroup11;", "" ]
[ "group", "groupdone", "command group.groupdone(b:bat[:any_1])
(groups:bat[:oid], extents:bat[:oid], histo:bat[:lng]) ", "GRPgroup1;",
"" ]
+[ "group", "groupdone", "command group.groupdone(b:bat[:any_1],
s:bat[:oid]):bat[:oid] ", "GRPgroup21;", "" ]
[ "group", "groupdone", "command group.groupdone(b:bat[:any_1],
s:bat[:oid]) (groups:bat[:oid], extents:bat[:oid], histo:bat[:lng]) ",
"GRPgroup2;", "" ]
[ "group", "groupdone", "command group.groupdone(b:bat[:any_1])
(groups:bat[:oid], extents:bat[:oid]) ", "GRPgroup3;", "" ]
[ "group", "groupdone", "command group.groupdone(b:bat[:any_1],
s:bat[:oid]) (groups:bat[:oid], extents:bat[:oid]) ", "GRPgroup4;", ""
]
[ "group", "multicolumn", "pattern group.multicolumn(b:bat[:any]...)
(ref:bat[:oid], grp:bat[:oid], hist:bat[:any]) ", "GROUPmulticolumngroup;",
"Derivation of a group index over multiple columns." ]
+[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
g:bat[:oid]):bat[:oid] ", "GRPsubgroup21;", "" ]
[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
g:bat[:oid]) (groups:bat[:oid], extents:bat[:oid], histo:bat[:lng]) ",
"GRPsubgroup2;", "" ]
+[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
s:bat[:oid], g:bat[:oid]):bat[:oid] ", "GRPsubgroup31;", "" ]
[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
s:bat[:oid], g:bat[:oid]) (groups:bat[:oid], extents:bat[:oid],
histo:bat[:lng]) ", "GRPsubgroup3;", "" ]
+[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
g:bat[:oid], e:bat[:oid], h:bat[:lng]):bat[:oid] ", "GRPsubgroup41;",
"" ]
[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
g:bat[:oid], e:bat[:oid], h:bat[:lng]) (groups:bat[:oid], extents:bat[:oid],
histo:bat[:lng]) ", "GRPsubgroup4;", "" ]
+[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
s:bat[:oid], g:bat[:oid], e:bat[:oid], h:bat[:lng]):bat[:oid] ",
"GRPsubgroup51;", "" ]
[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
s:bat[:oid], g:bat[:oid], e:bat[:oid], h:bat[:lng]) (groups:bat[:oid],
extents:bat[:oid], histo:bat[:lng]) ", "GRPsubgroup5;", "" ]
[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
g:bat[:oid]) (groups:bat[:oid], extents:bat[:oid]) ", "GRPsubgroup6;",
"" ]
[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
s:bat[:oid], g:bat[:oid]) (groups:bat[:oid], extents:bat[:oid]) ",
"GRPsubgroup7;", "" ]
[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
g:bat[:oid], e:bat[:oid], h:bat[:lng]) (groups:bat[:oid], extents:bat[:oid]) ",
"GRPsubgroup8;", "" ]
[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
s:bat[:oid], g:bat[:oid], e:bat[:oid], h:bat[:lng]) (groups:bat[:oid],
extents:bat[:oid]) ", "GRPsubgroup9;", "" ]
+[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
g:bat[:oid]):bat[:oid] ", "GRPsubgroup21;", "" ]
[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
g:bat[:oid]) (groups:bat[:oid], extents:bat[:oid], histo:bat[:lng]) ",
"GRPsubgroup2;", "" ]
+[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
s:bat[:oid], g:bat[:oid]):bat[:oid] ", "GRPsubgroup31;", "" ]
[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
s:bat[:oid], g:bat[:oid]) (groups:bat[:oid], extents:bat[:oid],
histo:bat[:lng]) ", "GRPsubgroup3;", "" ]
+[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
g:bat[:oid], e:bat[:oid], h:bat[:lng]):bat[:oid] ", "GRPsubgroup41;", ""
]
[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
g:bat[:oid], e:bat[:oid], h:bat[:lng]) (groups:bat[:oid], extents:bat[:oid],
histo:bat[:lng]) ", "GRPsubgroup4;", "" ]
+[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
s:bat[:oid], g:bat[:oid], e:bat[:oid], h:bat[:lng]):bat[:oid] ",
"GRPsubgroup51;", "" ]
[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
s:bat[:oid], g:bat[:oid], e:bat[:oid], h:bat[:lng]) (groups:bat[:oid],
extents:bat[:oid], histo:bat[:lng]) ", "GRPsubgroup5;", "" ]
[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
g:bat[:oid]) (groups:bat[:oid], extents:bat[:oid]) ", "GRPsubgroup6;",
"" ]
[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
s:bat[:oid], g:bat[:oid]) (groups:bat[:oid], extents:bat[:oid]) ",
"GRPsubgroup7;", "" ]
diff --git a/clients/Tests/MAL-signatures.stable.out.int128
b/clients/Tests/MAL-signatures.stable.out.int128
--- a/clients/Tests/MAL-signatures.stable.out.int128
+++ b/clients/Tests/MAL-signatures.stable.out.int128
@@ -15467,26 +15467,38 @@ stdout of test 'MAL-signatures` in direc
[ "geom", "mbrRight", "command geom.mbrRight(geom1:wkb,
geom2:wkb):bit ", "mbrRight_wkb;", "Returns true if the mbr of geom1
is right of the mbr of geom2" ]
[ "geom", "prelude", "command geom.prelude():void ",
"geom_prelude;", "" ]
[ "geom", "setSRID", "command geom.setSRID(w:wkb, srid:int):wkb ",
"wkbSetSRID;", "Sets the Reference System ID for this Geometry." ]
+[ "group", "group", "command group.group(b:bat[:any_1]):bat[:oid]
", "GRPgroup11;", "" ]
[ "group", "group", "command group.group(b:bat[:any_1])
(groups:bat[:oid], extents:bat[:oid], histo:bat[:lng]) ", "GRPgroup1;", ""
]
+[ "group", "group", "command group.group(b:bat[:any_1],
s:bat[:oid]):bat[:oid] ", "GRPgroup21;", "" ]
[ "group", "group", "command group.group(b:bat[:any_1],
s:bat[:oid]) (groups:bat[:oid], extents:bat[:oid], histo:bat[:lng]) ",
"GRPgroup2;", "" ]
[ "group", "group", "command group.group(b:bat[:any_1])
(groups:bat[:oid], extents:bat[:oid]) ", "GRPgroup3;", "" ]
[ "group", "group", "command group.group(b:bat[:any_1],
s:bat[:oid]) (groups:bat[:oid], extents:bat[:oid]) ", "GRPgroup4;", ""
]
+[ "group", "groupdone", "command
group.groupdone(b:bat[:any_1]):bat[:oid] ", "GRPgroup11;", "" ]
[ "group", "groupdone", "command group.groupdone(b:bat[:any_1])
(groups:bat[:oid], extents:bat[:oid], histo:bat[:lng]) ", "GRPgroup1;",
"" ]
+[ "group", "groupdone", "command group.groupdone(b:bat[:any_1],
s:bat[:oid]):bat[:oid] ", "GRPgroup21;", "" ]
[ "group", "groupdone", "command group.groupdone(b:bat[:any_1],
s:bat[:oid]) (groups:bat[:oid], extents:bat[:oid], histo:bat[:lng]) ",
"GRPgroup2;", "" ]
[ "group", "groupdone", "command group.groupdone(b:bat[:any_1])
(groups:bat[:oid], extents:bat[:oid]) ", "GRPgroup3;", "" ]
[ "group", "groupdone", "command group.groupdone(b:bat[:any_1],
s:bat[:oid]) (groups:bat[:oid], extents:bat[:oid]) ", "GRPgroup4;", ""
]
[ "group", "multicolumn", "pattern group.multicolumn(b:bat[:any]...)
(ref:bat[:oid], grp:bat[:oid], hist:bat[:any]) ", "GROUPmulticolumngroup;",
"Derivation of a group index over multiple columns." ]
+[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
g:bat[:oid]):bat[:oid] ", "GRPsubgroup21;", "" ]
[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
g:bat[:oid]) (groups:bat[:oid], extents:bat[:oid], histo:bat[:lng]) ",
"GRPsubgroup2;", "" ]
+[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
s:bat[:oid], g:bat[:oid]):bat[:oid] ", "GRPsubgroup31;", "" ]
[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
s:bat[:oid], g:bat[:oid]) (groups:bat[:oid], extents:bat[:oid],
histo:bat[:lng]) ", "GRPsubgroup3;", "" ]
+[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
g:bat[:oid], e:bat[:oid], h:bat[:lng]):bat[:oid] ", "GRPsubgroup41;",
"" ]
[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
g:bat[:oid], e:bat[:oid], h:bat[:lng]) (groups:bat[:oid], extents:bat[:oid],
histo:bat[:lng]) ", "GRPsubgroup4;", "" ]
+[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
s:bat[:oid], g:bat[:oid], e:bat[:oid], h:bat[:lng]):bat[:oid] ",
"GRPsubgroup51;", "" ]
[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
s:bat[:oid], g:bat[:oid], e:bat[:oid], h:bat[:lng]) (groups:bat[:oid],
extents:bat[:oid], histo:bat[:lng]) ", "GRPsubgroup5;", "" ]
[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
g:bat[:oid]) (groups:bat[:oid], extents:bat[:oid]) ", "GRPsubgroup6;",
"" ]
[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
s:bat[:oid], g:bat[:oid]) (groups:bat[:oid], extents:bat[:oid]) ",
"GRPsubgroup7;", "" ]
[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
g:bat[:oid], e:bat[:oid], h:bat[:lng]) (groups:bat[:oid], extents:bat[:oid]) ",
"GRPsubgroup8;", "" ]
[ "group", "subgroup", "command group.subgroup(b:bat[:any_1],
s:bat[:oid], g:bat[:oid], e:bat[:oid], h:bat[:lng]) (groups:bat[:oid],
extents:bat[:oid]) ", "GRPsubgroup9;", "" ]
+[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
g:bat[:oid]):bat[:oid] ", "GRPsubgroup21;", "" ]
[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
g:bat[:oid]) (groups:bat[:oid], extents:bat[:oid], histo:bat[:lng]) ",
"GRPsubgroup2;", "" ]
+[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
s:bat[:oid], g:bat[:oid]):bat[:oid] ", "GRPsubgroup31;", "" ]
[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
s:bat[:oid], g:bat[:oid]) (groups:bat[:oid], extents:bat[:oid],
histo:bat[:lng]) ", "GRPsubgroup3;", "" ]
+[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
g:bat[:oid], e:bat[:oid], h:bat[:lng]):bat[:oid] ", "GRPsubgroup41;", ""
]
[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
g:bat[:oid], e:bat[:oid], h:bat[:lng]) (groups:bat[:oid], extents:bat[:oid],
histo:bat[:lng]) ", "GRPsubgroup4;", "" ]
+[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
s:bat[:oid], g:bat[:oid], e:bat[:oid], h:bat[:lng]):bat[:oid] ",
"GRPsubgroup51;", "" ]
[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
s:bat[:oid], g:bat[:oid], e:bat[:oid], h:bat[:lng]) (groups:bat[:oid],
extents:bat[:oid], histo:bat[:lng]) ", "GRPsubgroup5;", "" ]
[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
g:bat[:oid]) (groups:bat[:oid], extents:bat[:oid]) ", "GRPsubgroup6;",
"" ]
[ "group", "subgroupdone", "command group.subgroupdone(b:bat[:any_1],
s:bat[:oid], g:bat[:oid]) (groups:bat[:oid], extents:bat[:oid]) ",
"GRPsubgroup7;", "" ]
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
@@ -1221,13 +1221,19 @@ str FCTgetPlants(bat *ret, bat *ret2);
str FCTshutdown(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
str GROUPmulticolumngroup(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr
pci);
str GRPgroup1(bat *ngid, bat *next, bat *nhis, const bat *bid);
+str GRPgroup11(bat *ngid, const bat *bid);
str GRPgroup2(bat *ngid, bat *next, bat *nhis, const bat *bid, const bat *sid);
+str GRPgroup21(bat *ngid, const bat *bid, const bat *sid);
str GRPgroup3(bat *ngid, bat *next, const bat *bid);
str GRPgroup4(bat *ngid, bat *next, const bat *bid, const bat *sid);
str GRPsubgroup2(bat *ngid, bat *next, bat *nhis, const bat *bid, const bat
*gid);
+str GRPsubgroup21(bat *ngid, const bat *bid, const bat *gid);
str GRPsubgroup3(bat *ngid, bat *next, bat *nhis, const bat *bid, const bat
*sid, const bat *gid);
+str GRPsubgroup31(bat *ngid, const bat *bid, const bat *sid, const bat *gid);
str GRPsubgroup4(bat *ngid, bat *next, bat *nhis, const bat *bid, const bat
*gid, const bat *eid, const bat *hid);
+str GRPsubgroup41(bat *ngid, const bat *bid, const bat *gid, const bat *eid,
const bat *hid);
str GRPsubgroup5(bat *ngid, bat *next, bat *nhis, const bat *bid, const bat
*sid, const bat *gid, const bat *eid, const bat *hid);
+str GRPsubgroup51(bat *ngid, const bat *bid, const bat *sid, const bat *gid,
const bat *eid, const bat *hid);
str GRPsubgroup6(bat *ngid, bat *next, const bat *bid, const bat *gid);
str GRPsubgroup7(bat *ngid, bat *next, const bat *bid, const bat *sid, const
bat *gid);
str GRPsubgroup8(bat *ngid, bat *next, const bat *bid, const bat *gid, const
bat *eid, const bat *hid);
diff --git a/monetdb5/ChangeLog b/monetdb5/ChangeLog
--- a/monetdb5/ChangeLog
+++ b/monetdb5/ChangeLog
@@ -2,6 +2,8 @@
# This file is updated with Maddlog
* Wed Nov 13 2019 Sjoerd Mullender <[email protected]>
+- There are now versions of group.(sub)group(done) that produce a single
+ output containing just the groups.
- algebra.join and algebra.leftjoin now have forms which return a single
column. The column that is returned is the left column of the two
column version.
diff --git a/monetdb5/modules/kernel/group.c b/monetdb5/modules/kernel/group.c
--- a/monetdb5/modules/kernel/group.c
+++ b/monetdb5/modules/kernel/group.c
@@ -40,15 +40,17 @@ GRPsubgroup5(bat *ngid, bat *next, bat *
BBPunfix(h->batCacheid);
throw(MAL, gid ? "group.subgroup" : "group.group",
SQLSTATE(HY002) RUNTIME_OBJECT_MISSING);
}
- if ((r = BATgroup(&gn, &en, nhis ? &hn : NULL, b, s, g, e, h)) ==
GDK_SUCCEED) {
+ if ((r = BATgroup(&gn, next ? &en : NULL, nhis ? &hn : NULL, b, s, g,
e, h)) == GDK_SUCCEED) {
*ngid = gn->batCacheid;
- *next = en->batCacheid;
+ BBPkeepref(*ngid);
+ if (next) {
+ *next = en->batCacheid;
+ BBPkeepref(*next);
+ }
if (nhis){
*nhis = hn->batCacheid;
BBPkeepref(*nhis);
}
- BBPkeepref(*ngid);
- BBPkeepref(*next);
}
BBPunfix(b->batCacheid);
if (s)
@@ -127,3 +129,39 @@ GRPgroup1(bat *ngid, bat *next, bat *nhi
{
return GRPsubgroup5(ngid, next, nhis, bid, NULL, NULL, NULL, NULL);
}
+
+str
+GRPgroup11(bat *ngid, const bat *bid)
+{
+ return GRPsubgroup5(ngid, NULL, NULL, bid, NULL, NULL, NULL, NULL);
+}
+
+str
+GRPgroup21(bat *ngid, const bat *bid, const bat *sid)
+{
+ return GRPsubgroup5(ngid, NULL, NULL, bid, sid, NULL, NULL, NULL);
+}
+
+str
+GRPsubgroup51(bat *ngid, const bat *bid, const bat *sid, const bat *gid, const
bat *eid, const bat *hid)
+{
+ return GRPsubgroup5(ngid, NULL, NULL, bid, sid, gid, eid, hid);
+}
+
+str
+GRPsubgroup41(bat *ngid, const bat *bid, const bat *gid, const bat *eid, const
bat *hid)
+{
+ return GRPsubgroup5(ngid, NULL, NULL, bid, NULL, gid, eid, hid);
+}
+
+str
+GRPsubgroup31(bat *ngid, const bat *bid, const bat *sid, const bat *gid)
+{
+ return GRPsubgroup5(ngid, NULL, NULL, bid, sid, gid, NULL, NULL);
+}
+
+str
+GRPsubgroup21(bat *ngid, const bat *bid, const bat *gid)
+{
+ return GRPsubgroup5(ngid, NULL, NULL, bid, NULL, gid, NULL, NULL);
+}
diff --git a/monetdb5/modules/kernel/group.h b/monetdb5/modules/kernel/group.h
--- a/monetdb5/modules/kernel/group.h
+++ b/monetdb5/modules/kernel/group.h
@@ -38,5 +38,14 @@ mal_export str GRPsubgroup8(bat *ngid, b
mal_export str GRPsubgroup9(bat *ngid, bat *next,
const bat *bid, const
bat *sid,
const bat *gid, const
bat *eid, const bat *hid);
+mal_export str GRPgroup11(bat *ngid, const bat *bid);
+mal_export str GRPgroup21(bat *ngid, const bat *bid, const bat *sid);
+mal_export str GRPsubgroup51(bat *ngid, const bat *bid, const bat *sid,
+ const bat *gid, const
bat *eid, const bat *hid);
+mal_export str GRPsubgroup41(bat *ngid, const bat *bid, const bat *gid,
+ const bat *eid, const
bat *hid);
+mal_export str GRPsubgroup31(bat *ngid, const bat *bid, const bat *sid,
+ const bat *gid);
+mal_export str GRPsubgroup21(bat *ngid, const bat *bid, const bat *gid);
#endif /* _GROUP_H_ */
diff --git a/monetdb5/modules/kernel/group.mal
b/monetdb5/modules/kernel/group.mal
--- a/monetdb5/modules/kernel/group.mal
+++ b/monetdb5/modules/kernel/group.mal
@@ -14,6 +14,10 @@ command group(b:bat[:any_1]) (groups:bat
address GRPgroup3;
command group(b:bat[:any_1],s:bat[:oid]) (groups:bat[:oid],extents:bat[:oid])
address GRPgroup4;
+command group(b:bat[:any_1]) :bat[:oid]
+address GRPgroup11;
+command group(b:bat[:any_1],s:bat[:oid]) :bat[:oid]
+address GRPgroup21;
command subgroup(b:bat[:any_1],g:bat[:oid])
(groups:bat[:oid],extents:bat[:oid],histo:bat[:lng])
address GRPsubgroup2;
command subgroup(b:bat[:any_1],s:bat[:oid],g:bat[:oid])
(groups:bat[:oid],extents:bat[:oid],histo:bat[:lng])
@@ -30,6 +34,14 @@ command subgroup(b:bat[:any_1],g:bat[:oi
address GRPsubgroup8;
command
subgroup(b:bat[:any_1],s:bat[:oid],g:bat[:oid],e:bat[:oid],h:bat[:lng])
(groups:bat[:oid],extents:bat[:oid])
address GRPsubgroup9;
+command subgroup(b:bat[:any_1],g:bat[:oid]) :bat[:oid]
+address GRPsubgroup21;
+command subgroup(b:bat[:any_1],s:bat[:oid],g:bat[:oid]) :bat[:oid]
+address GRPsubgroup31;
+command subgroup(b:bat[:any_1],g:bat[:oid],e:bat[:oid],h:bat[:lng]) :bat[:oid]
+address GRPsubgroup41;
+command
subgroup(b:bat[:any_1],s:bat[:oid],g:bat[:oid],e:bat[:oid],h:bat[:lng])
:bat[:oid]
+address GRPsubgroup51;
command groupdone(b:bat[:any_1])
(groups:bat[:oid],extents:bat[:oid],histo:bat[:lng])
address GRPgroup1;
@@ -39,6 +51,10 @@ command groupdone(b:bat[:any_1]) (groups
address GRPgroup3;
command groupdone(b:bat[:any_1],s:bat[:oid])
(groups:bat[:oid],extents:bat[:oid])
address GRPgroup4;
+command groupdone(b:bat[:any_1]) :bat[:oid]
+address GRPgroup11;
+command groupdone(b:bat[:any_1],s:bat[:oid]) :bat[:oid]
+address GRPgroup21;
command subgroupdone(b:bat[:any_1],g:bat[:oid])
(groups:bat[:oid],extents:bat[:oid],histo:bat[:lng])
address GRPsubgroup2;
command subgroupdone(b:bat[:any_1],s:bat[:oid],g:bat[:oid])
(groups:bat[:oid],extents:bat[:oid],histo:bat[:lng])
@@ -55,3 +71,11 @@ command subgroupdone(b:bat[:any_1],g:bat
address GRPsubgroup8;
command
subgroupdone(b:bat[:any_1],s:bat[:oid],g:bat[:oid],e:bat[:oid],h:bat[:lng])
(groups:bat[:oid],extents:bat[:oid])
address GRPsubgroup9;
+command subgroupdone(b:bat[:any_1],g:bat[:oid]) :bat[:oid]
+address GRPsubgroup21;
+command subgroupdone(b:bat[:any_1],s:bat[:oid],g:bat[:oid]) :bat[:oid]
+address GRPsubgroup31;
+command subgroupdone(b:bat[:any_1],g:bat[:oid],e:bat[:oid],h:bat[:lng])
:bat[:oid]
+address GRPsubgroup41;
+command
subgroupdone(b:bat[:any_1],s:bat[:oid],g:bat[:oid],e:bat[:oid],h:bat[:lng])
:bat[:oid]
+address GRPsubgroup51;
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list