udf.sql 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. /*
  2. * The contents of this file are subject to the Interbase Public
  3. * License Version 1.0 (the "License"); you may not use this file
  4. * except in compliance with the License. You may obtain a copy
  5. * of the License at http://www.Inprise.com/IPL.html
  6. *
  7. * Software distributed under the License is distributed on an
  8. * "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
  9. * or implied. See the License for the specific language governing
  10. * rights and limitations under the License.
  11. *
  12. * The Original Code was created by Inprise Corporation
  13. * and its predecessors. Portions created by Inprise Corporation are
  14. * Copyright (C) Inprise Corporation.
  15. *
  16. * All Rights Reserved.
  17. * Contributor(s): ______________________________________.
  18. */
  19. /*--------------------------------------------------------------
  20. ** User Defined Function definitions for example databases
  21. **--------------------------------------------------------------
  22. */
  23. DECLARE EXTERNAL FUNCTION lower
  24. VARCHAR (256)
  25. RETURNS CSTRING(80) FREE_IT
  26. ENTRY_POINT 'fn_lower_c' MODULE_NAME 'udflib';
  27. DECLARE EXTERNAL FUNCTION substr
  28. CSTRING(256), SMALLINT, SMALLINT
  29. RETURNS CSTRING(80) FREE_IT
  30. ENTRY_POINT 'fn_substr' MODULE_NAME 'udflib';
  31. DECLARE EXTERNAL FUNCTION trim
  32. CSTRING(256)
  33. RETURNS CHAR (80) FREE_IT
  34. ENTRY_POINT 'fn_trim' MODULE_NAME 'udflib';
  35. DECLARE EXTERNAL FUNCTION trunc
  36. CSTRING(256), SMALLINT
  37. RETURNS VARCHAR (80) FREE_IT
  38. ENTRY_POINT 'fn_trunc' MODULE_NAME 'udflib';
  39. DECLARE EXTERNAL FUNCTION strcat
  40. VARCHAR(255), VARCHAR (255)
  41. RETURNS CSTRING(80) FREE_IT
  42. ENTRY_POINT 'fn_strcat' MODULE_NAME 'udflib';
  43. DECLARE EXTERNAL FUNCTION doy
  44. RETURNS INTEGER BY VALUE
  45. ENTRY_POINT 'fn_doy' MODULE_NAME 'udflib';
  46. DECLARE EXTERNAL FUNCTION moy
  47. RETURNS SMALLINT
  48. ENTRY_POINT 'fn_moy' MODULE_NAME 'udflib';
  49. DECLARE EXTERNAL FUNCTION dow
  50. RETURNS CSTRING(12)
  51. ENTRY_POINT 'fn_dow' MODULE_NAME 'udflib';
  52. DECLARE EXTERNAL FUNCTION sysdate
  53. RETURNS CSTRING(12) FREE_IT
  54. ENTRY_POINT 'fn_sysdate' MODULE_NAME 'udflib';
  55. DECLARE EXTERNAL FUNCTION fact
  56. DOUBLE PRECISION
  57. RETURNS DOUBLE PRECISION BY VALUE
  58. ENTRY_POINT 'fn_fact' MODULE_NAME 'udflib';
  59. DECLARE EXTERNAL FUNCTION add2
  60. INTEGER,INTEGER
  61. RETURNS INTEGER BY VALUE
  62. ENTRY_POINT 'fn_add2' MODULE_NAME 'udflib';
  63. DECLARE EXTERNAL FUNCTION mul
  64. DOUBLE PRECISION, DOUBLE PRECISION
  65. RETURNS DOUBLE PRECISION BY VALUE
  66. ENTRY_POINT 'fn_mul' MODULE_NAME 'udflib';
  67. DECLARE EXTERNAL FUNCTION abs
  68. DOUBLE PRECISION
  69. RETURNS DOUBLE PRECISION BY VALUE
  70. ENTRY_POINT 'fn_abs' MODULE_NAME 'udflib';
  71. DECLARE EXTERNAL FUNCTION maxnum
  72. DOUBLE PRECISION, DOUBLE PRECISION
  73. RETURNS DOUBLE PRECISION BY VALUE
  74. ENTRY_POINT 'fn_max' MODULE_NAME 'udflib';
  75. DECLARE EXTERNAL FUNCTION sqrt
  76. DOUBLE PRECISION
  77. RETURNS DOUBLE PRECISION
  78. ENTRY_POINT 'fn_sqrt' MODULE_NAME 'udflib';
  79. DECLARE EXTERNAL FUNCTION BLOB_BYTECOUNT
  80. BLOB
  81. RETURNS INTEGER BY VALUE
  82. ENTRY_POINT 'fn_blob_bytecount' MODULE_NAME 'udflib';
  83. DECLARE EXTERNAL FUNCTION BLOB_LINECOUNT
  84. BLOB
  85. RETURNS INTEGER BY VALUE
  86. ENTRY_POINT 'fn_blob_linecount' MODULE_NAME 'udflib';
  87. DECLARE EXTERNAL FUNCTION BLOB_SUBSTR
  88. BLOB, INTEGER, INTEGER
  89. RETURNS CSTRING(256) FREE_IT
  90. ENTRY_POINT 'fn_blob_substr' MODULE_NAME 'udflib';