Changeset: 322e6e2db062 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=322e6e2db062
Modified Files:
sql/backends/monet5/sql_assert.c
Branch: Jul2017
Log Message:
Prettify and deduplicate.
diffs (127 lines):
diff --git a/sql/backends/monet5/sql_assert.c b/sql/backends/monet5/sql_assert.c
--- a/sql/backends/monet5/sql_assert.c
+++ b/sql/backends/monet5/sql_assert.c
@@ -32,87 +32,64 @@
* raises an exception. An debugger dump is generated upon request
* to ease debugging.
*/
-str
-SQLassert(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
+static str
+do_SQLassert(int flg, const char *msg)
{
- bit *flg = getArgReference_bit(stk, pci, 1);
- str *msg = getArgReference_str(stk, pci, 2);
- (void) cntxt;
- (void) mb;
- if (*flg) {
+ if (flg) {
const char *sqlstate = "M0M29!";
- /* mdbDump(mb,stk,pci); */
- if (strlen(*msg) > 6 && (*msg)[5] == '!' && (('0' <= (*msg)[0]
&& (*msg)[0] <= '9') || ('A' <= (*msg)[0] && (*msg)[0] <= 'Z')) && (('0' <=
(*msg)[1] && (*msg)[1] <= '9') || ('A' <= (*msg)[1] && (*msg)[1] <= 'Z')) &&
- (('0' <= (*msg)[2] && (*msg)[2] <= '9') || ('A' <=
(*msg)[2] && (*msg)[2] <= 'Z')) && (('0' <= (*msg)[3] && (*msg)[3] <= '9') ||
('A' <= (*msg)[3] && (*msg)[3] <= 'Z')) && (('0' <= (*msg)[4] && (*msg)[4] <=
'9') ||
-
('A' <= (*msg)[4] && (*msg)[4] <= 'Z')))
+
+ if (strlen(msg) > 6 &&
+ msg[5] == '!' &&
+ (('0' <= msg[0] && msg[0] <= '9') ||
+ ('A' <= msg[0] && msg[0] <= 'Z')) &&
+ (('0' <= msg[1] && msg[1] <= '9') ||
+ ('A' <= msg[1] && msg[1] <= 'Z')) &&
+ (('0' <= msg[2] && msg[2] <= '9') ||
+ ('A' <= msg[2] && msg[2] <= 'Z')) &&
+ (('0' <= msg[3] && msg[3] <= '9') ||
+ ('A' <= msg[3] && msg[3] <= 'Z')) &&
+ (('0' <= msg[4] && msg[4] <= '9') ||
+ ('A' <= msg[4] && msg[4] <= 'Z')))
sqlstate = "";
- throw(SQL, "assert", "%s%s", sqlstate, *msg);
+ throw(SQL, "assert", "%s%s", sqlstate, msg);
}
return MAL_SUCCEED;
}
str
-SQLassertInt(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
+SQLassert(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
{
- int *flg = getArgReference_int(stk, pci, 1);
- str *msg = getArgReference_str(stk, pci, 2);
(void) cntxt;
(void) mb;
- if (*flg) {
- const char *sqlstate = "M0M29!";
- /* mdbDump(mb,stk,pci); */
- if (strlen(*msg) > 6 && (*msg)[5] == '!' && (('0' <= (*msg)[0]
&& (*msg)[0] <= '9') || ('A' <= (*msg)[0] && (*msg)[0] <= 'Z')) && (('0' <=
(*msg)[1] && (*msg)[1] <= '9') || ('A' <= (*msg)[1] && (*msg)[1] <= 'Z')) &&
- (('0' <= (*msg)[2] && (*msg)[2] <= '9') || ('A' <=
(*msg)[2] && (*msg)[2] <= 'Z')) && (('0' <= (*msg)[3] && (*msg)[3] <= '9') ||
('A' <= (*msg)[3] && (*msg)[3] <= 'Z')) && (('0' <= (*msg)[4] && (*msg)[4] <=
'9') ||
-
('A' <= (*msg)[4] && (*msg)[4] <= 'Z')))
- sqlstate = "";
- throw(SQL, "assert", "%s%s", sqlstate, *msg);
- }
- return MAL_SUCCEED;
+ return do_SQLassert(*getArgReference_bit(stk, pci, 1) != 0,
+ *getArgReference_str(stk, pci, 2));
+}
+
+str
+SQLassertInt(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
+{
+ (void) cntxt;
+ (void) mb;
+ return do_SQLassert(*getArgReference_int(stk, pci, 1) != 0,
+ *getArgReference_str(stk, pci, 2));
}
str
SQLassertLng(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
{
- lng *flg = getArgReference_lng(stk, pci, 1);
- str *msg = getArgReference_str(stk, pci, 2);
(void) cntxt;
(void) mb;
- if (*flg) {
- const char *sqlstate = "M0M29!";
- /* mdbDump(mb,stk,pci); */
- if (strlen(*msg) > 6 && (*msg)[5] == '!' && (('0' <= (*msg)[0]
&& (*msg)[0] <= '9') || ('A' <= (*msg)[0] && (*msg)[0] <= 'Z')) && (('0' <=
(*msg)[1] && (*msg)[1] <= '9') || ('A' <= (*msg)[1] && (*msg)[1] <= 'Z')) &&
- (('0' <= (*msg)[2] && (*msg)[2] <= '9') || ('A' <=
(*msg)[2] && (*msg)[2] <= 'Z')) && (('0' <= (*msg)[3] && (*msg)[3] <= '9') ||
('A' <= (*msg)[3] && (*msg)[3] <= 'Z')) && (('0' <= (*msg)[4] && (*msg)[4] <=
'9') ||
-
('A' <= (*msg)[4] && (*msg)[4] <= 'Z')))
- sqlstate = "";
- throw(SQL, "assert", "%s%s", sqlstate, *msg);
- }
- return MAL_SUCCEED;
+ return do_SQLassert(*getArgReference_lng(stk, pci, 1) != 0,
+ *getArgReference_str(stk, pci, 2));
}
#ifdef HAVE_HGE
str
-SQLassertHge(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci){
- hge *flg = getArgReference_hge(stk,pci, 1);
- str *msg = getArgReference_str(stk,pci, 2);
+SQLassertHge(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
+{
(void) cntxt;
- (void)mb;
- if (*flg){
- const char *sqlstate = "M0M29!";
- /* mdbDump(mb,stk,pci);*/
- if (strlen(*msg) > 6 && (*msg)[5] == '!' &&
- (('0' <= (*msg)[0] && (*msg)[0] <= '9') ||
- ('A' <= (*msg)[0] && (*msg)[0] <= 'Z')) &&
- (('0' <= (*msg)[1] && (*msg)[1] <= '9') ||
- ('A' <= (*msg)[1] && (*msg)[1] <= 'Z')) &&
- (('0' <= (*msg)[2] && (*msg)[2] <= '9') ||
- ('A' <= (*msg)[2] && (*msg)[2] <= 'Z')) &&
- (('0' <= (*msg)[3] && (*msg)[3] <= '9') ||
- ('A' <= (*msg)[3] && (*msg)[3] <= 'Z')) &&
- (('0' <= (*msg)[4] && (*msg)[4] <= '9') ||
- ('A' <= (*msg)[4] && (*msg)[4] <= 'Z')))
- sqlstate = "";
- throw(SQL, "assert", "%s%s", sqlstate, *msg);
- }
- return MAL_SUCCEED;
+ (void) mb;
+ return do_SQLassert(*getArgReference_hge(stk, pci, 1) != 0,
+ *getArgReference_str(stk, pci, 2));
}
#endif
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list