sqllens 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (234) hide show
  1. package/README.md +2 -74
  2. package/THIRD-PARTY-NOTICES.md +50 -5
  3. package/dist/api.d.ts +5 -3
  4. package/dist/api.js +11 -4
  5. package/dist/bigquery/behavior.d.ts +2 -0
  6. package/dist/bigquery/behavior.js +20 -0
  7. package/dist/bigquery/dot-path.d.ts +0 -2
  8. package/dist/bigquery/dot-path.js +0 -1
  9. package/dist/bigquery/fold.d.ts +8 -0
  10. package/dist/bigquery/fold.js +39 -0
  11. package/dist/bigquery/index.d.ts +7 -0
  12. package/dist/bigquery/index.js +10 -0
  13. package/dist/{infer/bigquery.d.ts → bigquery/infer.d.ts} +2 -2
  14. package/dist/{infer/bigquery.js → bigquery/infer.js} +4 -3
  15. package/dist/bigquery/lower.js +35 -12
  16. package/dist/bigquery/signatures.generated.d.ts +6 -0
  17. package/dist/bigquery/signatures.generated.js +1068 -0
  18. package/dist/completion/atn-walk.d.ts +13 -2
  19. package/dist/completion/atn-walk.js +13 -10
  20. package/dist/completion/complete.d.ts +4 -3
  21. package/dist/completion/complete.js +101 -45
  22. package/dist/completion/jinja-slot.d.ts +24 -0
  23. package/dist/completion/jinja-slot.js +126 -0
  24. package/dist/completion/parser-factory.d.ts +13 -1
  25. package/dist/completion/parser-factory.js +12 -0
  26. package/dist/databricks/behavior.d.ts +2 -0
  27. package/dist/databricks/behavior.js +19 -0
  28. package/dist/databricks/fold.d.ts +8 -0
  29. package/dist/databricks/fold.js +27 -0
  30. package/dist/databricks/index.d.ts +7 -0
  31. package/dist/databricks/index.js +10 -0
  32. package/dist/databricks/infer.d.ts +6 -0
  33. package/dist/databricks/infer.js +638 -0
  34. package/dist/databricks/signatures.generated.d.ts +6 -0
  35. package/dist/databricks/signatures.generated.js +1745 -0
  36. package/dist/dialect-behavior/behavior.d.ts +26 -0
  37. package/dist/dialect-behavior/behavior.js +1 -0
  38. package/dist/dialect-behavior/carrier.d.ts +5 -0
  39. package/dist/dialect-behavior/carrier.js +5 -0
  40. package/dist/dialect-behavior/coerce-rules.d.ts +7 -0
  41. package/dist/dialect-behavior/coerce-rules.js +69 -0
  42. package/dist/dialect-behavior/public-fold.d.ts +6 -0
  43. package/dist/dialect-behavior/public-fold.js +9 -0
  44. package/dist/dialect-behavior/registry.d.ts +6 -0
  45. package/dist/dialect-behavior/registry.js +34 -0
  46. package/dist/dialect-symbols.js +16 -19
  47. package/dist/document/document.d.ts +1 -1
  48. package/dist/document/document.js +8 -7
  49. package/dist/duckdb/behavior.d.ts +2 -0
  50. package/dist/duckdb/behavior.js +21 -0
  51. package/dist/duckdb/fold.d.ts +8 -0
  52. package/dist/duckdb/fold.js +29 -0
  53. package/dist/duckdb/index.d.ts +7 -0
  54. package/dist/duckdb/index.js +10 -0
  55. package/dist/{infer/duckdb.d.ts → duckdb/infer.d.ts} +2 -2
  56. package/dist/{infer/duckdb.js → duckdb/infer.js} +4 -3
  57. package/dist/duckdb/lower.js +47 -15
  58. package/dist/duckdb/signatures.generated.d.ts +6 -0
  59. package/dist/duckdb/signatures.generated.js +1072 -0
  60. package/dist/generated/bigquery/GoogleSQLParser.js +0 -7060
  61. package/dist/generated/databricks/DatabricksParser.js +0 -4800
  62. package/dist/generated/duckdb/DuckdbParser.js +0 -9100
  63. package/dist/generated/minijinja/MinijinjaParser.js +0 -380
  64. package/dist/generated/mysql/MysqlParser.js +0 -6330
  65. package/dist/generated/postgres/PostgresParser.js +0 -8530
  66. package/dist/generated/redshift/RedshiftParser.js +0 -10970
  67. package/dist/generated/snowflake/SnowflakeParser.js +0 -7320
  68. package/dist/generated/sqlite/SqliteParser.js +0 -1150
  69. package/dist/generated/trino/TrinoParser.js +0 -3770
  70. package/dist/generated/tsql/TSqlParser.js +0 -8420
  71. package/dist/ident/fold.d.ts +24 -15
  72. package/dist/ident/fold.js +12 -194
  73. package/dist/index.d.ts +2 -2
  74. package/dist/index.js +10 -8
  75. package/dist/infer/functions.d.ts +22 -11
  76. package/dist/infer/functions.js +26 -888
  77. package/dist/infer/infer.js +16 -14
  78. package/dist/infer/nullability.js +3 -4
  79. package/dist/infer/types.d.ts +1 -1
  80. package/dist/infer/types.js +7 -7
  81. package/dist/ir/ir.d.ts +26 -17
  82. package/dist/ir/span.js +0 -2
  83. package/dist/ir/walk.js +3 -3
  84. package/dist/lineage/hops.js +13 -10
  85. package/dist/lineage/lineage.js +10 -7
  86. package/dist/minijinja/apply-tags.d.ts +14 -7
  87. package/dist/minijinja/apply-tags.js +66 -121
  88. package/dist/minijinja/parse.js +5 -5
  89. package/dist/minijinja/tag-ast.d.ts +29 -36
  90. package/dist/minijinja/tag-ast.js +210 -90
  91. package/dist/mysql/behavior.d.ts +2 -0
  92. package/dist/mysql/behavior.js +21 -0
  93. package/dist/mysql/fold.d.ts +8 -0
  94. package/dist/mysql/fold.js +49 -0
  95. package/dist/mysql/index.d.ts +7 -0
  96. package/dist/mysql/index.js +10 -0
  97. package/dist/{infer/mysql.d.ts → mysql/infer.d.ts} +2 -2
  98. package/dist/{infer/mysql.js → mysql/infer.js} +3 -2
  99. package/dist/mysql/signatures.generated.d.ts +6 -0
  100. package/dist/mysql/signatures.generated.js +508 -0
  101. package/dist/postgres/behavior.d.ts +2 -0
  102. package/dist/postgres/behavior.js +19 -0
  103. package/dist/postgres/fold.d.ts +8 -0
  104. package/dist/postgres/fold.js +30 -0
  105. package/dist/postgres/index.d.ts +7 -0
  106. package/dist/postgres/index.js +10 -0
  107. package/dist/{infer/postgres.d.ts → postgres/infer.d.ts} +2 -2
  108. package/dist/{infer/postgres.js → postgres/infer.js} +4 -3
  109. package/dist/postgres/lower.js +2 -2
  110. package/dist/postgres/signatures.generated.d.ts +6 -0
  111. package/dist/postgres/signatures.generated.js +2973 -0
  112. package/dist/qualify/check-calls.js +80 -161
  113. package/dist/qualify/qualify.js +16 -14
  114. package/dist/qualify/schema-provider.js +2 -2
  115. package/dist/qualify/schema.js +3 -3
  116. package/dist/qualify/template-provider.d.ts +45 -12
  117. package/dist/qualify/template-provider.js +69 -38
  118. package/dist/redshift/behavior.d.ts +2 -0
  119. package/dist/redshift/behavior.js +19 -0
  120. package/dist/redshift/fold.d.ts +8 -0
  121. package/dist/redshift/fold.js +31 -0
  122. package/dist/redshift/index.d.ts +7 -0
  123. package/dist/redshift/index.js +10 -0
  124. package/dist/{infer/redshift.d.ts → redshift/infer.d.ts} +2 -2
  125. package/dist/{infer/redshift.js → redshift/infer.js} +4 -3
  126. package/dist/redshift/lower.js +2 -2
  127. package/dist/redshift/signatures.generated.d.ts +6 -0
  128. package/dist/redshift/signatures.generated.js +757 -0
  129. package/dist/references/references.js +17 -12
  130. package/dist/scope/like-pattern.d.ts +2 -0
  131. package/dist/scope/like-pattern.js +15 -0
  132. package/dist/scope/scope.d.ts +5 -5
  133. package/dist/scope/scope.js +48 -42
  134. package/dist/sema/resolve.js +17 -12
  135. package/dist/session.d.ts +2 -2
  136. package/dist/signature/signature.d.ts +14 -6
  137. package/dist/signature/signature.js +30 -22
  138. package/dist/signature/signatures.d.ts +14 -12
  139. package/dist/signature/signatures.js +42 -721
  140. package/dist/snowflake/behavior.d.ts +2 -0
  141. package/dist/snowflake/behavior.js +22 -0
  142. package/dist/snowflake/fold.d.ts +8 -0
  143. package/dist/snowflake/fold.js +25 -0
  144. package/dist/snowflake/index.d.ts +7 -0
  145. package/dist/snowflake/index.js +10 -0
  146. package/dist/{infer/snowflake.d.ts → snowflake/infer.d.ts} +2 -2
  147. package/dist/{infer/snowflake.js → snowflake/infer.js} +4 -3
  148. package/dist/snowflake/lower.js +59 -19
  149. package/dist/snowflake/signatures.generated.d.ts +6 -0
  150. package/dist/snowflake/signatures.generated.js +2080 -0
  151. package/dist/sqlite/behavior.d.ts +2 -0
  152. package/dist/sqlite/behavior.js +19 -0
  153. package/dist/sqlite/fold.d.ts +8 -0
  154. package/dist/sqlite/fold.js +41 -0
  155. package/dist/sqlite/index.d.ts +7 -0
  156. package/dist/sqlite/index.js +10 -0
  157. package/dist/{infer/sqlite.d.ts → sqlite/infer.d.ts} +2 -2
  158. package/dist/{infer/sqlite.js → sqlite/infer.js} +4 -3
  159. package/dist/sqlite/signatures.generated.d.ts +6 -0
  160. package/dist/sqlite/signatures.generated.js +277 -0
  161. package/dist/symbols/symbols.js +14 -12
  162. package/dist/trino/behavior.d.ts +2 -0
  163. package/dist/trino/behavior.js +21 -0
  164. package/dist/trino/fold.d.ts +8 -0
  165. package/dist/trino/fold.js +39 -0
  166. package/dist/trino/index.d.ts +7 -0
  167. package/dist/trino/index.js +10 -0
  168. package/dist/{infer/trino.d.ts → trino/infer.d.ts} +2 -2
  169. package/dist/{infer/trino.js → trino/infer.js} +4 -3
  170. package/dist/trino/lower.js +5 -5
  171. package/dist/trino/signatures.generated.d.ts +6 -0
  172. package/dist/trino/signatures.generated.js +968 -0
  173. package/dist/tsql/behavior.d.ts +2 -0
  174. package/dist/tsql/behavior.js +20 -0
  175. package/dist/tsql/fold.d.ts +8 -0
  176. package/dist/tsql/fold.js +34 -0
  177. package/dist/tsql/index.d.ts +7 -0
  178. package/dist/tsql/index.js +10 -0
  179. package/dist/tsql/infer.d.ts +16 -0
  180. package/dist/tsql/infer.js +289 -0
  181. package/dist/tsql/lower.js +4 -4
  182. package/dist/tsql/signatures.generated.d.ts +6 -0
  183. package/dist/tsql/signatures.generated.js +640 -0
  184. package/package.json +5 -10
  185. package/dist/generated/bigquery/GoogleSQLLexer.d.ts +0 -407
  186. package/dist/generated/bigquery/GoogleSQLParser.d.ts +0 -9558
  187. package/dist/generated/bigquery/GoogleSQLParserListener.d.ts +0 -7777
  188. package/dist/generated/bigquery/GoogleSQLParserListener.js +0 -7070
  189. package/dist/generated/databricks/DatabricksLexer.d.ts +0 -566
  190. package/dist/generated/databricks/DatabricksParser.d.ts +0 -7771
  191. package/dist/generated/databricks/DatabricksParserListener.d.ts +0 -5737
  192. package/dist/generated/databricks/DatabricksParserListener.js +0 -5256
  193. package/dist/generated/duckdb/DuckdbLexer.d.ts +0 -691
  194. package/dist/generated/duckdb/DuckdbParser.d.ts +0 -13932
  195. package/dist/generated/duckdb/DuckdbParserListener.d.ts +0 -10049
  196. package/dist/generated/duckdb/DuckdbParserListener.js +0 -9138
  197. package/dist/generated/minijinja/MinijinjaLexer.d.ts +0 -108
  198. package/dist/generated/minijinja/MinijinjaParser.d.ts +0 -604
  199. package/dist/generated/minijinja/MinijinjaParserListener.d.ts +0 -449
  200. package/dist/generated/minijinja/MinijinjaParserListener.js +0 -410
  201. package/dist/generated/mysql/MysqlLexer.d.ts +0 -1198
  202. package/dist/generated/mysql/MysqlParser.d.ts +0 -10992
  203. package/dist/generated/mysql/MysqlParserListener.d.ts +0 -7592
  204. package/dist/generated/mysql/MysqlParserListener.js +0 -6958
  205. package/dist/generated/postgres/PostgresLexer.d.ts +0 -663
  206. package/dist/generated/postgres/PostgresParser.d.ts +0 -12963
  207. package/dist/generated/postgres/PostgresParserListener.d.ts +0 -9408
  208. package/dist/generated/postgres/PostgresParserListener.js +0 -8554
  209. package/dist/generated/redshift/RedshiftLexer.d.ts +0 -954
  210. package/dist/generated/redshift/RedshiftParser.d.ts +0 -16939
  211. package/dist/generated/redshift/RedshiftParserListener.d.ts +0 -12092
  212. package/dist/generated/redshift/RedshiftParserListener.js +0 -10994
  213. package/dist/generated/snowflake/SnowflakeLexer.d.ts +0 -1046
  214. package/dist/generated/snowflake/SnowflakeParser.d.ts +0 -14196
  215. package/dist/generated/snowflake/SnowflakeParserListener.d.ts +0 -8063
  216. package/dist/generated/snowflake/SnowflakeParserListener.js +0 -7330
  217. package/dist/generated/sqlite/SqliteLexer.d.ts +0 -210
  218. package/dist/generated/sqlite/SqliteParser.d.ts +0 -2115
  219. package/dist/generated/sqlite/SqliteParserListener.d.ts +0 -1276
  220. package/dist/generated/sqlite/SqliteParserListener.js +0 -1160
  221. package/dist/generated/trino/TrinoLexer.d.ts +0 -381
  222. package/dist/generated/trino/TrinoParser.d.ts +0 -5340
  223. package/dist/generated/trino/TrinoParserListener.d.ts +0 -4704
  224. package/dist/generated/trino/TrinoParserListener.js +0 -4326
  225. package/dist/generated/tsql/TSqlLexer.d.ts +0 -1278
  226. package/dist/generated/tsql/TSqlParser.d.ts +0 -17267
  227. package/dist/generated/tsql/TSqlParserListener.d.ts +0 -9697
  228. package/dist/generated/tsql/TSqlParserListener.js +0 -8854
  229. package/dist/infer/dialect.d.ts +0 -21
  230. package/dist/infer/dialect.js +0 -100
  231. package/dist/infer/literals.d.ts +0 -6
  232. package/dist/infer/literals.js +0 -44
  233. package/dist/signature/generated/tsql.d.ts +0 -3
  234. package/dist/signature/generated/tsql.js +0 -260
