Changeset: 30e2dea9525c for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=30e2dea9525c
Modified Files:
clients/Tests/MAL-signatures.stable.out
clients/Tests/MAL-signatures.stable.out.int128
sql/backends/monet5/sql.c
sql/backends/monet5/sql.h
sql/backends/monet5/sql_round_impl.h
Branch: default
Log Message:
Added candidate list support for conversion functions from string to decimals
and second interval to decimals (although this one is not used anymore)
diffs (truncated from 710 to 300 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
@@ -3533,7 +3533,8 @@ stdout of test 'MAL-signatures` in direc
[ "batcalc", "bte", "command batcalc.bte(X_1:int, X_2:bat[:sht],
X_3:bat[:oid], X_4:int, X_5:int):bat[:bte] ", "batsht_dec2dec_cand_bte;",
"" ]
[ "batcalc", "bte", "command batcalc.bte(X_1:bat[:sht], X_2:int,
X_3:int):bat[:bte] ", "batsht_num2dec_bte;", "" ]
[ "batcalc", "bte", "command batcalc.bte(X_1:bat[:sht], X_2:bat[:oid],
X_3:int, X_4:int):bat[:bte] ", "batsht_num2dec_cand_bte;", "" ]
-[ "batcalc", "bte", "command batcalc.bte(X_1:bat[:str], X_2:int,
X_3:int):bat[:bte] ", "batstr_2dec_bte;", "" ]
+[ "batcalc", "bte", "pattern batcalc.bte(X_1:bat[:str], X_2:bat[:oid],
X_3:int, X_4:int):bat[:bte] ", "batstr_2dec_bte;", "" ]
+[ "batcalc", "bte", "pattern batcalc.bte(X_1:bat[:str], X_2:int,
X_3:int):bat[:bte] ", "batstr_2dec_bte;", "" ]
[ "batcalc", "bte_noerror", "pattern
batcalc.bte_noerror(X_1:bat[:bit]):bat[:bte] ", "CMDconvert_bte;",
"" ]
[ "batcalc", "bte_noerror", "pattern batcalc.bte_noerror(X_1:bat[:bit],
X_2:bat[:oid]):bat[:bte] ", "CMDconvert_bte;", "" ]
[ "batcalc", "bte_noerror", "pattern
batcalc.bte_noerror(X_1:bat[:bte]):bat[:bte] ", "CMDconvert_bte;",
"" ]
@@ -3790,16 +3791,22 @@ stdout of test 'MAL-signatures` in direc
[ "batcalc", "date", "command batcalc.date(X_1:bat[:str]):bat[:date] ",
"MTIMEdate_fromstr_bulk;", "" ]
[ "batcalc", "date", "command batcalc.date(X_1:bat[:timestamp]):bat[:date]
", "MTIMEtimestamp_extract_date_bulk;", "" ]
[ "batcalc", "date", "command batcalc.date(X_1:bat[:str]):bat[:date] ",
"batstr_2_date;", "" ]
+[ "batcalc", "date", "command batcalc.date(X_1:bat[:str],
X_2:bat[:oid]):bat[:date] ", "batstr_2_date_cand;", "" ]
[ "batcalc", "date", "pattern batcalc.date(X_1:bat[:oid]):bat[:date] ",
"nil_2_date;", "" ]
[ "batcalc", "daytime", "command
batcalc.daytime(X_1:bat[:daytime]):bat[:daytime] ",
"MTIMEdaytime_daytime_bulk;", "" ]
[ "batcalc", "daytime", "command
batcalc.daytime(X_1:bat[:lng]):bat[:daytime] ",
"MTIMEdaytime_fromseconds_bulk;", "" ]
[ "batcalc", "daytime", "command
batcalc.daytime(X_1:bat[:str]):bat[:daytime] ",
"MTIMEdaytime_fromstr_bulk;", "" ]
[ "batcalc", "daytime", "command
batcalc.daytime(X_1:bat[:timestamp]):bat[:daytime] ",
"MTIMEtimestamp_extract_daytime_bulk;", "" ]
[ "batcalc", "daytime", "command batcalc.daytime(X_1:bat[:str],
X_2:int):bat[:daytime] ", "batstr_2time_daytime;", "" ]
+[ "batcalc", "daytime", "command batcalc.daytime(X_1:bat[:str],
X_2:bat[:oid], X_3:int):bat[:daytime] ", "batstr_2time_daytime_cand;",
"" ]
+[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:daytime],
X_2:bat[:oid], X_3:int):bat[:daytime] ", "daytime_2time_daytime;", ""
]
[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:daytime],
X_2:int):bat[:daytime] ", "daytime_2time_daytime;", "" ]
[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:oid],
X_2:int):bat[:daytime] ", "nil_2time_daytime;", "" ]
+[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:lng],
X_2:bat[:oid], X_3:int):bat[:daytime] ", "second_interval_2_daytime;",
"" ]
[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:lng],
X_2:int):bat[:daytime] ", "second_interval_2_daytime;", "" ]
-[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:daytime],
X_2:int):bat[:daytime] ", "str_2time_daytimetz;", "" ]
+[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:daytime],
X_2:bat[:oid], X_3:int, X_4:int):bat[:daytime] ", "str_2time_daytimetz;", ""
]
+[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:daytime],
X_2:int, X_3:int):bat[:daytime] ", "str_2time_daytimetz;", "" ]
+[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:timestamp],
X_2:bat[:oid], X_3:int):bat[:daytime] ", "timestamp_2_daytime;", "" ]
[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:timestamp],
X_2:int):bat[:daytime] ", "timestamp_2_daytime;", "" ]
[ "batcalc", "dbl", "pattern batcalc.dbl(X_1:bat[:bit]):bat[:dbl] ",
"CMDconvertsignal_dbl;", "" ]
[ "batcalc", "dbl", "pattern batcalc.dbl(X_1:bat[:bit],
X_2:bat[:oid]):bat[:dbl] ", "CMDconvertsignal_dbl;", "" ]
@@ -4367,7 +4374,8 @@ stdout of test 'MAL-signatures` in direc
[ "batcalc", "int", "command batcalc.int(X_1:int, X_2:bat[:sht], X_3:int,
X_4:int):bat[:int] ", "batsht_dec2dec_int;", "" ]
[ "batcalc", "int", "command batcalc.int(X_1:bat[:sht], X_2:bat[:oid],
X_3:int, X_4:int):bat[:int] ", "batsht_num2dec_cand_int;", "" ]
[ "batcalc", "int", "command batcalc.int(X_1:bat[:sht], X_2:int,
X_3:int):bat[:int] ", "batsht_num2dec_int;", "" ]
-[ "batcalc", "int", "command batcalc.int(X_1:bat[:str], X_2:int,
X_3:int):bat[:int] ", "batstr_2dec_int;", "" ]
+[ "batcalc", "int", "pattern batcalc.int(X_1:bat[:str], X_2:bat[:oid],
X_3:int, X_4:int):bat[:int] ", "batstr_2dec_int;", "" ]
+[ "batcalc", "int", "pattern batcalc.int(X_1:bat[:str], X_2:int,
X_3:int):bat[:int] ", "batstr_2dec_int;", "" ]
[ "batcalc", "int_noerror", "pattern
batcalc.int_noerror(X_1:bat[:bit]):bat[:int] ", "CMDconvert_int;",
"" ]
[ "batcalc", "int_noerror", "pattern batcalc.int_noerror(X_1:bat[:bit],
X_2:bat[:oid]):bat[:int] ", "CMDconvert_int;", "" ]
[ "batcalc", "int_noerror", "pattern
batcalc.int_noerror(X_1:bat[:bte]):bat[:int] ", "CMDconvert_int;",
"" ]
@@ -4449,7 +4457,8 @@ stdout of test 'MAL-signatures` in direc
[ "batcalc", "lng", "command batcalc.lng(X_1:int, X_2:bat[:sht], X_3:int,
X_4:int):bat[:lng] ", "batsht_dec2dec_lng;", "" ]
[ "batcalc", "lng", "command batcalc.lng(X_1:bat[:sht], X_2:bat[:oid],
X_3:int, X_4:int):bat[:lng] ", "batsht_num2dec_cand_lng;", "" ]
[ "batcalc", "lng", "command batcalc.lng(X_1:bat[:sht], X_2:int,
X_3:int):bat[:lng] ", "batsht_num2dec_lng;", "" ]
-[ "batcalc", "lng", "command batcalc.lng(X_1:bat[:str], X_2:int,
X_3:int):bat[:lng] ", "batstr_2dec_lng;", "" ]
+[ "batcalc", "lng", "pattern batcalc.lng(X_1:bat[:str], X_2:bat[:oid],
X_3:int, X_4:int):bat[:lng] ", "batstr_2dec_lng;", "" ]
+[ "batcalc", "lng", "pattern batcalc.lng(X_1:bat[:str], X_2:int,
X_3:int):bat[:lng] ", "batstr_2dec_lng;", "" ]
[ "batcalc", "lng_noerror", "pattern
batcalc.lng_noerror(X_1:bat[:bit]):bat[:lng] ", "CMDconvert_lng;",
"" ]
[ "batcalc", "lng_noerror", "pattern batcalc.lng_noerror(X_1:bat[:bit],
X_2:bat[:oid]):bat[:lng] ", "CMDconvert_lng;", "" ]
[ "batcalc", "lng_noerror", "pattern
batcalc.lng_noerror(X_1:bat[:bte]):bat[:lng] ", "CMDconvert_lng;",
"" ]
@@ -5103,7 +5112,8 @@ stdout of test 'MAL-signatures` in direc
[ "batcalc", "sht", "command batcalc.sht(X_1:int, X_2:bat[:sht], X_3:int,
X_4:int):bat[:sht] ", "batsht_dec2dec_sht;", "" ]
[ "batcalc", "sht", "command batcalc.sht(X_1:bat[:sht], X_2:bat[:oid],
X_3:int, X_4:int):bat[:sht] ", "batsht_num2dec_cand_sht;", "" ]
[ "batcalc", "sht", "command batcalc.sht(X_1:bat[:sht], X_2:int,
X_3:int):bat[:sht] ", "batsht_num2dec_sht;", "" ]
-[ "batcalc", "sht", "command batcalc.sht(X_1:bat[:str], X_2:int,
X_3:int):bat[:sht] ", "batstr_2dec_sht;", "" ]
+[ "batcalc", "sht", "pattern batcalc.sht(X_1:bat[:str], X_2:bat[:oid],
X_3:int, X_4:int):bat[:sht] ", "batstr_2dec_sht;", "" ]
+[ "batcalc", "sht", "pattern batcalc.sht(X_1:bat[:str], X_2:int,
X_3:int):bat[:sht] ", "batstr_2dec_sht;", "" ]
[ "batcalc", "sht_noerror", "pattern
batcalc.sht_noerror(X_1:bat[:bit]):bat[:sht] ", "CMDconvert_sht;",
"" ]
[ "batcalc", "sht_noerror", "pattern batcalc.sht_noerror(X_1:bat[:bit],
X_2:bat[:oid]):bat[:sht] ", "CMDconvert_sht;", "" ]
[ "batcalc", "sht_noerror", "pattern
batcalc.sht_noerror(X_1:bat[:bte]):bat[:sht] ", "CMDconvert_sht;",
"" ]
@@ -5255,10 +5265,14 @@ stdout of test 'MAL-signatures` in direc
[ "batcalc", "timestamp", "command
batcalc.timestamp(X_1:bat[:str]):bat[:timestamp] ",
"MTIMEtimestamp_fromstr_bulk;", "" ]
[ "batcalc", "timestamp", "command
batcalc.timestamp(X_1:bat[:timestamp]):bat[:timestamp] ",
"MTIMEtimestamp_timestamp_bulk;", "" ]
[ "batcalc", "timestamp", "command batcalc.timestamp(X_1:bat[:str],
X_2:int):bat[:timestamp] ", "batstr_2time_timestamp;", "" ]
+[ "batcalc", "timestamp", "command batcalc.timestamp(X_1:bat[:str],
X_2:bat[:oid], X_3:int):bat[:timestamp] ", "batstr_2time_timestamp_cand;",
"" ]
[ "batcalc", "timestamp", "command batcalc.timestamp(X_1:bat[:str],
X_2:int, X_3:int):bat[:timestamp] ", "batstr_2time_timestamptz;", "" ]
+[ "batcalc", "timestamp", "command batcalc.timestamp(X_1:bat[:str],
X_2:bat[:oid], X_3:int, X_4:int):bat[:timestamp] ",
"batstr_2time_timestamptz_cand;", "" ]
+[ "batcalc", "timestamp", "pattern batcalc.timestamp(X_1:bat[:date],
X_2:bat[:oid], X_3:int):bat[:timestamp] ", "date_2_timestamp;", "" ]
[ "batcalc", "timestamp", "pattern batcalc.timestamp(X_1:bat[:date],
X_2:int):bat[:timestamp] ", "date_2_timestamp;", "" ]
[ "batcalc", "timestamp", "pattern batcalc.timestamp(X_1:bat[:oid],
X_2:int):bat[:timestamp] ", "nil_2time_timestamp;", "" ]
[ "batcalc", "timestamp", "pattern batcalc.timestamp(X_1:bat[:oid],
X_2:int, X_3:bat[:BAT]):bat[:timestamp] ", "nil_2time_timestamp;", "" ]
+[ "batcalc", "timestamp", "pattern batcalc.timestamp(X_1:bat[:timestamp],
X_2:bat[:oid], X_3:int):bat[:timestamp] ", "timestamp_2time_timestamp;",
"" ]
[ "batcalc", "timestamp", "pattern batcalc.timestamp(X_1:bat[:timestamp],
X_2:int):bat[:timestamp] ", "timestamp_2time_timestamp;", "" ]
[ "batcalc", "wkb", "command batcalc.wkb(X_1:bat[:wkb], X_2:int,
X_3:int):bat[:wkb] ", "geom_2_geom_bat;", "" ]
[ "batcalc", "xml", "command batcalc.xml(X_1:bat[:str]):bat[:xml] ",
"BATXMLstr2xml;", "" ]
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
@@ -5001,7 +5001,8 @@ stdout of test 'MAL-signatures` in direc
[ "batcalc", "bte", "command batcalc.bte(X_1:int, X_2:bat[:sht],
X_3:bat[:oid], X_4:int, X_5:int):bat[:bte] ", "batsht_dec2dec_cand_bte;",
"" ]
[ "batcalc", "bte", "command batcalc.bte(X_1:bat[:sht], X_2:int,
X_3:int):bat[:bte] ", "batsht_num2dec_bte;", "" ]
[ "batcalc", "bte", "command batcalc.bte(X_1:bat[:sht], X_2:bat[:oid],
X_3:int, X_4:int):bat[:bte] ", "batsht_num2dec_cand_bte;", "" ]
-[ "batcalc", "bte", "command batcalc.bte(X_1:bat[:str], X_2:int,
X_3:int):bat[:bte] ", "batstr_2dec_bte;", "" ]
+[ "batcalc", "bte", "pattern batcalc.bte(X_1:bat[:str], X_2:bat[:oid],
X_3:int, X_4:int):bat[:bte] ", "batstr_2dec_bte;", "" ]
+[ "batcalc", "bte", "pattern batcalc.bte(X_1:bat[:str], X_2:int,
X_3:int):bat[:bte] ", "batstr_2dec_bte;", "" ]
[ "batcalc", "bte_noerror", "pattern
batcalc.bte_noerror(X_1:bat[:bit]):bat[:bte] ", "CMDconvert_bte;",
"" ]
[ "batcalc", "bte_noerror", "pattern batcalc.bte_noerror(X_1:bat[:bit],
X_2:bat[:oid]):bat[:bte] ", "CMDconvert_bte;", "" ]
[ "batcalc", "bte_noerror", "pattern
batcalc.bte_noerror(X_1:bat[:bte]):bat[:bte] ", "CMDconvert_bte;",
"" ]
@@ -5338,16 +5339,22 @@ stdout of test 'MAL-signatures` in direc
[ "batcalc", "date", "command batcalc.date(X_1:bat[:str]):bat[:date] ",
"MTIMEdate_fromstr_bulk;", "" ]
[ "batcalc", "date", "command batcalc.date(X_1:bat[:timestamp]):bat[:date]
", "MTIMEtimestamp_extract_date_bulk;", "" ]
[ "batcalc", "date", "command batcalc.date(X_1:bat[:str]):bat[:date] ",
"batstr_2_date;", "" ]
+[ "batcalc", "date", "command batcalc.date(X_1:bat[:str],
X_2:bat[:oid]):bat[:date] ", "batstr_2_date_cand;", "" ]
[ "batcalc", "date", "pattern batcalc.date(X_1:bat[:oid]):bat[:date] ",
"nil_2_date;", "" ]
[ "batcalc", "daytime", "command
batcalc.daytime(X_1:bat[:daytime]):bat[:daytime] ",
"MTIMEdaytime_daytime_bulk;", "" ]
[ "batcalc", "daytime", "command
batcalc.daytime(X_1:bat[:lng]):bat[:daytime] ",
"MTIMEdaytime_fromseconds_bulk;", "" ]
[ "batcalc", "daytime", "command
batcalc.daytime(X_1:bat[:str]):bat[:daytime] ",
"MTIMEdaytime_fromstr_bulk;", "" ]
[ "batcalc", "daytime", "command
batcalc.daytime(X_1:bat[:timestamp]):bat[:daytime] ",
"MTIMEtimestamp_extract_daytime_bulk;", "" ]
[ "batcalc", "daytime", "command batcalc.daytime(X_1:bat[:str],
X_2:int):bat[:daytime] ", "batstr_2time_daytime;", "" ]
+[ "batcalc", "daytime", "command batcalc.daytime(X_1:bat[:str],
X_2:bat[:oid], X_3:int):bat[:daytime] ", "batstr_2time_daytime_cand;",
"" ]
+[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:daytime],
X_2:bat[:oid], X_3:int):bat[:daytime] ", "daytime_2time_daytime;", ""
]
[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:daytime],
X_2:int):bat[:daytime] ", "daytime_2time_daytime;", "" ]
[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:oid],
X_2:int):bat[:daytime] ", "nil_2time_daytime;", "" ]
+[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:lng],
X_2:bat[:oid], X_3:int):bat[:daytime] ", "second_interval_2_daytime;",
"" ]
[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:lng],
X_2:int):bat[:daytime] ", "second_interval_2_daytime;", "" ]
-[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:daytime],
X_2:int):bat[:daytime] ", "str_2time_daytimetz;", "" ]
+[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:daytime],
X_2:bat[:oid], X_3:int, X_4:int):bat[:daytime] ", "str_2time_daytimetz;", ""
]
+[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:daytime],
X_2:int, X_3:int):bat[:daytime] ", "str_2time_daytimetz;", "" ]
+[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:timestamp],
X_2:bat[:oid], X_3:int):bat[:daytime] ", "timestamp_2_daytime;", "" ]
[ "batcalc", "daytime", "pattern batcalc.daytime(X_1:bat[:timestamp],
X_2:int):bat[:daytime] ", "timestamp_2_daytime;", "" ]
[ "batcalc", "dbl", "pattern batcalc.dbl(X_1:bat[:bit]):bat[:dbl] ",
"CMDconvertsignal_dbl;", "" ]
[ "batcalc", "dbl", "pattern batcalc.dbl(X_1:bat[:bit],
X_2:bat[:oid]):bat[:dbl] ", "CMDconvertsignal_dbl;", "" ]
@@ -6146,7 +6153,8 @@ stdout of test 'MAL-signatures` in direc
[ "batcalc", "hge", "command batcalc.hge(X_1:int, X_2:bat[:sht], X_3:int,
X_4:int):bat[:hge] ", "batsht_dec2dec_hge;", "" ]
[ "batcalc", "hge", "command batcalc.hge(X_1:bat[:sht], X_2:bat[:oid],
X_3:int, X_4:int):bat[:hge] ", "batsht_num2dec_cand_hge;", "" ]
[ "batcalc", "hge", "command batcalc.hge(X_1:bat[:sht], X_2:int,
X_3:int):bat[:hge] ", "batsht_num2dec_hge;", "" ]
-[ "batcalc", "hge", "command batcalc.hge(X_1:bat[:str], X_2:int,
X_3:int):bat[:hge] ", "batstr_2dec_hge;", "" ]
+[ "batcalc", "hge", "pattern batcalc.hge(X_1:bat[:str], X_2:bat[:oid],
X_3:int, X_4:int):bat[:hge] ", "batstr_2dec_hge;", "" ]
+[ "batcalc", "hge", "pattern batcalc.hge(X_1:bat[:str], X_2:int,
X_3:int):bat[:hge] ", "batstr_2dec_hge;", "" ]
[ "batcalc", "hge_noerror", "pattern
batcalc.hge_noerror(X_1:bat[:bit]):bat[:hge] ", "CMDconvert_hge;",
"" ]
[ "batcalc", "hge_noerror", "pattern batcalc.hge_noerror(X_1:bat[:bit],
X_2:bat[:oid]):bat[:hge] ", "CMDconvert_hge;", "" ]
[ "batcalc", "hge_noerror", "pattern
batcalc.hge_noerror(X_1:bat[:bte]):bat[:hge] ", "CMDconvert_hge;",
"" ]
@@ -6236,7 +6244,8 @@ stdout of test 'MAL-signatures` in direc
[ "batcalc", "int", "command batcalc.int(X_1:int, X_2:bat[:sht], X_3:int,
X_4:int):bat[:int] ", "batsht_dec2dec_int;", "" ]
[ "batcalc", "int", "command batcalc.int(X_1:bat[:sht], X_2:bat[:oid],
X_3:int, X_4:int):bat[:int] ", "batsht_num2dec_cand_int;", "" ]
[ "batcalc", "int", "command batcalc.int(X_1:bat[:sht], X_2:int,
X_3:int):bat[:int] ", "batsht_num2dec_int;", "" ]
-[ "batcalc", "int", "command batcalc.int(X_1:bat[:str], X_2:int,
X_3:int):bat[:int] ", "batstr_2dec_int;", "" ]
+[ "batcalc", "int", "pattern batcalc.int(X_1:bat[:str], X_2:bat[:oid],
X_3:int, X_4:int):bat[:int] ", "batstr_2dec_int;", "" ]
+[ "batcalc", "int", "pattern batcalc.int(X_1:bat[:str], X_2:int,
X_3:int):bat[:int] ", "batstr_2dec_int;", "" ]
[ "batcalc", "int_noerror", "pattern
batcalc.int_noerror(X_1:bat[:bit]):bat[:int] ", "CMDconvert_int;",
"" ]
[ "batcalc", "int_noerror", "pattern batcalc.int_noerror(X_1:bat[:bit],
X_2:bat[:oid]):bat[:int] ", "CMDconvert_int;", "" ]
[ "batcalc", "int_noerror", "pattern
batcalc.int_noerror(X_1:bat[:bte]):bat[:int] ", "CMDconvert_int;",
"" ]
@@ -6332,7 +6341,8 @@ stdout of test 'MAL-signatures` in direc
[ "batcalc", "lng", "command batcalc.lng(X_1:int, X_2:bat[:sht], X_3:int,
X_4:int):bat[:lng] ", "batsht_dec2dec_lng;", "" ]
[ "batcalc", "lng", "command batcalc.lng(X_1:bat[:sht], X_2:bat[:oid],
X_3:int, X_4:int):bat[:lng] ", "batsht_num2dec_cand_lng;", "" ]
[ "batcalc", "lng", "command batcalc.lng(X_1:bat[:sht], X_2:int,
X_3:int):bat[:lng] ", "batsht_num2dec_lng;", "" ]
-[ "batcalc", "lng", "command batcalc.lng(X_1:bat[:str], X_2:int,
X_3:int):bat[:lng] ", "batstr_2dec_lng;", "" ]
+[ "batcalc", "lng", "pattern batcalc.lng(X_1:bat[:str], X_2:bat[:oid],
X_3:int, X_4:int):bat[:lng] ", "batstr_2dec_lng;", "" ]
+[ "batcalc", "lng", "pattern batcalc.lng(X_1:bat[:str], X_2:int,
X_3:int):bat[:lng] ", "batstr_2dec_lng;", "" ]
[ "batcalc", "lng_noerror", "pattern
batcalc.lng_noerror(X_1:bat[:bit]):bat[:lng] ", "CMDconvert_lng;",
"" ]
[ "batcalc", "lng_noerror", "pattern batcalc.lng_noerror(X_1:bat[:bit],
X_2:bat[:oid]):bat[:lng] ", "CMDconvert_lng;", "" ]
[ "batcalc", "lng_noerror", "pattern
batcalc.lng_noerror(X_1:bat[:bte]):bat[:lng] ", "CMDconvert_lng;",
"" ]
@@ -6818,12 +6828,17 @@ stdout of test 'MAL-signatures` in direc
[ "batcalc", "mod_noerror", "pattern batcalc.mod_noerror(X_1:sht,
X_2:bat[:sht], X_3:bat[:oid]):bat[:int] ", "CMDbatMOD;", "" ]
[ "batcalc", "mod_noerror", "pattern batcalc.mod_noerror(X_1:sht,
X_2:bat[:sht], X_3:bat[:oid]):bat[:lng] ", "CMDbatMOD;", "" ]
[ "batcalc", "mod_noerror", "pattern batcalc.mod_noerror(X_1:sht,
X_2:bat[:sht], X_3:bat[:oid]):bat[:sht] ", "CMDbatMOD;", "" ]
+[ "batcalc", "month_interval", "pattern
batcalc.month_interval(X_1:bat[:bte], X_2:bat[:oid], X_3:int,
X_4:int):bat[:int] ", "month_interval;", "" ]
[ "batcalc", "month_interval", "pattern
batcalc.month_interval(X_1:bat[:bte], X_2:int, X_3:int):bat[:int] ",
"month_interval;", "" ]
[ "batcalc", "month_interval", "pattern
batcalc.month_interval(X_1:bat[:hge], X_2:bat[:oid], X_3:int,
X_4:int):bat[:int] ", "month_interval;", "" ]
[ "batcalc", "month_interval", "pattern
batcalc.month_interval(X_1:bat[:hge], X_2:int, X_3:int):bat[:int] ",
"month_interval;", "" ]
+[ "batcalc", "month_interval", "pattern
batcalc.month_interval(X_1:bat[:int], X_2:bat[:oid], X_3:int,
X_4:int):bat[:int] ", "month_interval;", "" ]
[ "batcalc", "month_interval", "pattern
batcalc.month_interval(X_1:bat[:int], X_2:int, X_3:int):bat[:int] ",
"month_interval;", "" ]
+[ "batcalc", "month_interval", "pattern
batcalc.month_interval(X_1:bat[:lng], X_2:bat[:oid], X_3:int,
X_4:int):bat[:int] ", "month_interval;", "" ]
[ "batcalc", "month_interval", "pattern
batcalc.month_interval(X_1:bat[:lng], X_2:int, X_3:int):bat[:int] ",
"month_interval;", "" ]
+[ "batcalc", "month_interval", "pattern
batcalc.month_interval(X_1:bat[:sht], X_2:bat[:oid], X_3:int,
X_4:int):bat[:int] ", "month_interval;", "" ]
[ "batcalc", "month_interval", "pattern
batcalc.month_interval(X_1:bat[:sht], X_2:int, X_3:int):bat[:int] ",
"month_interval;", "" ]
+[ "batcalc", "month_interval", "pattern
batcalc.month_interval(X_1:bat[:str], X_2:bat[:oid], X_3:int,
X_4:int):bat[:int] ", "month_interval_str;", "" ]
[ "batcalc", "month_interval", "pattern
batcalc.month_interval(X_1:bat[:str], X_2:int, X_3:int):bat[:int] ",
"month_interval_str;", "" ]
[ "batcalc", "mul_noerror", "pattern batcalc.mul_noerror(X_1:bat[:bte],
X_2:bat[:bte], X_3:bat[:oid], X_4:bat[:oid]):bat[:bte] ", "CMDbatMUL;", ""
]
[ "batcalc", "mul_noerror", "pattern batcalc.mul_noerror(X_1:bat[:bte],
X_2:bat[:dbl], X_3:bat[:oid], X_4:bat[:oid]):bat[:dbl] ", "CMDbatMUL;", ""
]
@@ -7227,20 +7242,30 @@ stdout of test 'MAL-signatures` in direc
[ "batcalc", "rsh_noerror", "pattern batcalc.rsh_noerror(X_1:sht,
X_2:bat[:lng], X_3:bat[:oid]):bat[:sht] ", "CMDbatRSH;", "" ]
[ "batcalc", "rsh_noerror", "pattern batcalc.rsh_noerror(X_1:sht,
X_2:bat[:sht]):bat[:sht] ", "CMDbatRSH;", "" ]
[ "batcalc", "rsh_noerror", "pattern batcalc.rsh_noerror(X_1:sht,
X_2:bat[:sht], X_3:bat[:oid]):bat[:sht] ", "CMDbatRSH;", "" ]
-[ "batcalc", "second_interval", "command
batcalc.second_interval(X_1:int, X_2:bat[:bte], X_3:int, X_4:int):bat[:lng] ",
"bte_batdec2second_interval;", "" ]
-[ "batcalc", "second_interval", "command
batcalc.second_interval(X_1:int, X_2:bat[:hge], X_3:bat[:oid], X_4:int,
X_5:int):bat[:lng] ", "hge_batdec2second_interval;", "" ]
+[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:int, X_2:bat[:bte], X_3:bat[:oid], X_4:int,
X_5:int):bat[:lng] ", "bte_batdec2second_interval;", "" ]
+[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:int, X_2:bat[:bte], X_3:int, X_4:int):bat[:lng] ",
"bte_batdec2second_interval;", "" ]
[ "batcalc", "second_interval", "command
batcalc.second_interval(X_1:int, X_2:bat[:hge], X_3:int, X_4:int):bat[:lng] ",
"hge_batdec2second_interval;", "" ]
-[ "batcalc", "second_interval", "command
batcalc.second_interval(X_1:int, X_2:bat[:int], X_3:int, X_4:int):bat[:lng] ",
"int_batdec2second_interval;", "" ]
-[ "batcalc", "second_interval", "command
batcalc.second_interval(X_1:int, X_2:bat[:lng], X_3:int, X_4:int):bat[:lng] ",
"lng_batdec2second_interval;", "" ]
+[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:int, X_2:bat[:hge], X_3:bat[:oid], X_4:int,
X_5:int):bat[:lng] ", "hge_batdec2second_interval;", "" ]
+[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:int, X_2:bat[:int], X_3:bat[:oid], X_4:int,
X_5:int):bat[:lng] ", "int_batdec2second_interval;", "" ]
+[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:int, X_2:bat[:int], X_3:int, X_4:int):bat[:lng] ",
"int_batdec2second_interval;", "" ]
+[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:int, X_2:bat[:lng], X_3:bat[:oid], X_4:int,
X_5:int):bat[:lng] ", "lng_batdec2second_interval;", "" ]
+[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:int, X_2:bat[:lng], X_3:int, X_4:int):bat[:lng] ",
"lng_batdec2second_interval;", "" ]
+[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:bat[:bte], X_2:bat[:oid], X_3:int,
X_4:int):bat[:lng] ", "second_interval;", "" ]
[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:bat[:bte], X_2:int, X_3:int):bat[:lng] ",
"second_interval;", "" ]
[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:bat[:hge], X_2:bat[:oid], X_3:int,
X_4:int):bat[:lng] ", "second_interval;", "" ]
[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:bat[:hge], X_2:int, X_3:int):bat[:lng] ",
"second_interval;", "" ]
+[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:bat[:int], X_2:bat[:oid], X_3:int,
X_4:int):bat[:lng] ", "second_interval;", "" ]
[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:bat[:int], X_2:int, X_3:int):bat[:lng] ",
"second_interval;", "" ]
+[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:bat[:lng], X_2:bat[:oid], X_3:int,
X_4:int):bat[:lng] ", "second_interval;", "" ]
[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:bat[:lng], X_2:int, X_3:int):bat[:lng] ",
"second_interval;", "" ]
+[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:bat[:sht], X_2:bat[:oid], X_3:int,
X_4:int):bat[:lng] ", "second_interval;", "" ]
[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:bat[:sht], X_2:int, X_3:int):bat[:lng] ",
"second_interval;", "" ]
+[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:bat[:daytime], X_2:bat[:oid], X_3:int,
X_4:int):bat[:lng] ", "second_interval_daytime;", "" ]
[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:bat[:daytime], X_2:int, X_3:int):bat[:lng] ",
"second_interval_daytime;", "" ]
+[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:bat[:str], X_2:bat[:oid], X_3:int,
X_4:int):bat[:lng] ", "second_interval_str;", "" ]
[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:bat[:str], X_2:int, X_3:int):bat[:lng] ",
"second_interval_str;", "" ]
-[ "batcalc", "second_interval", "command
batcalc.second_interval(X_1:int, X_2:bat[:sht], X_3:int, X_4:int):bat[:lng] ",
"sht_batdec2second_interval;", "" ]
+[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:int, X_2:bat[:sht], X_3:bat[:oid], X_4:int,
X_5:int):bat[:lng] ", "sht_batdec2second_interval;", "" ]
+[ "batcalc", "second_interval", "pattern
batcalc.second_interval(X_1:int, X_2:bat[:sht], X_3:int, X_4:int):bat[:lng] ",
"sht_batdec2second_interval;", "" ]
[ "batcalc", "sht", "pattern batcalc.sht(X_1:bat[:bit]):bat[:sht] ",
"CMDconvertsignal_sht;", "" ]
[ "batcalc", "sht", "pattern batcalc.sht(X_1:bat[:bit],
X_2:bat[:oid]):bat[:sht] ", "CMDconvertsignal_sht;", "" ]
[ "batcalc", "sht", "pattern batcalc.sht(X_1:bat[:bte]):bat[:sht] ",
"CMDconvertsignal_sht;", "" ]
@@ -7298,7 +7323,8 @@ stdout of test 'MAL-signatures` in direc
[ "batcalc", "sht", "command batcalc.sht(X_1:int, X_2:bat[:sht], X_3:int,
X_4:int):bat[:sht] ", "batsht_dec2dec_sht;", "" ]
[ "batcalc", "sht", "command batcalc.sht(X_1:bat[:sht], X_2:bat[:oid],
X_3:int, X_4:int):bat[:sht] ", "batsht_num2dec_cand_sht;", "" ]
[ "batcalc", "sht", "command batcalc.sht(X_1:bat[:sht], X_2:int,
X_3:int):bat[:sht] ", "batsht_num2dec_sht;", "" ]
-[ "batcalc", "sht", "command batcalc.sht(X_1:bat[:str], X_2:int,
X_3:int):bat[:sht] ", "batstr_2dec_sht;", "" ]
+[ "batcalc", "sht", "pattern batcalc.sht(X_1:bat[:str], X_2:bat[:oid],
X_3:int, X_4:int):bat[:sht] ", "batstr_2dec_sht;", "" ]
+[ "batcalc", "sht", "pattern batcalc.sht(X_1:bat[:str], X_2:int,
X_3:int):bat[:sht] ", "batstr_2dec_sht;", "" ]
[ "batcalc", "sht_noerror", "pattern
batcalc.sht_noerror(X_1:bat[:bit]):bat[:sht] ", "CMDconvert_sht;",
"" ]
[ "batcalc", "sht_noerror", "pattern batcalc.sht_noerror(X_1:bat[:bit],
X_2:bat[:oid]):bat[:sht] ", "CMDconvert_sht;", "" ]
[ "batcalc", "sht_noerror", "pattern
batcalc.sht_noerror(X_1:bat[:bte]):bat[:sht] ", "CMDconvert_sht;",
"" ]
@@ -7493,10 +7519,14 @@ stdout of test 'MAL-signatures` in direc
[ "batcalc", "timestamp", "command
batcalc.timestamp(X_1:bat[:str]):bat[:timestamp] ",
"MTIMEtimestamp_fromstr_bulk;", "" ]
[ "batcalc", "timestamp", "command
batcalc.timestamp(X_1:bat[:timestamp]):bat[:timestamp] ",
"MTIMEtimestamp_timestamp_bulk;", "" ]
[ "batcalc", "timestamp", "command batcalc.timestamp(X_1:bat[:str],
X_2:int):bat[:timestamp] ", "batstr_2time_timestamp;", "" ]
+[ "batcalc", "timestamp", "command batcalc.timestamp(X_1:bat[:str],
X_2:bat[:oid], X_3:int):bat[:timestamp] ", "batstr_2time_timestamp_cand;",
"" ]
[ "batcalc", "timestamp", "command batcalc.timestamp(X_1:bat[:str],
X_2:int, X_3:int):bat[:timestamp] ", "batstr_2time_timestamptz;", "" ]
+[ "batcalc", "timestamp", "command batcalc.timestamp(X_1:bat[:str],
X_2:bat[:oid], X_3:int, X_4:int):bat[:timestamp] ",
"batstr_2time_timestamptz_cand;", "" ]
+[ "batcalc", "timestamp", "pattern batcalc.timestamp(X_1:bat[:date],
X_2:bat[:oid], X_3:int):bat[:timestamp] ", "date_2_timestamp;", "" ]
[ "batcalc", "timestamp", "pattern batcalc.timestamp(X_1:bat[:date],
X_2:int):bat[:timestamp] ", "date_2_timestamp;", "" ]
[ "batcalc", "timestamp", "pattern batcalc.timestamp(X_1:bat[:oid],
X_2:int):bat[:timestamp] ", "nil_2time_timestamp;", "" ]
[ "batcalc", "timestamp", "pattern batcalc.timestamp(X_1:bat[:oid],
X_2:int, X_3:bat[:BAT]):bat[:timestamp] ", "nil_2time_timestamp;", "" ]
+[ "batcalc", "timestamp", "pattern batcalc.timestamp(X_1:bat[:timestamp],
X_2:bat[:oid], X_3:int):bat[:timestamp] ", "timestamp_2time_timestamp;",
"" ]
[ "batcalc", "timestamp", "pattern batcalc.timestamp(X_1:bat[:timestamp],
X_2:int):bat[:timestamp] ", "timestamp_2time_timestamp;", "" ]
[ "batcalc", "wkb", "command batcalc.wkb(X_1:bat[:wkb], X_2:int,
X_3:int):bat[:wkb] ", "geom_2_geom_bat;", "" ]
[ "batcalc", "xml", "command batcalc.xml(X_1:bat[:str]):bat[:xml] ",
"BATXMLstr2xml;", "" ]
diff --git a/sql/backends/monet5/sql.c b/sql/backends/monet5/sql.c
--- a/sql/backends/monet5/sql.c
+++ b/sql/backends/monet5/sql.c
@@ -5612,25 +5612,29 @@ static mel_func sql_init_funcs[] = {
command("sql", "round", bte_round_wrap, false, "round off the decimal v(d,s)
to r digits behind the dot (if r < 0, before the dot)", args(1,5,
arg("",bte),arg("v",bte),arg("d",int),arg("s",int),arg("r",bte))),
command("batsql", "round", bte_bat_round_wrap, false, "round off the decimal
v(d,s) to r digits behind the dot (if r < 0, before the dot)", args(1,5,
batarg("",bte),batarg("v",bte),arg("d",int),arg("s",int),arg("r",bte))),
command("calc", "second_interval", bte_dec2second_interval, false, "cast bte
decimal to a second_interval", args(1,5,
arg("",lng),arg("sc",int),arg("v",bte),arg("ek",int),arg("sk",int))),
- command("batcalc", "second_interval", bte_batdec2second_interval, false,
"cast bte decimal to a second_interval", args(1,5,
batarg("",lng),arg("sc",int),batarg("v",bte),arg("ek",int),arg("sk",int))),
+ pattern("batcalc", "second_interval", bte_batdec2second_interval, false,
"cast bte decimal to a second_interval", args(1,5,
batarg("",lng),arg("sc",int),batarg("v",bte),arg("ek",int),arg("sk",int))),
+ pattern("batcalc", "second_interval", bte_batdec2second_interval, false,
"cast bte decimal to a second_interval", args(1,6,
batarg("",lng),arg("sc",int),batarg("v",bte),batarg("s",oid),arg("ek",int),arg("sk",int))),
command("sql", "dec_round", sht_dec_round_wrap, false, "round off the value v
to nearests multiple of r", args(1,3, arg("",sht),arg("v",sht),arg("r",sht))),
command("batsql", "dec_round", sht_bat_dec_round_wrap, false, "round off the
value v to nearests multiple of r", args(1,3,
batarg("",sht),batarg("v",sht),arg("r",sht))),
command("sql", "round", sht_round_wrap, false, "round off the decimal v(d,s)
to r digits behind the dot (if r < 0, before the dot)", args(1,5,
arg("",sht),arg("v",sht),arg("d",int),arg("s",int),arg("r",bte))),
command("batsql", "round", sht_bat_round_wrap, false, "round off the decimal
v(d,s) to r digits behind the dot (if r < 0, before the dot)", args(1,5,
batarg("",sht),batarg("v",sht),arg("d",int),arg("s",int),arg("r",bte))),
command("calc", "second_interval", sht_dec2second_interval, false, "cast sht
decimal to a second_interval", args(1,5,
arg("",lng),arg("sc",int),arg("v",sht),arg("ek",int),arg("sk",int))),
- command("batcalc", "second_interval", sht_batdec2second_interval, false,
"cast sht decimal to a second_interval", args(1,5,
batarg("",lng),arg("sc",int),batarg("v",sht),arg("ek",int),arg("sk",int))),
+ pattern("batcalc", "second_interval", sht_batdec2second_interval, false,
"cast sht decimal to a second_interval", args(1,5,
batarg("",lng),arg("sc",int),batarg("v",sht),arg("ek",int),arg("sk",int))),
+ pattern("batcalc", "second_interval", sht_batdec2second_interval, false,
"cast sht decimal to a second_interval", args(1,6,
batarg("",lng),arg("sc",int),batarg("v",sht),batarg("s",oid),arg("ek",int),arg("sk",int))),
command("sql", "dec_round", int_dec_round_wrap, false, "round off the value v
to nearests multiple of r", args(1,3, arg("",int),arg("v",int),arg("r",int))),
command("batsql", "dec_round", int_bat_dec_round_wrap, false, "round off the
value v to nearests multiple of r", args(1,3,
batarg("",int),batarg("v",int),arg("r",int))),
command("sql", "round", int_round_wrap, false, "round off the decimal v(d,s)
to r digits behind the dot (if r < 0, before the dot)", args(1,5,
arg("",int),arg("v",int),arg("d",int),arg("s",int),arg("r",bte))),
command("batsql", "round", int_bat_round_wrap, false, "round off the decimal
v(d,s) to r digits behind the dot (if r < 0, before the dot)", args(1,5,
batarg("",int),batarg("v",int),arg("d",int),arg("s",int),arg("r",bte))),
command("calc", "second_interval", int_dec2second_interval, false, "cast int
decimal to a second_interval", args(1,5,
arg("",lng),arg("sc",int),arg("v",int),arg("ek",int),arg("sk",int))),
- command("batcalc", "second_interval", int_batdec2second_interval, false,
"cast int decimal to a second_interval", args(1,5,
batarg("",lng),arg("sc",int),batarg("v",int),arg("ek",int),arg("sk",int))),
+ pattern("batcalc", "second_interval", int_batdec2second_interval, false,
"cast int decimal to a second_interval", args(1,5,
batarg("",lng),arg("sc",int),batarg("v",int),arg("ek",int),arg("sk",int))),
+ pattern("batcalc", "second_interval", int_batdec2second_interval, false,
"cast int decimal to a second_interval", args(1,6,
batarg("",lng),arg("sc",int),batarg("v",int),batarg("s",oid),arg("ek",int),arg("sk",int))),
command("sql", "dec_round", lng_dec_round_wrap, false, "round off the value v
to nearests multiple of r", args(1,3, arg("",lng),arg("v",lng),arg("r",lng))),
command("batsql", "dec_round", lng_bat_dec_round_wrap, false, "round off the
value v to nearests multiple of r", args(1,3,
batarg("",lng),batarg("v",lng),arg("r",lng))),
command("sql", "round", lng_round_wrap, false, "round off the decimal v(d,s)
to r digits behind the dot (if r < 0, before the dot)", args(1,5,
arg("",lng),arg("v",lng),arg("d",int),arg("s",int),arg("r",bte))),
command("batsql", "round", lng_bat_round_wrap, false, "round off the decimal
v(d,s) to r digits behind the dot (if r < 0, before the dot)", args(1,5,
batarg("",lng),batarg("v",lng),arg("d",int),arg("s",int),arg("r",bte))),
command("calc", "second_interval", lng_dec2second_interval, false, "cast lng
decimal to a second_interval", args(1,5,
arg("",lng),arg("sc",int),arg("v",lng),arg("ek",int),arg("sk",int))),
- command("batcalc", "second_interval", lng_batdec2second_interval, false,
"cast lng decimal to a second_interval", args(1,5,
batarg("",lng),arg("sc",int),batarg("v",lng),arg("ek",int),arg("sk",int))),
+ pattern("batcalc", "second_interval", lng_batdec2second_interval, false,
"cast lng decimal to a second_interval", args(1,5,
batarg("",lng),arg("sc",int),batarg("v",lng),arg("ek",int),arg("sk",int))),
+ pattern("batcalc", "second_interval", lng_batdec2second_interval, false,
"cast lng decimal to a second_interval", args(1,6,
batarg("",lng),arg("sc",int),batarg("v",lng),batarg("s",oid),arg("ek",int),arg("sk",int))),
command("sql", "dec_round", flt_dec_round_wrap, false, "round off the value v
to nearests multiple of r", args(1,3, arg("",flt),arg("v",flt),arg("r",flt))),
command("batsql", "dec_round", flt_bat_dec_round_wrap, false, "round off the
value v to nearests multiple of r", args(1,3,
batarg("",flt),batarg("v",flt),arg("r",flt))),
command("sql", "round", flt_round_wrap, false, "round off the floating point
v to r digits behind the dot (if r < 0, before the dot)", args(1,3,
arg("",flt),arg("v",flt),arg("r",bte))),
@@ -5647,19 +5651,23 @@ static mel_func sql_init_funcs[] = {
command("calc", "bte", nil_2dec_bte, false, "cast to dec(bte) and check for
overflow", args(1,4,
arg("",bte),arg("v",void),arg("digits",int),arg("scale",int))),
command("batcalc", "bte", batnil_2dec_bte, false, "cast to dec(bte) and check
for overflow", args(1,4,
batarg("",bte),batarg("v",oid),arg("digits",int),arg("scale",int))),
command("calc", "bte", str_2dec_bte, false, "cast to dec(bte) and check for
overflow", args(1,4,
arg("",bte),arg("v",str),arg("digits",int),arg("scale",int))),
- command("batcalc", "bte", batstr_2dec_bte, false, "cast to dec(bte) and check
for overflow", args(1,4,
batarg("",bte),batarg("v",str),arg("digits",int),arg("scale",int))),
+ pattern("batcalc", "bte", batstr_2dec_bte, false, "cast to dec(bte) and check
for overflow", args(1,4,
batarg("",bte),batarg("v",str),arg("digits",int),arg("scale",int))),
+ pattern("batcalc", "bte", batstr_2dec_bte, false, "cast to dec(bte) and check
for overflow", args(1,5,
batarg("",bte),batarg("v",str),batarg("s",oid),arg("digits",int),arg("scale",int))),
command("calc", "sht", nil_2dec_sht, false, "cast to dec(sht) and check for
overflow", args(1,4,
arg("",sht),arg("v",void),arg("digits",int),arg("scale",int))),
command("batcalc", "sht", batnil_2dec_sht, false, "cast to dec(sht) and check
for overflow", args(1,4,
batarg("",sht),batarg("v",oid),arg("digits",int),arg("scale",int))),
command("calc", "sht", str_2dec_sht, false, "cast to dec(sht) and check for
overflow", args(1,4,
arg("",sht),arg("v",str),arg("digits",int),arg("scale",int))),
- command("batcalc", "sht", batstr_2dec_sht, false, "cast to dec(sht) and check
for overflow", args(1,4,
batarg("",sht),batarg("v",str),arg("digits",int),arg("scale",int))),
+ pattern("batcalc", "sht", batstr_2dec_sht, false, "cast to dec(sht) and check
for overflow", args(1,4,
batarg("",sht),batarg("v",str),arg("digits",int),arg("scale",int))),
+ pattern("batcalc", "sht", batstr_2dec_sht, false, "cast to dec(sht) and check
for overflow", args(1,5,
batarg("",sht),batarg("v",str),batarg("s",oid),arg("digits",int),arg("scale",int))),
command("calc", "int", nil_2dec_int, false, "cast to dec(int) and check for
overflow", args(1,4,
arg("",int),arg("v",void),arg("digits",int),arg("scale",int))),
command("batcalc", "int", batnil_2dec_int, false, "cast to dec(int) and check
for overflow", args(1,4,
batarg("",int),batarg("v",oid),arg("digits",int),arg("scale",int))),
command("calc", "int", str_2dec_int, false, "cast to dec(int) and check for
overflow", args(1,4,
arg("",int),arg("v",str),arg("digits",int),arg("scale",int))),
- command("batcalc", "int", batstr_2dec_int, false, "cast to dec(int) and check
for overflow", args(1,4,
batarg("",int),batarg("v",str),arg("digits",int),arg("scale",int))),
+ pattern("batcalc", "int", batstr_2dec_int, false, "cast to dec(int) and check
for overflow", args(1,4,
batarg("",int),batarg("v",str),arg("digits",int),arg("scale",int))),
+ pattern("batcalc", "int", batstr_2dec_int, false, "cast to dec(int) and check
for overflow", args(1,5,
batarg("",int),batarg("v",str),batarg("s",oid),arg("digits",int),arg("scale",int))),
command("calc", "lng", nil_2dec_lng, false, "cast to dec(lng) and check for
overflow", args(1,4,
arg("",lng),arg("v",void),arg("digits",int),arg("scale",int))),
command("batcalc", "lng", batnil_2dec_lng, false, "cast to dec(lng) and check
for overflow", args(1,4,
batarg("",lng),batarg("v",oid),arg("digits",int),arg("scale",int))),
command("calc", "lng", str_2dec_lng, false, "cast to dec(lng) and check for
overflow", args(1,4,
arg("",lng),arg("v",str),arg("digits",int),arg("scale",int))),
- command("batcalc", "lng", batstr_2dec_lng, false, "cast to dec(lng) and check
for overflow", args(1,4,
batarg("",lng),batarg("v",str),arg("digits",int),arg("scale",int))),
+ pattern("batcalc", "lng", batstr_2dec_lng, false, "cast to dec(lng) and check
for overflow", args(1,4,
batarg("",lng),batarg("v",str),arg("digits",int),arg("scale",int))),
+ pattern("batcalc", "lng", batstr_2dec_lng, false, "cast to dec(lng) and check
for overflow", args(1,5,
batarg("",lng),batarg("v",str),batarg("s",oid),arg("digits",int),arg("scale",int))),
pattern("calc", "timestamp", nil_2time_timestamp, false, "cast to timestamp
and check for overflow", args(1,3,
arg("",timestamp),arg("v",void),arg("digits",int))),
pattern("batcalc", "timestamp", nil_2time_timestamp, false, "cast to
timestamp and check for overflow", args(1,3,
batarg("",timestamp),batarg("v",oid),arg("digits",int))),
pattern("batcalc", "timestamp", nil_2time_timestamp, false, "cast to
timestamp and check for overflow", args(1,4,
batarg("",timestamp),batarg("v",oid),arg("digits",int),batarg("r",bat))),
@@ -6470,11 +6478,12 @@ static mel_func sql_init_funcs[] = {
command("batsql", "round", hge_bat_round_wrap, false, "round off the decimal
v(d,s) to r digits behind the dot (if r < 0, before the dot)", args(1,5,
batarg("",hge),batarg("v",hge),arg("d",int),arg("s",int),arg("r",bte))),
command("calc", "second_interval", hge_dec2second_interval, false, "cast hge
decimal to a second_interval", args(1,5,
arg("",lng),arg("sc",int),arg("v",hge),arg("ek",int),arg("sk",int))),
command("batcalc", "second_interval", hge_batdec2second_interval, false,
"cast hge decimal to a second_interval", args(1,5,
batarg("",lng),arg("sc",int),batarg("v",hge),arg("ek",int),arg("sk",int))),
- command("batcalc", "second_interval", hge_batdec2second_interval, false,
"cast hge decimal to a second_interval", args(1,6,
batarg("",lng),arg("sc",int),batarg("v",hge),batarg("s",oid),arg("ek",int),arg("sk",int))),
+ pattern("batcalc", "second_interval", hge_batdec2second_interval, false,
"cast hge decimal to a second_interval", args(1,6,
batarg("",lng),arg("sc",int),batarg("v",hge),batarg("s",oid),arg("ek",int),arg("sk",int))),
command("calc", "hge", nil_2dec_hge, false, "cast to dec(hge) and check for
overflow", args(1,4,
arg("",hge),arg("v",void),arg("digits",int),arg("scale",int))),
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list