in HSQL/src/org/hsqldb1/Library.java [2032:2283]
static Object invoke(int fID, Object[] params) throws HsqlException {
try {
switch (fID) {
case abs : {
return new Double(
Library.abs(((Number) params[0]).doubleValue()));
}
case ascii : {
return ascii((String) params[0]);
}
case bitand : {
return ValuePool.getInt(
bitand(((Number) params[0]).intValue(),
((Number) params[1]).intValue()));
}
case bitLength : {
return bitLength((String) params[0]);
}
case bitor : {
return ValuePool.getInt(
bitor(((Number) params[0]).intValue(),
((Number) params[1]).intValue()));
}
case bitxor : {
return ValuePool.getInt(
bitxor(((Number) params[0]).intValue(),
((Number) params[1]).intValue()));
}
case character : {
return character(((Number) params[0]).intValue());
}
case concat : {
return concat((String) params[0], (String) params[1]);
}
case cot : {
return new Double(
cot(((Number) params[0]).doubleValue()));
}
case curdate : {
return null;
}
case curtime : {
return null;
}
case database : {
return null;
}
case datediff : {
return datediff((String) params[0],
(Timestamp) params[1],
(Timestamp) params[2]);
}
case dayname : {
return dayname((Date) params[0]);
}
case dayofmonth :
case day : {
return dayofmonth((Date) params[0]);
}
case dayofweek : {
return dayofweek((Date) params[0]);
}
case dayofyear : {
return dayofyear((Date) params[0]);
}
case difference : {
return ValuePool.getInt(difference((String) params[0],
(String) params[1]));
}
case getAutoCommit : {
return null;
}
case getDatabaseFullProductVersion : {
return getDatabaseFullProductVersion();
}
case getDatabaseMajorVersion : {
return ValuePool.getInt(getDatabaseMajorVersion());
}
case getDatabaseMinorVersion : {
return ValuePool.getInt(getDatabaseMinorVersion());
}
case getDatabaseProductName : {
return getDatabaseProductName();
}
case getDatabaseProductVersion : {
return getDatabaseProductVersion();
}
case hexToRaw : {
return hexToRaw((String) params[0]);
}
case hour : {
return hour((Time) params[0]);
}
case identity : {
return null;
}
case insert : {
return insert((String) params[0],
((Number) params[1]).intValue(),
((Number) params[2]).intValue(),
(String) params[3]);
}
case isReadOnlyConnection : {
return null;
}
case isReadOnlyDatabase : {
return null;
}
case lcase : {
return lcase((String) params[0]);
}
case left : {
return left((String) params[0],
((Number) params[1]).intValue());
}
case length : {
return length((String) params[0]);
}
case locate : {
return ValuePool.getInt(locate((String) params[0],
(String) params[1],
(Integer) params[2]));
}
case log10 : {
return new Double(
log10(((Number) params[0]).doubleValue()));
}
case ltrim : {
return ltrim((String) params[0]);
}
case minute : {
return minute((Time) params[0]);
}
case mod : {
return ValuePool.getInt(
mod(
((Number) params[0]).intValue(),
((Number) params[1]).intValue()));
}
case month : {
return month((Date) params[0]);
}
case monthname : {
return ValuePool.getString(monthname((Date) params[0]));
}
case now : {
return null;
}
case octetLength : {
return octetLength((String) params[0]);
}
case position : {
return ValuePool.getInt(position((String) params[0],
(String) params[1]));
}
case pi : {
return piValue;
}
case quarter : {
return quarter((Date) params[0]);
}
case rand : {
return new Double(rand((Integer) params[0]));
}
case rawToHex : {
return rawToHex((String) params[0]);
}
case repeat : {
return repeat((String) params[0], (Integer) params[1]);
}
case replace : {
return replace((String) params[0], (String) params[1],
(String) params[2]);
}
case right : {
return right((String) params[0],
((Number) params[1]).intValue());
}
case round : {
return new Double(
round(((Number) params[0]).doubleValue(),
((Number) params[1]).intValue()));
}
case roundMagic : {
return new Double(
roundMagic(((Number) params[0]).doubleValue()));
}
case rtrim : {
return rtrim((String) params[0]);
}
case second : {
return second((Time) params[0]);
}
case sign : {
return ValuePool.getInt(
sign(((Number) params[0]).doubleValue()));
}
case soundex : {
return soundex((String) params[0]);
}
case space : {
return space(((Number) params[0]).intValue());
}
case substring : {
return substring((String) params[0],
((Number) params[1]).intValue(),
(Integer) params[2]);
}
case trim : {
return trim((String) params[0], (String) params[1],
((Boolean) params[2]).booleanValue(),
((Boolean) params[3]).booleanValue());
}
case truncate : {
return new Double(
truncate(
((Number) params[0]).doubleValue(),
((Number) params[1]).intValue()));
}
case ucase : {
return ucase((String) params[0]);
}
case user : {
return null;
}
case week : {
return week((Date) params[0]);
}
case year : {
return year((Date) params[0]);
}
case to_char : {
return to_char((java.util.Date) params[0],
(String) params[1]);
}
case isReadOnlyDatabaseFiles : {
return null;
}
default : {
// coding error
Trace.doAssert(false);
return null;
}
}
} catch (Exception e) {
throw Trace.error(Trace.FUNCTION_CALL_ERROR, e.toString());
}
}