@@ -0,0 +1,757 @@
1
+ /** The merged function-signature table for redshift: curated overrides folded over the harvested
2
+ * doc-derived long tail (overrides win by key, replacing the whole overload set), keyed by
3
+ * lowercased name. Each name maps to an ORDERED overload set - a name with one documented shape
4
+ * is a one-element array. `origin` says which layer produced the set. */
5
+ export const REDSHIFT_SIGNATURES = {
6
+ abs: [{ name: "ABS", params: [{ name: "number" }], origin: "harvested" }], // r_ABS/1.txt
7
+ acos: [{ name: "ACOS", params: [{ name: "number" }], origin: "harvested" }], // r_ACOS/1.txt
8
+ addbbox: [{ name: "AddBBox", params: [{ name: "geom" }], origin: "harvested" }], // AddBBox-function/1.txt
9
+ any_value: [{ name: "ANY_VALUE", params: [{ name: "expression" }], origin: "harvested" }], // r_ANY_VALUE/1.txt
10
+ array: [
11
+ {
12
+ name: "ARRAY",
13
+ params: [
14
+ { name: "expr1", optional: true },
15
+ { name: "expr2", optional: true },
16
+ ],
17
+ variadic: true,
18
+ origin: "harvested",
19
+ },
20
+ ], // r_array/1.txt
21
+ array_concat: [{ name: "ARRAY_CONCAT", params: [{ name: "array1" }, { name: "array2" }], origin: "harvested" }], // r_array_concat/1.txt
22
+ array_contains: [
23
+ {
24
+ name: "ARRAY_CONTAINS",
25
+ params: [{ name: "array" }, { name: "value" }, { name: "null_match", optional: true }],
26
+ origin: "harvested",
27
+ },
28
+ ], // array_contains/1.txt
29
+ array_distinct: [{ name: "ARRAY_DISTINCT", params: [{ name: "array" }], origin: "harvested" }], // array_distinct/1.txt
30
+ array_flatten: [{ name: "ARRAY_FLATTEN", params: [{ name: "array" }], origin: "harvested" }], // array_flatten/1.txt
31
+ array_position: [
32
+ {
33
+ name: "ARRAY_POSITION",
34
+ params: [{ name: "array" }, { name: "value" }, { name: "null_match", optional: true }],
35
+ origin: "harvested",
36
+ },
37
+ ], // array_position/1.txt
38
+ array_positions: [
39
+ {
40
+ name: "ARRAY_POSITIONS",
41
+ params: [{ name: "array" }, { name: "value" }, { name: "null_match", optional: true }],
42
+ origin: "harvested",
43
+ },
44
+ ], // array_positions/1.txt
45
+ array_sort: [
46
+ {
47
+ name: "ARRAY_SORT",
48
+ params: [
49
+ { name: "array" },
50
+ { name: "sort_ascending", optional: true },
51
+ { name: "nulls_first", optional: true },
52
+ ],
53
+ origin: "harvested",
54
+ },
55
+ ], // array_sort/1.txt
56
+ array_union: [{ name: "ARRAY_UNION", params: [{ name: "array1" }, { name: "array2" }], origin: "harvested" }], // array_union/1.txt
57
+ arrays_overlap: [{ name: "ARRAYS_OVERLAP", params: [{ name: "array1" }, { name: "array2" }], origin: "harvested" }], // arrays_overlap/1.txt
58
+ ascii: [{ name: "ASCII", params: [{ name: "string" }], origin: "harvested" }], // r_ASCII/1.txt
59
+ asin: [{ name: "ASIN", params: [{ name: "number" }], origin: "harvested" }], // r_ASIN/1.txt
60
+ atan: [{ name: "ATAN", params: [{ name: "number" }], origin: "harvested" }], // r_ATAN/1.txt
61
+ atan2: [{ name: "ATAN2", params: [{ name: "number1" }, { name: "number2" }], origin: "harvested" }], // r_ATAN2/1.txt
62
+ avg: [{ name: "AVG", params: [{ name: "expression" }], origin: "harvested" }], // r_AVG/1.txt
63
+ bit_and: [{ name: "BIT_AND", params: [{ name: "expression" }], origin: "harvested" }], // r_BIT_AND/1.txt
64
+ bit_or: [{ name: "BIT_OR", params: [{ name: "expression" }], origin: "harvested" }], // r_BIT_OR/1.txt
65
+ bool_and: [{ name: "BOOL_AND", params: [{ name: "expression" }], origin: "harvested" }], // r_BOOL_AND/1.txt
66
+ bool_or: [{ name: "BOOL_OR", params: [{ name: "expression" }], origin: "harvested" }], // r_BOOL_OR/1.txt
67
+ bpcharcmp: [{ name: "BPCHARCMP", params: [{ name: "string1" }, { name: "string2" }], origin: "harvested" }], // r_BPCHARCMP/1.txt
68
+ btrim: [
69
+ { name: "BTRIM", params: [{ name: "string" }, { name: "trim_chars", optional: true }], origin: "harvested" },
70
+ ], // r_BTRIM/1.txt
71
+ cbrt: [{ name: "CBRT", params: [{ name: "number" }], origin: "harvested" }], // r_CBRT/1.txt
72
+ ceiling: [{ name: "CEILING", params: [{ name: "number", type: "numeric" }], origin: "curated" }], // curated: CEILING / CEIL function
73
+ change_query_priority: [
74
+ { name: "CHANGE_QUERY_PRIORITY", params: [{ name: "query_id" }, { name: "priority" }], origin: "harvested" },
75
+ ], // r_CHANGE_QUERY_PRIORITY/1.txt
76
+ change_session_priority: [
77
+ { name: "CHANGE_SESSION_PRIORITY", params: [{ name: "pid" }, { name: "priority" }], origin: "harvested" },
78
+ ], // r_CHANGE_SESSION_PRIORITY/1.txt
79
+ change_user_priority: [
80
+ { name: "CHANGE_USER_PRIORITY", params: [{ name: "user_name" }, { name: "priority" }], origin: "harvested" },
81
+ ], // r_CHANGE_USER_PRIORITY/1.txt
82
+ charindex: [{ name: "CHARINDEX", params: [{ name: "substring" }, { name: "string" }], origin: "harvested" }], // r_CHARINDEX/1.txt
83
+ checksum: [{ name: "CHECKSUM", params: [{ name: "expression" }], origin: "harvested" }], // r_CHECKSUM/1.txt
84
+ chr: [{ name: "CHR", params: [{ name: "number" }], origin: "harvested" }], // r_CHR/1.txt
85
+ coalesce: [
86
+ {
87
+ name: "COALESCE",
88
+ params: [{ name: "expression" }, { name: "expression" }],
89
+ variadic: true,
90
+ origin: "harvested",
91
+ },
92
+ ], // r_NVL_function/2.txt
93
+ concat: [
94
+ {
95
+ name: "CONCAT",
96
+ params: [
97
+ { name: "string1", type: "string" },
98
+ { name: "string2", type: "string" },
99
+ ],
100
+ origin: "curated",
101
+ },
102
+ ], // curated: CONCAT function (binary)
103
+ convert: [{ name: "CONVERT", params: [{ name: "type" }, { name: "expression" }], origin: "harvested" }], // r_CONVERT_function/1.txt
104
+ cos: [{ name: "COS", params: [{ name: "double_precision" }], origin: "harvested" }], // r_COS/1.txt
105
+ cot: [{ name: "COT", params: [{ name: "number" }], origin: "harvested" }], // r_COT/1.txt
106
+ count: [{ name: "COUNT", params: [{ name: "expression" }], origin: "harvested" }], // r_COUNT/2.txt
107
+ crc32: [{ name: "CRC32", params: [{ name: "string" }], origin: "harvested" }], // crc32-function/1.txt
108
+ cume_dist: [{ name: "CUME_DIST", params: [], origin: "harvested" }], // r_WF_CUME_DIST/1.txt
109
+ current_database: [{ name: "current_database", params: [], origin: "harvested" }], // r_CURRENT_DATABASE/1.txt
110
+ current_schema: [{ name: "current_schema", params: [], origin: "harvested" }], // r_CURRENT_SCHEMA/1.txt
111
+ current_schemas: [{ name: "current_schemas", params: [{ name: "include_implicit" }], origin: "harvested" }], // r_CURRENT_SCHEMAS/1.txt
112
+ current_session_arn: [{ name: "current_session_arn", params: [], origin: "harvested" }], // r_CURRENT_SESSION_ARN/1.txt
113
+ current_setting: [
114
+ {
115
+ name: "current_setting",
116
+ params: [{ name: "variable_name" }, { name: "error_if_undefined", optional: true }],
117
+ origin: "harvested",
118
+ },
119
+ { name: "current_setting", params: [{ name: "parameter" }], origin: "harvested" },
120
+ ], // r_CURRENT_SETTING/2.txt, r_CURRENT_SETTING/1.txt
121
+ date_cmp: [{ name: "DATE_CMP", params: [{ name: "date1" }, { name: "date2" }], origin: "harvested" }], // r_DATE_CMP/1.txt
122
+ date_cmp_timestamp: [
123
+ { name: "DATE_CMP_TIMESTAMP", params: [{ name: "date" }, { name: "timestamp" }], origin: "harvested" },
124
+ ], // r_DATE_CMP_TIMESTAMP/1.txt
125
+ date_cmp_timestamptz: [
126
+ { name: "DATE_CMP_TIMESTAMPTZ", params: [{ name: "date" }, { name: "timestamptz" }], origin: "harvested" },
127
+ ], // r_DATE_CMP_TIMESTAMPTZ/1.txt
128
+ date_part: [
129
+ {
130
+ name: "DATE_PART",
131
+ params: [{ name: "datepart" }, { name: "timestamp", type: "timestamp" }],
132
+ origin: "curated",
133
+ },
134
+ ], // curated: DATE_PART function
135
+ date_part_year: [{ name: "DATE_PART_YEAR", params: [{ name: "date" }], origin: "harvested" }], // r_DATE_PART_YEAR/1.txt
136
+ date_trunc: [{ name: "DATE_TRUNC", params: [{ name: "datepart" }, { name: "timestamp" }], origin: "harvested" }], // r_DATE_TRUNC/1.txt
137
+ dateadd: [
138
+ {
139
+ name: "DATEADD",
140
+ params: [{ name: "datepart" }, { name: "interval", type: "integer" }, { name: "date", type: "date" }],
141
+ origin: "curated",
142
+ },
143
+ ], // curated: DATEADD function
144
+ datediff: [
145
+ {
146
+ name: "DATEDIFF",
147
+ params: [{ name: "datepart" }, { name: "startdate", type: "date" }, { name: "enddate", type: "date" }],
148
+ origin: "curated",
149
+ },
150
+ ], // curated: DATEDIFF function
151
+ db_collation: [{ name: "db_collation", params: [], origin: "harvested" }], // r_DB_COLLATION/1.txt
152
+ decimal_precision: [{ name: "DECIMAL_PRECISION", params: [{ name: "super_expression" }], origin: "harvested" }], // r_decimal_precision/1.txt
153
+ decimal_scale: [{ name: "DECIMAL_SCALE", params: [{ name: "super_expression" }], origin: "harvested" }], // r_decimal_scale/1.txt
154
+ decode: [
155
+ {
156
+ name: "DECODE",
157
+ params: [{ name: "expression" }, { name: "search" }, { name: "result" }],
158
+ variadic: true,
159
+ origin: "curated",
160
+ },
161
+ ], // curated: DECODE expression (variadic)
162
+ degrees: [{ name: "DEGREES", params: [{ name: "number" }], origin: "harvested" }], // r_DEGREES/1.txt
163
+ dexp: [{ name: "DEXP", params: [{ name: "number" }], origin: "harvested" }], // r_DEXP/1.txt
164
+ difference: [{ name: "DIFFERENCE", params: [{ name: "string1" }, { name: "string2" }], origin: "harvested" }], // DIFFERENCE/1.txt
165
+ dlog10: [{ name: "DLOG10", params: [{ name: "number" }], origin: "harvested" }], // r_DLOG10/1.txt
166
+ dropbbox: [{ name: "DropBBox", params: [{ name: "geom" }], origin: "harvested" }], // DropBBox-function/1.txt
167
+ exp: [{ name: "EXP", params: [{ name: "expression" }], origin: "harvested" }], // r_EXP/1.txt
168
+ farmfingerprint64: [{ name: "farmFingerprint64", params: [{ name: "expression" }], origin: "harvested" }], // r_FARMFINGERPRINT64/1.txt
169
+ floor: [{ name: "FLOOR", params: [{ name: "number" }], origin: "harvested" }], // r_FLOOR/1.txt
170
+ fnv_hash: [
171
+ { name: "FNV_HASH", params: [{ name: "value" }, { name: "seed", optional: true }], origin: "harvested" },
172
+ ], // r_FNV_HASH/1.txt
173
+ from_hex: [{ name: "FROM_HEX", params: [{ name: "hex_string" }], origin: "harvested" }], // r_FROM_HEX/1.txt
174
+ from_varbyte: [
175
+ { name: "FROM_VARBYTE", params: [{ name: "binary_value" }, { name: "format" }], origin: "harvested" },
176
+ ], // r_FROM_VARBYTE/1.txt
177
+ geometrytype: [{ name: "GeometryType", params: [{ name: "geom" }], origin: "harvested" }], // GeometryType-function/1.txt
178
+ get_array_length: [{ name: "GET_ARRAY_LENGTH", params: [{ name: "super_expr" }], origin: "harvested" }], // get_array_length/1.txt
179
+ get_mounted_role: [{ name: "get_mounted_role", params: [], origin: "harvested" }], // GET_MOUNTED_ROLE/1.txt
180
+ get_number_attributes: [
181
+ { name: "GET_NUMBER_ATTRIBUTES", params: [{ name: "super_expression" }], origin: "harvested" },
182
+ ], // get_number_attributes/1.txt
183
+ getbit: [{ name: "GETBIT", params: [{ name: "binary_value" }, { name: "index" }], origin: "harvested" }], // r_GETBIT/1.txt
184
+ getdate: [{ name: "GETDATE", params: [], origin: "harvested" }], // r_GETDATE/1.txt
185
+ greatest: [{ name: "GREATEST", params: [{ name: "value" }], variadic: true, origin: "harvested" }], // r_GREATEST_LEAST/1.txt
186
+ h3_boundary: [{ name: "H3_Boundary", params: [{ name: "index" }], origin: "harvested" }], // H3_Boundary-function/1.txt
187
+ h3_center: [{ name: "H3_Center", params: [{ name: "index" }], origin: "harvested" }], // H3_Center-function/1.txt
188
+ h3_fromlonglat: [
189
+ {
190
+ name: "H3_FromLongLat",
191
+ params: [{ name: "longitude" }, { name: "latitude" }, { name: "resolution" }],
192
+ origin: "harvested",
193
+ },
194
+ ], // H3_FromLongLat-function/1.txt
195
+ h3_frompoint: [{ name: "H3_FromPoint", params: [{ name: "geom" }, { name: "resolution" }], origin: "harvested" }], // H3_FromPoint-function/1.txt
196
+ h3_isvalid: [{ name: "H3_IsValid", params: [{ name: "index" }], origin: "harvested" }], // H3_IsValid-function/1.txt
197
+ h3_polyfill: [{ name: "H3_Polyfill", params: [{ name: "geom" }, { name: "resolution" }], origin: "harvested" }], // H3_Polyfill-function/1.txt
198
+ h3_resolution: [{ name: "H3_Resolution", params: [{ name: "index" }], origin: "harvested" }], // H3_Resolution-function/1.txt
199
+ h3_tochildren: [
200
+ { name: "H3_ToChildren", params: [{ name: "index" }, { name: "resolution" }], origin: "harvested" },
201
+ ], // H3_ToChildren-function/1.txt
202
+ h3_toparent: [{ name: "H3_ToParent", params: [{ name: "index" }, { name: "resolution" }], origin: "harvested" }], // H3_ToParent-function/1.txt
203
+ hll: [{ name: "HLL", params: [{ name: "aggregate_expression" }], origin: "harvested" }], // r_HLL_function/1.txt
204
+ hll_cardinality: [{ name: "HLL_CARDINALITY", params: [{ name: "hllsketch_expression" }], origin: "harvested" }], // r_HLL_CARDINALITY/1.txt
205
+ hll_combine: [{ name: "HLL_COMBINE", params: [{ name: "hllsketch_expression" }], origin: "harvested" }], // r_HLL_COMBINE/1.txt
206
+ hll_combine_sketches: [
207
+ {
208
+ name: "HLL_COMBINE_SKETCHES",
209
+ params: [{ name: "hllsketch_expression1" }, { name: "hllsketch_expression2" }],
210
+ origin: "harvested",
211
+ },
212
+ ], // r_HLL_COMBINE_SKETCHES/1.txt
213
+ hll_create_sketch: [{ name: "HLL_CREATE_SKETCH", params: [{ name: "aggregate_expression" }], origin: "harvested" }], // r_HLL_CREATE_SKETCH/1.txt
214
+ initcap: [{ name: "INITCAP", params: [{ name: "string" }], origin: "harvested" }], // r_INITCAP/1.txt
215
+ interval_cmp: [
216
+ { name: "INTERVAL_CMP", params: [{ name: "interval1" }, { name: "interval2" }], origin: "harvested" },
217
+ ], // r_INTERVAL_CMP/1.txt
218
+ is_array: [{ name: "IS_ARRAY", params: [{ name: "super_expression" }], origin: "harvested" }], // r_is_array/1.txt
219
+ is_bigint: [{ name: "IS_BIGINT", params: [{ name: "super_expression" }], origin: "harvested" }], // r_is_bigint/1.txt
220
+ is_boolean: [{ name: "IS_BOOLEAN", params: [{ name: "super_expression" }], origin: "harvested" }], // r_is_boolean/1.txt
221
+ is_char: [{ name: "IS_CHAR", params: [{ name: "super_expression" }], origin: "harvested" }], // r_is_char/1.txt
222
+ is_decimal: [{ name: "IS_DECIMAL", params: [{ name: "super_expression" }], origin: "harvested" }], // r_is_decimal/1.txt
223
+ is_float: [{ name: "IS_FLOAT", params: [{ name: "super_expression" }], origin: "harvested" }], // r_is_float/1.txt
224
+ is_integer: [{ name: "IS_INTEGER", params: [{ name: "super_expression" }], origin: "harvested" }], // r_is_integer/1.txt
225
+ is_object: [{ name: "IS_OBJECT", params: [{ name: "super_expression" }], origin: "harvested" }], // r_is_object/1.txt
226
+ is_scalar: [{ name: "IS_SCALAR", params: [{ name: "super_expression" }], origin: "harvested" }], // r_is_scalar/1.txt
227
+ is_smallint: [{ name: "IS_SMALLINT", params: [{ name: "super_expression" }], origin: "harvested" }], // r_is_smallint/1.txt
228
+ is_valid_json: [{ name: "IS_VALID_JSON", params: [{ name: "json_string" }], origin: "harvested" }], // IS_VALID_JSON/1.txt
229
+ is_valid_json_array: [{ name: "IS_VALID_JSON_ARRAY", params: [{ name: "json_array" }], origin: "harvested" }], // IS_VALID_JSON_ARRAY/1.txt
230
+ is_varchar: [{ name: "IS_VARCHAR", params: [{ name: "super_expression" }], origin: "harvested" }], // r_is_varchar/1.txt
231
+ json_array_length: [
232
+ {
233
+ name: "JSON_ARRAY_LENGTH",
234
+ params: [{ name: "json_array" }, { name: "null_if_invalid", optional: true }],
235
+ origin: "harvested",
236
+ },
237
+ ], // JSON_ARRAY_LENGTH/1.txt
238
+ json_extract_path_text: [
239
+ {
240
+ name: "JSON_EXTRACT_PATH_TEXT",
241
+ params: [
242
+ { name: "json_string" },
243
+ { name: "path_elem" },
244
+ { name: "path_elem", optional: true },
245
+ { name: "null_if_invalid", optional: true },
246
+ ],
247
+ variadic: true,
248
+ origin: "harvested",
249
+ },
250
+ ], // JSON_EXTRACT_PATH_TEXT/1.txt
251
+ json_serialize: [{ name: "JSON_SERIALIZE", params: [{ name: "super_expression" }], origin: "harvested" }], // JSON_SERIALIZE/1.txt
252
+ json_serialize_to_varbyte: [
253
+ { name: "JSON_SERIALIZE_TO_VARBYTE", params: [{ name: "super_expression" }], origin: "harvested" },
254
+ ], // JSON_SERIALIZE_TO_VARBYTE/1.txt
255
+ json_size: [{ name: "JSON_SIZE", params: [{ name: "super_expression" }], origin: "harvested" }], // r_json_size/1.txt
256
+ json_typeof: [{ name: "JSON_TYPEOF", params: [{ name: "super_expression" }], origin: "harvested" }], // r_json_typeof/1.txt
257
+ last_user_query_id: [{ name: "last_user_query_id", params: [], origin: "harvested" }], // LAST_USER_QUERY_ID/1.txt
258
+ least: [{ name: "LEAST", params: [{ name: "value" }], variadic: true, origin: "harvested" }], // r_GREATEST_LEAST/1.txt
259
+ left: [{ name: "LEFT", params: [{ name: "string" }, { name: "integer" }], origin: "harvested" }], // r_LEFT/1.txt
260
+ len: [{ name: "LEN", params: [{ name: "expression" }], origin: "harvested" }], // r_LEN/1.txt
261
+ listagg: [
262
+ {
263
+ name: "LISTAGG",
264
+ params: [{ name: "aggregate_expression" }, { name: "delimiter", optional: true }],
265
+ origin: "harvested",
266
+ },
267
+ {
268
+ name: "LISTAGG",
269
+ params: [{ name: "expression" }, { name: "delimiter", optional: true }],
270
+ origin: "harvested",
271
+ },
272
+ ], // r_LISTAGG/1.txt, r_WF_LISTAGG/1.txt
273
+ ln: [{ name: "LN", params: [{ name: "expression" }], origin: "harvested" }], // r_LN/1.txt
274
+ lower: [{ name: "LOWER", params: [{ name: "string" }], origin: "harvested" }], // r_LOWER/1.txt
275
+ lower_attribute_names: [
276
+ { name: "LOWER_ATTRIBUTE_NAMES", params: [{ name: "super_expression" }], origin: "harvested" },
277
+ ], // r_lower_attribute_names/1.txt
278
+ lpad: [
279
+ {
280
+ name: "LPAD",
281
+ params: [
282
+ { name: "string", type: "string" },
283
+ { name: "length", type: "integer" },
284
+ { name: "pad", type: "string", optional: true },
285
+ ],
286
+ origin: "curated",
287
+ },
288
+ ], // curated: LPAD function (pad optional)
289
+ ltrim: [
290
+ { name: "LTRIM", params: [{ name: "string" }, { name: "trim_chars", optional: true }], origin: "harvested" },
291
+ ], // r_LTRIM/1.txt
292
+ max: [{ name: "MAX", params: [{ name: "expression" }], origin: "harvested" }], // r_MAX/1.txt
293
+ md5: [{ name: "MD5", params: [{ name: "string" }], origin: "harvested" }], // r_MD5/1.txt
294
+ median: [{ name: "MEDIAN", params: [{ name: "median_expression" }], origin: "harvested" }], // r_MEDIAN/1.txt
295
+ min: [{ name: "MIN", params: [{ name: "expression" }], origin: "harvested" }], // r_MIN/1.txt
296
+ mod: [{ name: "MOD", params: [{ name: "number1" }, { name: "number2" }], origin: "harvested" }], // r_MOD/1.txt
297
+ months_between: [{ name: "MONTHS_BETWEEN", params: [{ name: "date1" }, { name: "date2" }], origin: "harvested" }], // r_MONTHS_BETWEEN_function/1.txt
298
+ murmur3_32_hash: [
299
+ { name: "MURMUR3_32_HASH", params: [{ name: "value" }, { name: "seed", optional: true }], origin: "harvested" },
300
+ ], // MURMUR3_32_HASH/1.txt
301
+ ntile: [{ name: "NTILE", params: [{ name: "expr" }], origin: "harvested" }], // r_WF_NTILE/1.txt
302
+ nullif: [{ name: "NULLIF", params: [{ name: "expression1" }, { name: "expression2" }], origin: "harvested" }], // r_NULLIF_function/1.txt
303
+ nvl: [
304
+ { name: "NVL", params: [{ name: "expression" }, { name: "expression" }], variadic: true, origin: "harvested" },
305
+ ], // r_NVL_function/1.txt
306
+ nvl2: [
307
+ {
308
+ name: "NVL2",
309
+ params: [{ name: "expression" }, { name: "not_null_return_value" }, { name: "null_return_value" }],
310
+ origin: "harvested",
311
+ },
312
+ ], // r_NVL2/1.txt
313
+ octet_length: [{ name: "OCTET_LENGTH", params: [{ name: "expression" }], origin: "harvested" }], // r_OCTET_LENGTH/1.txt
314
+ octetindex: [{ name: "OCTETINDEX", params: [{ name: "substring" }, { name: "string" }], origin: "harvested" }], // OCTETINDEX/1.txt
315
+ percent_rank: [{ name: "PERCENT_RANK", params: [], origin: "harvested" }], // r_WF_PERCENT_RANK/1.txt
316
+ pg_backend_pid: [{ name: "pg_backend_pid", params: [], origin: "harvested" }], // PG_BACKEND_PID/1.txt
317
+ pg_cancel_backend: [{ name: "pg_cancel_backend", params: [{ name: "pid" }], origin: "harvested" }], // PG_CANCEL_BACKEND/1.txt
318
+ pg_get_cols: [{ name: "pg_get_cols", params: [{ name: "name" }], origin: "harvested" }], // PG_GET_COLS/1.txt
319
+ pg_get_grantee_by_iam_role: [
320
+ { name: "pg_get_grantee_by_iam_role", params: [{ name: "iam_role_arn" }], origin: "harvested" },
321
+ ], // PG_GET_GRANTEE_BY_IAMROLE/1.txt
322
+ pg_get_iam_role_by_user: [{ name: "pg_get_iam_role_by_user", params: [{ name: "name" }], origin: "harvested" }], // PG_GET_IAM_ROLE_BY_USER/1.txt
323
+ pg_get_late_binding_view_cols: [{ name: "pg_get_late_binding_view_cols", params: [], origin: "harvested" }], // PG_GET_LATE_BINDING_VIEW_COLS/1.txt
324
+ pg_get_session_roles: [{ name: "pg_get_session_roles", params: [], origin: "harvested" }], // PG_GET_SESSION_ROLES/1.txt
325
+ pg_last_copy_count: [{ name: "pg_last_copy_count", params: [], origin: "harvested" }], // PG_LAST_COPY_COUNT/1.txt
326
+ pg_last_copy_id: [{ name: "pg_last_copy_id", params: [], origin: "harvested" }], // PG_LAST_COPY_ID/1.txt
327
+ pg_last_query_id: [{ name: "pg_last_query_id", params: [], origin: "harvested" }], // PG_LAST_QUERY_ID/1.txt
328
+ pg_last_unload_count: [{ name: "pg_last_unload_count", params: [], origin: "harvested" }], // PG_LAST_UNLOAD_COUNT/1.txt
329
+ pg_last_unload_id: [{ name: "PG_LAST_UNLOAD_ID", params: [], origin: "harvested" }], // PG_LAST_UNLOAD_ID/1.txt
330
+ pg_terminate_backend: [{ name: "pg_terminate_backend", params: [{ name: "pid" }], origin: "harvested" }], // PG_TERMINATE_BACKEND/1.txt
331
+ pi: [{ name: "PI", params: [], origin: "harvested" }], // r_PI/1.txt
332
+ power: [
333
+ {
334
+ name: "POWER",
335
+ params: [
336
+ { name: "base", type: "numeric" },
337
+ { name: "exponent", type: "numeric" },
338
+ ],
339
+ origin: "curated",
340
+ },
341
+ ], // curated: POWER function
342
+ quote_ident: [{ name: "QUOTE_IDENT", params: [{ name: "string" }], origin: "harvested" }], // r_QUOTE_IDENT/1.txt
343
+ quote_literal: [{ name: "QUOTE_LITERAL", params: [{ name: "string" }], origin: "harvested" }], // r_QUOTE_LITERAL/1.txt
344
+ radians: [{ name: "RADIANS", params: [{ name: "number" }], origin: "harvested" }], // r_RADIANS/1.txt
345
+ random: [{ name: "RANDOM", params: [], origin: "harvested" }], // r_RANDOM/1.txt
346
+ ratio_to_report: [{ name: "RATIO_TO_REPORT", params: [{ name: "ratio_expression" }], origin: "harvested" }], // r_WF_RATIO_TO_REPORT/1.txt
347
+ regexp_count: [
348
+ {
349
+ name: "REGEXP_COUNT",
350
+ params: [
351
+ { name: "source_string" },
352
+ { name: "pattern" },
353
+ { name: "position", optional: true },
354
+ { name: "parameters", optional: true },
355
+ ],
356
+ origin: "harvested",
357
+ },
358
+ ], // REGEXP_COUNT/1.txt
359
+ regexp_replace: [
360
+ {
361
+ name: "REGEXP_REPLACE",
362
+ params: [
363
+ { name: "source_string" },
364
+ { name: "pattern" },
365
+ { name: "replace_string", optional: true },
366
+ { name: "position", optional: true },
367
+ { name: "parameters", optional: true },
368
+ ],
369
+ origin: "harvested",
370
+ },
371
+ ], // REGEXP_REPLACE/1.txt
372
+ regexp_substr: [
373
+ {
374
+ name: "REGEXP_SUBSTR",
375
+ params: [
376
+ { name: "source_string" },
377
+ { name: "pattern" },
378
+ { name: "position", optional: true },
379
+ { name: "occurrence", optional: true },
380
+ { name: "parameters", optional: true },
381
+ ],
382
+ origin: "harvested",
383
+ },
384
+ ], // REGEXP_SUBSTR/1.txt
385
+ repeat: [{ name: "REPEAT", params: [{ name: "string" }, { name: "integer" }], origin: "harvested" }], // r_REPEAT/1.txt
386
+ replace: [
387
+ {
388
+ name: "REPLACE",
389
+ params: [{ name: "string" }, { name: "old_chars" }, { name: "new_chars" }],
390
+ origin: "harvested",
391
+ },
392
+ ], // r_REPLACE/1.txt
393
+ reverse: [{ name: "REVERSE", params: [{ name: "expression" }], origin: "harvested" }], // r_REVERSE/1.txt
394
+ right: [{ name: "RIGHT", params: [{ name: "string" }, { name: "integer" }], origin: "harvested" }], // r_LEFT/1.txt
395
+ role_is_member_of: [
396
+ {
397
+ name: "role_is_member_of",
398
+ params: [{ name: "role_name" }, { name: "granted_role_name" }],
399
+ origin: "harvested",
400
+ },
401
+ ], // r_ROLE_IS_MEMBER_OF/1.txt
402
+ round: [{ name: "ROUND", params: [{ name: "number" }, { name: "integer", optional: true }], origin: "harvested" }], // r_ROUND/1.txt
403
+ rpad: [
404
+ {
405
+ name: "RPAD",
406
+ params: [
407
+ { name: "string", type: "string" },
408
+ { name: "length", type: "integer" },
409
+ { name: "pad", type: "string", optional: true },
410
+ ],
411
+ origin: "curated",
412
+ },
413
+ ], // curated: RPAD function (pad optional)
414
+ rtrim: [
415
+ {
416
+ name: "RTRIM",
417
+ params: [
418
+ { name: "string", type: "string" },
419
+ { name: "trim_chars", type: "string", optional: true },
420
+ ],
421
+ origin: "curated",
422
+ },
423
+ ], // curated: RTRIM function - trim_chars optional per the Arguments section and the corpus's 1-arg calls (r_RTRIM/1.sql), though the Syntax line omits the brackets
424
+ set_config: [
425
+ {
426
+ name: "SET_CONFIG",
427
+ params: [{ name: "parameter" }, { name: "new_value" }, { name: "is_local" }],
428
+ origin: "harvested",
429
+ },
430
+ {
431
+ name: "set_config",
432
+ params: [{ name: "variable_name" }, { name: "new_value" }, { name: "is_local" }],
433
+ origin: "harvested",
434
+ },
435
+ ], // r_SET_CONFIG/1.txt, r_SET_CONFIG/2.txt
436
+ sha1: [{ name: "SHA1", params: [{ name: "string" }], origin: "harvested" }], // SHA1/1.txt
437
+ sha2: [{ name: "SHA2", params: [{ name: "string" }, { name: "bits" }], origin: "harvested" }], // SHA2/1.txt
438
+ sign: [{ name: "SIGN", params: [{ name: "number" }], origin: "harvested" }], // r_SIGN/1.txt
439
+ sin: [{ name: "SIN", params: [{ name: "number" }], origin: "harvested" }], // r_SIN/1.txt
440
+ size: [{ name: "SIZE", params: [{ name: "super_expression" }], origin: "harvested" }], // r_SIZE/1.txt
441
+ slice_num: [{ name: "SLICE_NUM", params: [], origin: "harvested" }], // r_SLICE_NUM/1.txt
442
+ soundex: [{ name: "SOUNDEX", params: [{ name: "string" }], origin: "harvested" }], // SOUNDEX/1.txt
443
+ split_part: [
444
+ {
445
+ name: "SPLIT_PART",
446
+ params: [
447
+ { name: "string", type: "string" },
448
+ { name: "delimiter", type: "string" },
449
+ { name: "part", type: "integer" },
450
+ ],
451
+ origin: "curated",
452
+ },
453
+ ], // curated: SPLIT_PART function
454
+ split_to_array: [
455
+ { name: "SPLIT_TO_ARRAY", params: [{ name: "string" }, { name: "delimiter" }], origin: "harvested" },
456
+ ], // split_to_array/1.txt
457
+ sqrt: [{ name: "SQRT", params: [{ name: "expression" }], origin: "harvested" }], // r_SQRT/1.txt
458
+ st_addpoint: [
459
+ {
460
+ name: "ST_AddPoint",
461
+ params: [{ name: "geom1" }, { name: "geom2" }, { name: "index", optional: true }],
462
+ origin: "harvested",
463
+ },
464
+ ], // ST_AddPoint-function/2.txt
465
+ st_angle: [
466
+ {
467
+ name: "ST_Angle",
468
+ params: [{ name: "geom1" }, { name: "geom2" }, { name: "geom3" }, { name: "geom4", optional: true }],
469
+ origin: "harvested",
470
+ },
471
+ ], // ST_Angle-function/2.txt
472
+ st_area: [{ name: "ST_Area", params: [{ name: "geo" }], origin: "harvested" }], // ST_Area-function/1.txt
473
+ st_asbinary: [{ name: "ST_AsBinary", params: [{ name: "geom" }], origin: "harvested" }], // ST_AsBinary-function/1.txt
474
+ st_asewkb: [{ name: "ST_AsEWKB", params: [{ name: "geom" }], origin: "harvested" }], // ST_AsEWKB-function/1.txt
475
+ st_asewkt: [
476
+ { name: "ST_AsEWKT", params: [{ name: "geo" }, { name: "precision", optional: true }], origin: "harvested" },
477
+ ], // ST_AsEWKT-function/2.txt
478
+ st_asgeojson: [
479
+ { name: "ST_AsGeoJSON", params: [{ name: "geo" }, { name: "precision", optional: true }], origin: "harvested" },
480
+ ], // ST_AsGeoJSON-function/2.txt
481
+ st_ashexewkb: [{ name: "ST_AsHexEWKB", params: [{ name: "geo" }], origin: "harvested" }], // ST_AsHexEWKB-function/1.txt
482
+ st_ashexwkb: [{ name: "ST_AsHexWKB", params: [{ name: "geo" }], origin: "harvested" }], // ST_AsHexWKB-function/1.txt
483
+ st_astext: [
484
+ { name: "ST_AsText", params: [{ name: "geo" }, { name: "precision", optional: true }], origin: "harvested" },
485
+ ], // ST_AsText-function/2.txt
486
+ st_azimuth: [{ name: "ST_Azimuth", params: [{ name: "point1" }, { name: "point2" }], origin: "harvested" }], // ST_Azimuth-function/1.txt
487
+ st_boundary: [{ name: "ST_Boundary", params: [{ name: "geom" }], origin: "harvested" }], // ST_Boundary-function/1.txt
488
+ st_buffer: [
489
+ {
490
+ name: "ST_Buffer",
491
+ params: [
492
+ { name: "geom" },
493
+ { name: "distance" },
494
+ { name: "number_of_segments_per_quarter_circle", optional: true },
495
+ ],
496
+ origin: "harvested",
497
+ },
498
+ ], // ST_Buffer-function/2.txt
499
+ st_centroid: [{ name: "ST_Centroid", params: [{ name: "geom" }], origin: "harvested" }], // ST_Centroid-function/1.txt
500
+ st_collect: [
501
+ { name: "ST_Collect", params: [{ name: "geom1" }, { name: "geom2" }], origin: "curated" },
502
+ { name: "ST_Collect", params: [{ name: "aggregate_expression" }], origin: "curated" },
503
+ ], // curated: ST_Collect(geom1, geom2) scalar and ST_Collect(aggregate_expression) WITHIN GROUP aggregate - ST_Collect-function, corpus 1-arg calls in ST_Collect-function/2.sql and 3.sql
504
+ st_contains: [{ name: "ST_Contains", params: [{ name: "geom1" }, { name: "geom2" }], origin: "harvested" }], // ST_Contains-function/1.txt
505
+ st_containsproperly: [
506
+ { name: "ST_ContainsProperly", params: [{ name: "geom1" }, { name: "geom2" }], origin: "harvested" },
507
+ ], // ST_ContainsProperly-function/1.txt
508
+ st_convexhull: [{ name: "ST_ConvexHull", params: [{ name: "geom" }], origin: "harvested" }], // ST_ConvexHull-function/1.txt
509
+ st_coveredby: [{ name: "ST_CoveredBy", params: [{ name: "geom1" }, { name: "geom2" }], origin: "harvested" }], // ST_CoveredBy-function/1.txt
510
+ st_covers: [{ name: "ST_Covers", params: [{ name: "geom1" }, { name: "geom2" }], origin: "harvested" }], // ST_Covers-function/1.txt
511
+ st_crosses: [{ name: "ST_Crosses", params: [{ name: "geom1" }, { name: "geom2" }], origin: "harvested" }], // ST_Crosses-function/1.txt
512
+ st_dimension: [{ name: "ST_Dimension", params: [{ name: "geom" }], origin: "harvested" }], // ST_Dimension-function/1.txt
513
+ st_disjoint: [{ name: "ST_Disjoint", params: [{ name: "geom1" }, { name: "geom2" }], origin: "harvested" }], // ST_Disjoint-function/1.txt
514
+ st_distance: [{ name: "ST_Distance", params: [{ name: "geo1" }, { name: "geo2" }], origin: "harvested" }], // ST_Distance-function/1.txt
515
+ st_distancesphere: [
516
+ {
517
+ name: "ST_DistanceSphere",
518
+ params: [{ name: "geom1" }, { name: "geom2" }, { name: "radius", optional: true }],
519
+ origin: "harvested",
520
+ },
521
+ ], // ST_DistanceSphere-function/2.txt
522
+ st_dwithin: [
523
+ {
524
+ name: "ST_DWithin",
525
+ params: [{ name: "geom1" }, { name: "geom2" }, { name: "threshold" }],
526
+ origin: "harvested",
527
+ },
528
+ ], // ST_DWithin-function/1.txt
529
+ st_endpoint: [{ name: "ST_EndPoint", params: [{ name: "geom" }], origin: "harvested" }], // ST_EndPoint-function/1.txt
530
+ st_envelope: [{ name: "ST_Envelope", params: [{ name: "geom" }], origin: "harvested" }], // ST_Envelope-function/1.txt
531
+ st_equals: [{ name: "ST_Equals", params: [{ name: "geom1" }, { name: "geom2" }], origin: "harvested" }], // ST_Equals-function/1.txt
532
+ st_exteriorring: [{ name: "ST_ExteriorRing", params: [{ name: "geom" }], origin: "harvested" }], // ST_ExteriorRing-function/1.txt
533
+ st_force2d: [{ name: "ST_Force2D", params: [{ name: "geom" }], origin: "harvested" }], // ST_Force2D-function/1.txt
534
+ st_force3dm: [{ name: "ST_Force3DM", params: [{ name: "geom" }], origin: "harvested" }], // ST_Force3DM-function/1.txt
535
+ st_force3dz: [{ name: "ST_Force3DZ", params: [{ name: "geom" }], origin: "harvested" }], // ST_Force3DZ-function/1.txt
536
+ st_force4d: [{ name: "ST_Force4D", params: [{ name: "geom" }], origin: "harvested" }], // ST_Force4D-function/1.txt
537
+ st_geogfromtext: [{ name: "ST_GeogFromText", params: [{ name: "wkt_string" }], origin: "harvested" }], // ST_GeogFromText-function/1.txt
538
+ st_geogfromwkb: [{ name: "ST_GeogFromWKB", params: [{ name: "wkb_string" }], origin: "harvested" }], // ST_GeogFromWKB-function/1.txt
539
+ st_geohash: [
540
+ { name: "ST_GeoHash", params: [{ name: "geom" }, { name: "precision", optional: true }], origin: "harvested" },
541
+ ], // ST_GeoHash-function/2.txt
542
+ st_geometryn: [{ name: "ST_GeometryN", params: [{ name: "geom" }, { name: "index" }], origin: "harvested" }], // ST_GeometryN-function/1.txt
543
+ st_geometrytype: [{ name: "ST_GeometryType", params: [{ name: "geom" }], origin: "harvested" }], // ST_GeometryType-function/1.txt
544
+ st_geomfromewkb: [{ name: "ST_GeomFromEWKB", params: [{ name: "ewkb_string" }], origin: "harvested" }], // ST_GeomFromEWKB-function/1.txt
545
+ st_geomfromewkt: [{ name: "ST_GeomFromEWKT", params: [{ name: "ewkt_string" }], origin: "harvested" }], // ST_GeomFromEWKT-function/1.txt
546
+ st_geomfromgeohash: [
547
+ {
548
+ name: "ST_GeomFromGeoHash",
549
+ params: [{ name: "geohash_string" }, { name: "precision", optional: true }],
550
+ origin: "harvested",
551
+ },
552
+ ], // ST_GeomFromGeoHash-function/2.txt
553
+ st_geomfromgeojson: [{ name: "ST_GeomFromGeoJSON", params: [{ name: "geojson_string" }], origin: "harvested" }], // ST_GeomFromGeoJSON-function/1.txt
554
+ st_geomfromgeosquare: [
555
+ {
556
+ name: "ST_GeomFromGeoSquare",
557
+ params: [{ name: "geosquare" }, { name: "max_depth", optional: true }],
558
+ origin: "harvested",
559
+ },
560
+ ], // ST_GeomFromGeoSquare-function/2.txt
561
+ st_geomfromtext: [
562
+ {
563
+ name: "ST_GeomFromText",
564
+ params: [{ name: "wkt_string" }, { name: "srid", optional: true }],
565
+ origin: "harvested",
566
+ },
567
+ ], // ST_GeomFromText-function/2.txt
568
+ st_geomfromwkb: [
569
+ {
570
+ name: "ST_GeomFromWKB",
571
+ params: [{ name: "wkb_string" }, { name: "srid", optional: true }],
572
+ origin: "harvested",
573
+ },
574
+ ], // ST_GeomFromWKB-function/2.txt
575
+ st_geosquare: [
576
+ {
577
+ name: "ST_GeoSquare",
578
+ params: [{ name: "geom" }, { name: "max_depth", optional: true }],
579
+ origin: "harvested",
580
+ },
581
+ ], // ST_GeoSquare-function/2.txt
582
+ st_interiorringn: [
583
+ { name: "ST_InteriorRingN", params: [{ name: "geom" }, { name: "index" }], origin: "harvested" },
584
+ ], // ST_InteriorRingN-function/1.txt
585
+ st_intersection: [{ name: "ST_Intersection", params: [{ name: "geom1" }, { name: "geom2" }], origin: "harvested" }], // ST_Intersection-function/1.txt
586
+ st_intersects: [{ name: "ST_Intersects", params: [{ name: "geom1" }, { name: "geom2" }], origin: "harvested" }], // ST_Intersects-function/1.txt
587
+ st_isclosed: [{ name: "ST_IsClosed", params: [{ name: "geom" }], origin: "harvested" }], // ST_IsClosed-function/1.txt
588
+ st_iscollection: [{ name: "ST_IsCollection", params: [{ name: "geom" }], origin: "harvested" }], // ST_IsCollection-function/1.txt
589
+ st_isempty: [{ name: "ST_IsEmpty", params: [{ name: "geom" }], origin: "harvested" }], // ST_IsEmpty-function/1.txt
590
+ st_ispolygonccw: [{ name: "ST_IsPolygonCCW", params: [{ name: "geom" }], origin: "harvested" }], // ST_IsPolygonCCW-function/1.txt
591
+ st_ispolygoncw: [{ name: "ST_IsPolygonCW", params: [{ name: "geom" }], origin: "harvested" }], // ST_IsPolygonCW-function/1.txt
592
+ st_isring: [{ name: "ST_IsRing", params: [{ name: "geom" }], origin: "harvested" }], // ST_IsRing-function/1.txt
593
+ st_issimple: [{ name: "ST_IsSimple", params: [{ name: "geom" }], origin: "harvested" }], // ST_IsSimple-function/1.txt
594
+ st_isvalid: [{ name: "ST_IsValid", params: [{ name: "geom" }], origin: "harvested" }], // ST_IsValid-function/1.txt
595
+ st_length: [{ name: "ST_Length", params: [{ name: "geo" }], origin: "harvested" }], // ST_Length-function/1.txt
596
+ st_lengthsphere: [{ name: "ST_LengthSphere", params: [{ name: "geom" }], origin: "harvested" }], // ST_LengthSphere-function/1.txt
597
+ st_linefrommultipoint: [{ name: "ST_LineFromMultiPoint", params: [{ name: "geom" }], origin: "harvested" }], // ST_LineFromMultiPoint-function/1.txt
598
+ st_lineinterpolatepoint: [
599
+ { name: "ST_LineInterpolatePoint", params: [{ name: "geom" }, { name: "fraction" }], origin: "harvested" },
600
+ ], // ST_LineInterpolatePoint-function/1.txt
601
+ st_m: [{ name: "ST_M", params: [{ name: "point" }], origin: "harvested" }], // ST_M-function/1.txt
602
+ st_makeenvelope: [
603
+ {
604
+ name: "ST_MakeEnvelope",
605
+ params: [
606
+ { name: "xmin" },
607
+ { name: "ymin" },
608
+ { name: "xmax" },
609
+ { name: "ymax" },
610
+ { name: "srid", optional: true },
611
+ ],
612
+ origin: "harvested",
613
+ },
614
+ ], // ST_MakeEnvelope-function/2.txt
615
+ st_makeline: [{ name: "ST_MakeLine", params: [{ name: "geom1" }, { name: "geom2" }], origin: "harvested" }], // ST_MakeLine-function/1.txt
616
+ st_makepoint: [
617
+ {
618
+ name: "ST_MakePoint",
619
+ params: [{ name: "x" }, { name: "y" }, { name: "z", optional: true }, { name: "m", optional: true }],
620
+ origin: "harvested",
621
+ },
622
+ ], // ST_MakePoint-function/3.txt
623
+ st_makepolygon: [
624
+ { name: "ST_MakePolygon", params: [{ name: "geom1" }, { name: "geom2", optional: true }], origin: "harvested" },
625
+ ], // ST_MakePolygon-function/2.txt
626
+ st_memsize: [{ name: "ST_MemSize", params: [{ name: "geom" }], origin: "harvested" }], // ST_MemSize-function/1.txt
627
+ st_mmax: [{ name: "ST_MMax", params: [{ name: "geom" }], origin: "harvested" }], // ST_MMax-function/1.txt
628
+ st_mmin: [{ name: "ST_MMin", params: [{ name: "geom" }], origin: "harvested" }], // ST_MMin-function/1.txt
629
+ st_multi: [{ name: "ST_Multi", params: [{ name: "geom" }], origin: "harvested" }], // ST_Multi-function/1.txt
630
+ st_ndims: [{ name: "ST_NDims", params: [{ name: "geom" }], origin: "harvested" }], // ST_NDims-function/1.txt
631
+ st_npoints: [{ name: "ST_NPoints", params: [{ name: "geo" }], origin: "harvested" }], // ST_NPoints-function/1.txt
632
+ st_nrings: [{ name: "ST_NRings", params: [{ name: "geom" }], origin: "harvested" }], // ST_NRings-function/1.txt
633
+ st_numgeometries: [{ name: "ST_NumGeometries", params: [{ name: "geom" }], origin: "harvested" }], // ST_NumGeometries-function/1.txt
634
+ st_numinteriorrings: [{ name: "ST_NumInteriorRings", params: [{ name: "geom" }], origin: "harvested" }], // ST_NumInteriorRings-function/1.txt
635
+ st_numpoints: [{ name: "ST_NumPoints", params: [{ name: "geom" }], origin: "harvested" }], // ST_NumPoints-function/1.txt
636
+ st_perimeter: [{ name: "ST_Perimeter", params: [{ name: "geo" }], origin: "harvested" }], // ST_Perimeter-function/1.txt
637
+ st_point: [{ name: "ST_Point", params: [{ name: "x" }, { name: "y" }], origin: "harvested" }], // ST_Point-function/1.txt
638
+ st_pointn: [{ name: "ST_PointN", params: [{ name: "geom" }, { name: "index" }], origin: "harvested" }], // ST_PointN-function/1.txt
639
+ st_points: [{ name: "ST_Points", params: [{ name: "geom" }], origin: "harvested" }], // ST_Points-function/1.txt
640
+ st_polygon: [{ name: "ST_Polygon", params: [{ name: "linestring" }, { name: "srid" }], origin: "harvested" }], // ST_Polygon-function/1.txt
641
+ st_removepoint: [{ name: "ST_RemovePoint", params: [{ name: "geom" }, { name: "index" }], origin: "harvested" }], // ST_RemovePoint-function/1.txt
642
+ st_reverse: [{ name: "ST_Reverse", params: [{ name: "geom" }], origin: "harvested" }], // ST_Reverse-function/1.txt
643
+ st_setpoint: [
644
+ { name: "ST_SetPoint", params: [{ name: "geom1" }, { name: "index" }, { name: "geom2" }], origin: "harvested" },
645
+ ], // ST_SetPoint-function/1.txt
646
+ st_setsrid: [{ name: "ST_SetSRID", params: [{ name: "geom" }, { name: "srid" }], origin: "harvested" }], // ST_SetSRID-function/1.txt
647
+ st_simplify: [{ name: "ST_Simplify", params: [{ name: "geom" }, { name: "tolerance" }], origin: "harvested" }], // ST_Simplify-function/1.txt
648
+ st_srid: [{ name: "ST_SRID", params: [{ name: "geom" }], origin: "harvested" }], // ST_SRID-function/1.txt
649
+ st_startpoint: [{ name: "ST_StartPoint", params: [{ name: "geom" }], origin: "harvested" }], // ST_StartPoint-function/1.txt
650
+ st_touches: [{ name: "ST_Touches", params: [{ name: "geom1" }, { name: "geom2" }], origin: "harvested" }], // ST_Touches-function/1.txt
651
+ st_transform: [{ name: "ST_Transform", params: [{ name: "geom" }, { name: "srid" }], origin: "harvested" }], // ST_Transform-function/1.txt
652
+ st_union: [{ name: "ST_Union", params: [{ name: "geom1" }, { name: "geom2" }], origin: "harvested" }], // ST_Union-function/1.txt
653
+ st_within: [{ name: "ST_Within", params: [{ name: "geom1" }, { name: "geom2" }], origin: "harvested" }], // ST_Within-function/1.txt
654
+ st_x: [{ name: "ST_X", params: [{ name: "point" }], origin: "harvested" }], // ST_X-function/1.txt
655
+ st_xmax: [{ name: "ST_XMax", params: [{ name: "geom" }], origin: "harvested" }], // ST_XMax-function/1.txt
656
+ st_xmin: [{ name: "ST_XMin", params: [{ name: "geom" }], origin: "harvested" }], // ST_XMin-function/1.txt
657
+ st_y: [{ name: "ST_Y", params: [{ name: "point" }], origin: "harvested" }], // ST_Y-function/1.txt
658
+ st_ymax: [{ name: "ST_YMax", params: [{ name: "geom" }], origin: "harvested" }], // ST_YMax-function/1.txt
659
+ st_ymin: [{ name: "ST_YMin", params: [{ name: "geom" }], origin: "harvested" }], // ST_YMin-function/1.txt
660
+ st_z: [{ name: "ST_Z", params: [{ name: "point" }], origin: "harvested" }], // ST_Z-function/1.txt
661
+ st_zmax: [{ name: "ST_ZMax", params: [{ name: "geom" }], origin: "harvested" }], // ST_ZMax-function/1.txt
662
+ st_zmin: [{ name: "ST_ZMin", params: [{ name: "geom" }], origin: "harvested" }], // ST_ZMin-function/1.txt
663
+ stddev_pop: [{ name: "STDDEV_POP", params: [{ name: "expression" }], origin: "harvested" }], // r_STDDEV_functions/1.txt
664
+ strpos: [{ name: "STRPOS", params: [{ name: "string" }, { name: "substring" }], origin: "harvested" }], // r_STRPOS/1.txt
665
+ strtol: [{ name: "STRTOL", params: [{ name: "num_string" }, { name: "base" }], origin: "harvested" }], // r_STRTOL/1.txt
666
+ subarray: [
667
+ {
668
+ name: "SUBARRAY",
669
+ params: [{ name: "super_expr" }, { name: "start_position" }, { name: "length" }],
670
+ origin: "harvested",
671
+ },
672
+ ], // r_subarray/1.txt
673
+ substring: [
674
+ {
675
+ name: "SUBSTRING",
676
+ params: [{ name: "character_string" }, { name: "start_position" }, { name: "number_characters" }],
677
+ origin: "harvested",
678
+ },
679
+ {
680
+ name: "SUBSTRING",
681
+ params: [{ name: "binary_expression" }, { name: "start_byte" }, { name: "number_bytes", optional: true }],
682
+ origin: "harvested",
683
+ },
684
+ ], // r_SUBSTRING/2.txt, r_SUBSTRING/3.txt
685
+ sum: [{ name: "SUM", params: [{ name: "expression" }], origin: "harvested" }], // r_SUM/1.txt
686
+ supportsbbox: [{ name: "SupportsBBox", params: [{ name: "geom" }], origin: "harvested" }], // SupportsBBox-function/1.txt
687
+ tan: [{ name: "TAN", params: [{ name: "number" }], origin: "harvested" }], // r_TAN/1.txt
688
+ text_to_int_alt: [
689
+ {
690
+ name: "TEXT_TO_INT_ALT",
691
+ params: [{ name: "expression" }, { name: "format", optional: true }],
692
+ origin: "harvested",
693
+ },
694
+ ], // r_TEXT_TO_INT_ALT/1.txt
695
+ timeofday: [{ name: "TIMEOFDAY", params: [], origin: "harvested" }], // r_TIMEOFDAY_function/1.txt
696
+ timestamp_cmp: [
697
+ { name: "TIMESTAMP_CMP", params: [{ name: "timestamp1" }, { name: "timestamp2" }], origin: "harvested" },
698
+ ], // r_TIMESTAMP_CMP/1.txt
699
+ timestamp_cmp_date: [
700
+ { name: "TIMESTAMP_CMP_DATE", params: [{ name: "timestamp" }, { name: "date" }], origin: "harvested" },
701
+ ], // r_TIMESTAMP_CMP_DATE/1.txt
702
+ timestamp_cmp_timestamptz: [
703
+ {
704
+ name: "TIMESTAMP_CMP_TIMESTAMPTZ",
705
+ params: [{ name: "timestamp" }, { name: "timestamptz" }],
706
+ origin: "harvested",
707
+ },
708
+ ], // r_TIMESTAMP_CMP_TIMESTAMPTZ/1.txt
709
+ timestamptz_cmp: [
710
+ { name: "TIMESTAMPTZ_CMP", params: [{ name: "timestamptz1" }, { name: "timestamptz2" }], origin: "harvested" },
711
+ ], // r_TIMESTAMPTZ_CMP/1.txt
712
+ timestamptz_cmp_date: [
713
+ { name: "TIMESTAMPTZ_CMP_DATE", params: [{ name: "timestamptz" }, { name: "date" }], origin: "harvested" },
714
+ ], // r_TIMESTAMPTZ_CMP_DATE/1.txt
715
+ timestamptz_cmp_timestamp: [
716
+ {
717
+ name: "TIMESTAMPTZ_CMP_TIMESTAMP",
718
+ params: [{ name: "timestamptz" }, { name: "timestamp" }],
719
+ origin: "harvested",
720
+ },
721
+ ], // r_TIMESTAMPTZ_CMP_TIMESTAMP/1.txt
722
+ to_date: [
723
+ {
724
+ name: "TO_DATE",
725
+ params: [{ name: "string" }, { name: "format" }, { name: "is_strict", optional: true }],
726
+ origin: "harvested",
727
+ },
728
+ ], // r_TO_DATE_function/2.txt
729
+ to_hex: [{ name: "TO_HEX", params: [{ name: "value" }], origin: "harvested" }], // r_TO_HEX/1.txt
730
+ to_number: [{ name: "to_number", params: [{ name: "string" }, { name: "format" }], origin: "harvested" }], // r_TO_NUMBER/1.txt
731
+ to_timestamp: [
732
+ {
733
+ name: "to_timestamp",
734
+ params: [{ name: "timestamp" }, { name: "format" }, { name: "is_strict", optional: true }],
735
+ origin: "harvested",
736
+ },
737
+ ], // r_TO_TIMESTAMP/2.txt
738
+ to_varbyte: [{ name: "TO_VARBYTE", params: [{ name: "string" }, { name: "format" }], origin: "harvested" }], // r_TO_VARBYTE/1.txt
739
+ translate: [
740
+ {
741
+ name: "TRANSLATE",
742
+ params: [{ name: "expression" }, { name: "characters_to_replace" }, { name: "characters_to_substitute" }],
743
+ origin: "harvested",
744
+ },
745
+ ], // r_TRANSLATE/1.txt
746
+ trim: [{ name: "TRIM", params: [{ name: "string", type: "string" }], origin: "curated" }], // curated: TRIM function
747
+ trunc: [
748
+ { name: "TRUNC", params: [{ name: "number" }, { name: "integer", optional: true }], origin: "harvested" },
749
+ { name: "TRUNC", params: [{ name: "timestamp" }], origin: "harvested" },
750
+ ], // r_TRUNC/1.txt, r_TRUNC_date/1.txt
751
+ upper: [{ name: "UPPER", params: [{ name: "string" }], origin: "harvested" }], // r_UPPER/1.txt
752
+ upper_attribute_names: [
753
+ { name: "UPPER_ATTRIBUTE_NAMES", params: [{ name: "super_expression" }], origin: "harvested" },
754
+ ], // r_upper_attribute_names/1.txt
755
+ var_pop: [{ name: "VAR_POP", params: [{ name: "expression" }], origin: "harvested" }], // r_VARIANCE_functions/1.txt
756
+ version: [{ name: "VERSION", params: [], origin: "harvested" }], // r_VERSION/1.txt
757
+ };