duckdb 0.7.2-dev2740.0 → 0.7.2-dev2867.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 (286) hide show
  1. package/binding.gyp +21 -13
  2. package/package.json +1 -1
  3. package/src/duckdb/extension/icu/icu-datepart.cpp +51 -1
  4. package/src/duckdb/extension/icu/icu-strptime.cpp +1 -1
  5. package/src/duckdb/extension/json/include/json_functions.hpp +35 -37
  6. package/src/duckdb/extension/json/include/json_scan.hpp +1 -1
  7. package/src/duckdb/extension/json/include/json_transform.hpp +1 -1
  8. package/src/duckdb/extension/json/json-extension.cpp +10 -20
  9. package/src/duckdb/extension/json/json_functions/copy_json.cpp +2 -2
  10. package/src/duckdb/extension/json/json_functions/json_array_length.cpp +2 -3
  11. package/src/duckdb/extension/json/json_functions/json_contains.cpp +2 -2
  12. package/src/duckdb/extension/json/json_functions/json_create.cpp +20 -20
  13. package/src/duckdb/extension/json/json_functions/json_extract.cpp +4 -6
  14. package/src/duckdb/extension/json/json_functions/json_keys.cpp +2 -3
  15. package/src/duckdb/extension/json/json_functions/json_merge_patch.cpp +2 -2
  16. package/src/duckdb/extension/json/json_functions/json_serialize_sql.cpp +8 -8
  17. package/src/duckdb/extension/json/json_functions/json_structure.cpp +2 -2
  18. package/src/duckdb/extension/json/json_functions/json_transform.cpp +4 -4
  19. package/src/duckdb/extension/json/json_functions/json_type.cpp +2 -3
  20. package/src/duckdb/extension/json/json_functions/json_valid.cpp +2 -2
  21. package/src/duckdb/extension/json/json_functions/read_json.cpp +6 -6
  22. package/src/duckdb/extension/json/json_functions/read_json_objects.cpp +4 -4
  23. package/src/duckdb/extension/json/json_functions.cpp +6 -6
  24. package/src/duckdb/extension/parquet/parquet-extension.cpp +16 -28
  25. package/src/duckdb/src/catalog/catalog_entry/pragma_function_catalog_entry.cpp +1 -2
  26. package/src/duckdb/src/catalog/catalog_entry/scalar_function_catalog_entry.cpp +1 -1
  27. package/src/duckdb/src/catalog/catalog_entry/scalar_macro_catalog_entry.cpp +2 -2
  28. package/src/duckdb/src/catalog/catalog_entry/table_function_catalog_entry.cpp +1 -2
  29. package/src/duckdb/src/catalog/catalog_transaction.cpp +4 -0
  30. package/src/duckdb/src/catalog/duck_catalog.cpp +8 -1
  31. package/src/duckdb/src/common/enums/date_part_specifier.cpp +82 -0
  32. package/src/duckdb/src/common/local_file_system.cpp +1 -3
  33. package/src/duckdb/src/common/multi_file_reader.cpp +11 -8
  34. package/src/duckdb/src/common/types/vector.cpp +136 -3
  35. package/src/duckdb/src/{function → core_functions}/aggregate/algebraic/avg.cpp +9 -12
  36. package/src/duckdb/src/core_functions/aggregate/algebraic/corr.cpp +13 -0
  37. package/src/duckdb/src/core_functions/aggregate/algebraic/covar.cpp +21 -0
  38. package/src/duckdb/src/core_functions/aggregate/algebraic/stddev.cpp +34 -0
  39. package/src/duckdb/src/{function → core_functions}/aggregate/distributive/approx_count.cpp +3 -3
  40. package/src/duckdb/src/{function → core_functions}/aggregate/distributive/arg_min_max.cpp +7 -23
  41. package/src/duckdb/src/{function → core_functions}/aggregate/distributive/bitagg.cpp +10 -10
  42. package/src/duckdb/src/{function → core_functions}/aggregate/distributive/bitstring_agg.cpp +4 -4
  43. package/src/duckdb/src/{function → core_functions}/aggregate/distributive/bool.cpp +1 -17
  44. package/src/duckdb/src/{function → core_functions}/aggregate/distributive/entropy.cpp +5 -4
  45. package/src/duckdb/src/{function → core_functions}/aggregate/distributive/kurtosis.cpp +5 -6
  46. package/src/duckdb/src/{function → core_functions}/aggregate/distributive/minmax.cpp +5 -5
  47. package/src/duckdb/src/{function → core_functions}/aggregate/distributive/product.cpp +2 -11
  48. package/src/duckdb/src/{function → core_functions}/aggregate/distributive/skew.cpp +5 -6
  49. package/src/duckdb/src/{function → core_functions}/aggregate/distributive/string_agg.cpp +4 -6
  50. package/src/duckdb/src/{function → core_functions}/aggregate/distributive/sum.cpp +38 -46
  51. package/src/duckdb/src/{function → core_functions}/aggregate/holistic/approximate_quantile.cpp +4 -5
  52. package/src/duckdb/src/{function → core_functions}/aggregate/holistic/mode.cpp +4 -5
  53. package/src/duckdb/src/{function → core_functions}/aggregate/holistic/quantile.cpp +31 -23
  54. package/src/duckdb/src/{function → core_functions}/aggregate/holistic/reservoir_quantile.cpp +4 -5
  55. package/src/duckdb/src/{function → core_functions}/aggregate/nested/histogram.cpp +4 -4
  56. package/src/duckdb/src/{function → core_functions}/aggregate/nested/list.cpp +6 -10
  57. package/src/duckdb/src/{function → core_functions}/aggregate/regression/regr_avg.cpp +7 -11
  58. package/src/duckdb/src/{function → core_functions}/aggregate/regression/regr_count.cpp +4 -4
  59. package/src/duckdb/src/{function → core_functions}/aggregate/regression/regr_intercept.cpp +5 -8
  60. package/src/duckdb/src/{function → core_functions}/aggregate/regression/regr_r2.cpp +5 -7
  61. package/src/duckdb/src/{function → core_functions}/aggregate/regression/regr_slope.cpp +5 -7
  62. package/src/duckdb/src/{function → core_functions}/aggregate/regression/regr_sxx_syy.cpp +8 -12
  63. package/src/duckdb/src/{function → core_functions}/aggregate/regression/regr_sxy.cpp +6 -8
  64. package/src/duckdb/src/core_functions/core_functions.cpp +50 -0
  65. package/src/duckdb/src/core_functions/function_list.cpp +352 -0
  66. package/src/duckdb/src/{function → core_functions}/scalar/bit/bitstring.cpp +12 -15
  67. package/src/duckdb/src/{function → core_functions}/scalar/blob/base64.cpp +6 -6
  68. package/src/duckdb/src/{function → core_functions}/scalar/blob/encode.cpp +7 -6
  69. package/src/duckdb/src/{function → core_functions}/scalar/date/age.cpp +3 -3
  70. package/src/duckdb/src/{function → core_functions}/scalar/date/current.cpp +8 -8
  71. package/src/duckdb/src/{function → core_functions}/scalar/date/date_diff.cpp +3 -6
  72. package/src/duckdb/src/{function → core_functions}/scalar/date/date_part.cpp +144 -148
  73. package/src/duckdb/src/{function → core_functions}/scalar/date/date_sub.cpp +3 -6
  74. package/src/duckdb/src/{function → core_functions}/scalar/date/date_trunc.cpp +3 -6
  75. package/src/duckdb/src/{function → core_functions}/scalar/date/epoch.cpp +7 -8
  76. package/src/duckdb/src/{function → core_functions}/scalar/date/make_date.cpp +14 -14
  77. package/src/duckdb/src/core_functions/scalar/date/strftime.cpp +251 -0
  78. package/src/duckdb/src/{function → core_functions}/scalar/date/time_bucket.cpp +4 -5
  79. package/src/duckdb/src/{function → core_functions}/scalar/date/to_interval.cpp +39 -19
  80. package/src/duckdb/src/{function/scalar/enum/enum_functions_implementation.cpp → core_functions/scalar/enum/enum_functions.cpp} +18 -22
  81. package/src/duckdb/src/{function → core_functions}/scalar/generic/alias.cpp +4 -4
  82. package/src/duckdb/src/{function → core_functions}/scalar/generic/current_setting.cpp +4 -5
  83. package/src/duckdb/src/{function → core_functions}/scalar/generic/error.cpp +4 -4
  84. package/src/duckdb/src/{function → core_functions}/scalar/generic/hash.cpp +4 -4
  85. package/src/duckdb/src/{function → core_functions}/scalar/generic/least.cpp +8 -9
  86. package/src/duckdb/src/{function → core_functions}/scalar/generic/stats.cpp +4 -4
  87. package/src/duckdb/src/{function/scalar/system → core_functions/scalar/generic}/system_functions.cpp +24 -13
  88. package/src/duckdb/src/{function → core_functions}/scalar/generic/typeof.cpp +4 -4
  89. package/src/duckdb/src/{function → core_functions}/scalar/list/array_slice.cpp +3 -13
  90. package/src/duckdb/src/{function → core_functions}/scalar/list/flatten.cpp +5 -5
  91. package/src/duckdb/src/{function → core_functions}/scalar/list/list_aggregates.cpp +2 -13
  92. package/src/duckdb/src/{function → core_functions}/scalar/list/list_lambdas.cpp +9 -24
  93. package/src/duckdb/src/{function → core_functions}/scalar/list/list_sort.cpp +8 -22
  94. package/src/duckdb/src/{function → core_functions}/scalar/list/list_value.cpp +4 -5
  95. package/src/duckdb/src/{function → core_functions}/scalar/list/range.cpp +8 -6
  96. package/src/duckdb/src/{function → core_functions}/scalar/map/cardinality.cpp +5 -4
  97. package/src/duckdb/src/{function → core_functions}/scalar/map/map.cpp +6 -63
  98. package/src/duckdb/src/{function → core_functions}/scalar/map/map_entries.cpp +5 -4
  99. package/src/duckdb/src/{function → core_functions}/scalar/map/map_extract.cpp +22 -7
  100. package/src/duckdb/src/{function → core_functions}/scalar/map/map_from_entries.cpp +6 -5
  101. package/src/duckdb/src/{function → core_functions}/scalar/map/map_keys_values.cpp +8 -7
  102. package/src/duckdb/src/{function → core_functions}/scalar/math/numeric.cpp +110 -138
  103. package/src/duckdb/src/{function → core_functions}/scalar/operators/bitwise.cpp +19 -20
  104. package/src/duckdb/src/{function/scalar/math → core_functions/scalar/random}/random.cpp +5 -6
  105. package/src/duckdb/src/{function/scalar/math → core_functions/scalar/random}/setseed.cpp +3 -3
  106. package/src/duckdb/src/{function → core_functions}/scalar/string/ascii.cpp +4 -5
  107. package/src/duckdb/src/{function → core_functions}/scalar/string/bar.cpp +4 -4
  108. package/src/duckdb/src/{function → core_functions}/scalar/string/chr.cpp +5 -6
  109. package/src/duckdb/src/{function → core_functions}/scalar/string/damerau_levenshtein.cpp +4 -6
  110. package/src/duckdb/src/{function/scalar/string/mismatches.cpp → core_functions/scalar/string/hamming.cpp} +3 -12
  111. package/src/duckdb/src/{function → core_functions}/scalar/string/hex.cpp +15 -25
  112. package/src/duckdb/src/{function → core_functions}/scalar/string/instr.cpp +6 -13
  113. package/src/duckdb/src/{function → core_functions}/scalar/string/jaccard.cpp +3 -6
  114. package/src/duckdb/src/{function → core_functions}/scalar/string/jaro_winkler.cpp +7 -6
  115. package/src/duckdb/src/{function → core_functions}/scalar/string/left_right.cpp +18 -11
  116. package/src/duckdb/src/{function → core_functions}/scalar/string/levenshtein.cpp +3 -12
  117. package/src/duckdb/src/{function → core_functions}/scalar/string/md5.cpp +15 -21
  118. package/src/duckdb/src/{function → core_functions}/scalar/string/pad.cpp +7 -13
  119. package/src/duckdb/src/{function → core_functions}/scalar/string/printf.cpp +10 -10
  120. package/src/duckdb/src/{function → core_functions}/scalar/string/repeat.cpp +3 -6
  121. package/src/duckdb/src/{function → core_functions}/scalar/string/replace.cpp +4 -7
  122. package/src/duckdb/src/{function → core_functions}/scalar/string/reverse.cpp +3 -3
  123. package/src/duckdb/src/{function → core_functions}/scalar/string/starts_with.cpp +4 -8
  124. package/src/duckdb/src/{function → core_functions}/scalar/string/string_split.cpp +11 -11
  125. package/src/duckdb/src/{function → core_functions}/scalar/string/translate.cpp +4 -7
  126. package/src/duckdb/src/{function → core_functions}/scalar/string/trim.cpp +19 -14
  127. package/src/duckdb/src/core_functions/scalar/string/unicode.cpp +28 -0
  128. package/src/duckdb/src/{function → core_functions}/scalar/struct/struct_insert.cpp +4 -4
  129. package/src/duckdb/src/{function → core_functions}/scalar/struct/struct_pack.cpp +3 -4
  130. package/src/duckdb/src/{function → core_functions}/scalar/union/union_extract.cpp +4 -8
  131. package/src/duckdb/src/{function → core_functions}/scalar/union/union_tag.cpp +4 -8
  132. package/src/duckdb/src/{function → core_functions}/scalar/union/union_value.cpp +4 -59
  133. package/src/duckdb/src/execution/operator/persistent/base_csv_reader.cpp +1 -1
  134. package/src/duckdb/src/execution/operator/persistent/buffered_csv_reader.cpp +1 -1
  135. package/src/duckdb/src/execution/operator/persistent/parallel_csv_reader.cpp +1 -1
  136. package/src/duckdb/src/execution/operator/schema/physical_create_type.cpp +11 -2
  137. package/src/duckdb/src/function/aggregate/distributive_functions.cpp +0 -17
  138. package/src/duckdb/src/function/cast/string_cast.cpp +1 -1
  139. package/src/duckdb/src/function/function.cpp +0 -8
  140. package/src/duckdb/src/function/function_set.cpp +25 -0
  141. package/src/duckdb/src/function/scalar/generic_functions.cpp +1 -9
  142. package/src/duckdb/src/function/scalar/nested_functions.cpp +0 -22
  143. package/src/duckdb/src/function/scalar/operators.cpp +0 -6
  144. package/src/duckdb/src/function/scalar/{date/strftime.cpp → strftime_format.cpp} +1 -249
  145. package/src/duckdb/src/function/scalar/string/length.cpp +0 -19
  146. package/src/duckdb/src/function/scalar/string_functions.cpp +0 -40
  147. package/src/duckdb/src/function/scalar/system/aggregate_export.cpp +5 -0
  148. package/src/duckdb/src/function/table/arrow_conversion.cpp +1 -1
  149. package/src/duckdb/src/function/table/read_csv.cpp +7 -4
  150. package/src/duckdb/src/function/table/system/duckdb_functions.cpp +27 -40
  151. package/src/duckdb/src/function/table/version/pragma_version.cpp +2 -2
  152. package/src/duckdb/src/include/duckdb/catalog/catalog_entry/aggregate_function_catalog_entry.hpp +3 -3
  153. package/src/duckdb/src/include/duckdb/catalog/catalog_entry/function_entry.hpp +33 -0
  154. package/src/duckdb/src/include/duckdb/catalog/catalog_entry/macro_catalog_entry.hpp +2 -2
  155. package/src/duckdb/src/include/duckdb/catalog/catalog_entry/pragma_function_catalog_entry.hpp +2 -2
  156. package/src/duckdb/src/include/duckdb/catalog/catalog_entry/scalar_function_catalog_entry.hpp +2 -2
  157. package/src/duckdb/src/include/duckdb/catalog/catalog_entry/table_function_catalog_entry.hpp +2 -2
  158. package/src/duckdb/src/include/duckdb/catalog/catalog_transaction.hpp +2 -0
  159. package/src/duckdb/src/include/duckdb/common/algorithm.hpp +1 -0
  160. package/src/duckdb/src/include/duckdb/common/multi_file_reader.hpp +5 -4
  161. package/src/duckdb/src/include/duckdb/common/types/vector.hpp +11 -1
  162. package/src/duckdb/src/include/duckdb/{function → core_functions}/aggregate/algebraic/corr.hpp +3 -4
  163. package/src/duckdb/src/include/duckdb/{function → core_functions}/aggregate/algebraic/covar.hpp +1 -1
  164. package/src/duckdb/src/include/duckdb/{function → core_functions}/aggregate/algebraic/stddev.hpp +1 -1
  165. package/src/duckdb/src/include/duckdb/core_functions/aggregate/algebraic_functions.hpp +124 -0
  166. package/src/duckdb/src/include/duckdb/core_functions/aggregate/distributive_functions.hpp +229 -0
  167. package/src/duckdb/src/include/duckdb/core_functions/aggregate/holistic_functions.hpp +85 -0
  168. package/src/duckdb/src/include/duckdb/core_functions/aggregate/nested_functions.hpp +41 -0
  169. package/src/duckdb/src/include/duckdb/{function → core_functions}/aggregate/regression/regr_count.hpp +3 -4
  170. package/src/duckdb/src/include/duckdb/{function → core_functions}/aggregate/regression/regr_slope.hpp +2 -2
  171. package/src/duckdb/src/include/duckdb/core_functions/aggregate/regression_functions.hpp +97 -0
  172. package/src/duckdb/src/include/duckdb/{function → core_functions}/aggregate/sum_helpers.hpp +1 -1
  173. package/src/duckdb/src/include/duckdb/{function/scalar/uuid_functions.hpp → core_functions/core_functions.hpp} +7 -5
  174. package/src/duckdb/src/include/duckdb/core_functions/function_list.hpp +33 -0
  175. package/src/duckdb/src/include/duckdb/core_functions/scalar/bit_functions.hpp +52 -0
  176. package/src/duckdb/src/include/duckdb/core_functions/scalar/blob_functions.hpp +58 -0
  177. package/src/duckdb/src/include/duckdb/core_functions/scalar/date_functions.hpp +544 -0
  178. package/src/duckdb/src/include/duckdb/core_functions/scalar/enum_functions.hpp +61 -0
  179. package/src/duckdb/src/include/duckdb/core_functions/scalar/generic_functions.hpp +142 -0
  180. package/src/duckdb/src/include/duckdb/core_functions/scalar/list_functions.hpp +220 -0
  181. package/src/duckdb/src/include/duckdb/core_functions/scalar/map_functions.hpp +85 -0
  182. package/src/duckdb/src/include/duckdb/core_functions/scalar/math_functions.hpp +394 -0
  183. package/src/duckdb/src/include/duckdb/core_functions/scalar/operators_functions.hpp +70 -0
  184. package/src/duckdb/src/include/duckdb/core_functions/scalar/random_functions.hpp +49 -0
  185. package/src/duckdb/src/include/duckdb/core_functions/scalar/string_functions.hpp +439 -0
  186. package/src/duckdb/src/include/duckdb/core_functions/scalar/struct_functions.hpp +40 -0
  187. package/src/duckdb/src/include/duckdb/core_functions/scalar/union_functions.hpp +43 -0
  188. package/src/duckdb/src/include/duckdb/execution/operator/persistent/base_csv_reader.hpp +1 -1
  189. package/src/duckdb/src/include/duckdb/execution/operator/persistent/csv_reader_options.hpp +1 -1
  190. package/src/duckdb/src/include/duckdb/execution/operator/schema/physical_create_type.hpp +4 -0
  191. package/src/duckdb/src/include/duckdb/function/aggregate/distributive_functions.hpp +0 -85
  192. package/src/duckdb/src/include/duckdb/function/built_in_functions.hpp +0 -8
  193. package/src/duckdb/src/include/duckdb/function/function_set.hpp +7 -2
  194. package/src/duckdb/src/include/duckdb/function/scalar/generic_functions.hpp +1 -36
  195. package/src/duckdb/src/include/duckdb/function/scalar/nested_functions.hpp +0 -120
  196. package/src/duckdb/src/include/duckdb/function/scalar/operators.hpp +0 -24
  197. package/src/duckdb/src/include/duckdb/function/scalar/string_functions.hpp +1 -97
  198. package/src/duckdb/src/include/duckdb/function/table/read_csv.hpp +1 -1
  199. package/src/duckdb/src/include/duckdb/main/database.hpp +1 -0
  200. package/src/duckdb/src/include/duckdb/main/database_manager.hpp +3 -0
  201. package/src/duckdb/src/include/duckdb/main/extension_helper.hpp +0 -2
  202. package/src/duckdb/src/include/duckdb/main/extension_util.hpp +48 -0
  203. package/src/duckdb/src/include/duckdb/parser/parsed_data/create_function_info.hpp +6 -0
  204. package/src/duckdb/src/include/duckdb/parser/tableref/pivotref.hpp +3 -0
  205. package/src/duckdb/src/include/duckdb/parser/transformer.hpp +5 -1
  206. package/src/duckdb/src/main/attached_database.cpp +5 -3
  207. package/src/duckdb/src/main/database.cpp +34 -37
  208. package/src/duckdb/src/main/extension/extension_helper.cpp +1 -0
  209. package/src/duckdb/src/main/extension/extension_load.cpp +61 -38
  210. package/src/duckdb/src/main/extension/extension_util.cpp +90 -0
  211. package/src/duckdb/src/parser/transform/statement/transform_create_function.cpp +1 -4
  212. package/src/duckdb/src/parser/transform/statement/transform_create_view.cpp +2 -4
  213. package/src/duckdb/src/parser/transform/statement/transform_pivot_stmt.cpp +43 -24
  214. package/src/duckdb/src/parser/transform/tableref/transform_pivot.cpp +3 -0
  215. package/src/duckdb/src/planner/binder/statement/bind_create.cpp +17 -28
  216. package/src/duckdb/src/planner/binder/statement/bind_create_table.cpp +6 -7
  217. package/src/duckdb/third_party/fmt/format.cc +0 -5
  218. package/src/duckdb/third_party/fmt/include/fmt/core.h +10 -12
  219. package/src/duckdb/third_party/fmt/include/fmt/format-inl.h +2 -33
  220. package/src/duckdb/third_party/fmt/include/fmt/format.h +61 -24
  221. package/src/duckdb/third_party/fmt/include/fmt/printf.h +15 -1
  222. package/src/duckdb/third_party/libpg_query/include/nodes/parsenodes.hpp +1 -0
  223. package/src/duckdb/third_party/libpg_query/src_backend_parser_gram.cpp +10735 -10674
  224. package/src/duckdb/ub_src_common_enums.cpp +2 -0
  225. package/src/duckdb/ub_src_core_functions.cpp +4 -0
  226. package/src/duckdb/ub_src_core_functions_aggregate_algebraic.cpp +8 -0
  227. package/src/duckdb/ub_src_core_functions_aggregate_distributive.cpp +24 -0
  228. package/src/duckdb/ub_src_core_functions_aggregate_holistic.cpp +8 -0
  229. package/src/duckdb/ub_src_core_functions_aggregate_nested.cpp +4 -0
  230. package/src/duckdb/ub_src_core_functions_aggregate_regression.cpp +14 -0
  231. package/src/duckdb/ub_src_core_functions_scalar_bit.cpp +2 -0
  232. package/src/duckdb/ub_src_core_functions_scalar_blob.cpp +4 -0
  233. package/src/duckdb/ub_src_core_functions_scalar_date.cpp +22 -0
  234. package/src/duckdb/ub_src_core_functions_scalar_enum.cpp +2 -0
  235. package/src/duckdb/ub_src_core_functions_scalar_generic.cpp +16 -0
  236. package/src/duckdb/ub_src_core_functions_scalar_list.cpp +14 -0
  237. package/src/duckdb/ub_src_core_functions_scalar_map.cpp +12 -0
  238. package/src/duckdb/ub_src_core_functions_scalar_math.cpp +2 -0
  239. package/src/duckdb/ub_src_core_functions_scalar_operators.cpp +2 -0
  240. package/src/duckdb/ub_src_core_functions_scalar_random.cpp +4 -0
  241. package/src/duckdb/ub_src_core_functions_scalar_string.cpp +44 -0
  242. package/src/duckdb/ub_src_core_functions_scalar_struct.cpp +4 -0
  243. package/src/duckdb/ub_src_core_functions_scalar_union.cpp +6 -0
  244. package/src/duckdb/ub_src_function_aggregate.cpp +0 -8
  245. package/src/duckdb/ub_src_function_aggregate_distributive.cpp +0 -24
  246. package/src/duckdb/ub_src_function_scalar.cpp +2 -8
  247. package/src/duckdb/ub_src_function_scalar_generic.cpp +0 -14
  248. package/src/duckdb/ub_src_function_scalar_list.cpp +0 -14
  249. package/src/duckdb/ub_src_function_scalar_operators.cpp +0 -2
  250. package/src/duckdb/ub_src_function_scalar_string.cpp +0 -42
  251. package/src/duckdb/ub_src_function_scalar_struct.cpp +0 -4
  252. package/src/duckdb/ub_src_function_scalar_system.cpp +0 -2
  253. package/src/duckdb/ub_src_main_extension.cpp +2 -0
  254. package/src/duckdb/src/function/aggregate/algebraic/corr.cpp +0 -14
  255. package/src/duckdb/src/function/aggregate/algebraic/covar.cpp +0 -25
  256. package/src/duckdb/src/function/aggregate/algebraic/stddev.cpp +0 -54
  257. package/src/duckdb/src/function/aggregate/algebraic_functions.cpp +0 -21
  258. package/src/duckdb/src/function/aggregate/holistic_functions.cpp +0 -12
  259. package/src/duckdb/src/function/aggregate/nested_functions.cpp +0 -10
  260. package/src/duckdb/src/function/aggregate/regression_functions.cpp +0 -21
  261. package/src/duckdb/src/function/scalar/date_functions.cpp +0 -22
  262. package/src/duckdb/src/function/scalar/enum_functions.cpp +0 -13
  263. package/src/duckdb/src/function/scalar/math_functions.cpp +0 -50
  264. package/src/duckdb/src/function/scalar/trigonometrics_functions.cpp +0 -18
  265. package/src/duckdb/src/include/duckdb/function/aggregate/algebraic_functions.hpp +0 -56
  266. package/src/duckdb/src/include/duckdb/function/aggregate/holistic_functions.hpp +0 -33
  267. package/src/duckdb/src/include/duckdb/function/aggregate/nested_functions.hpp +0 -26
  268. package/src/duckdb/src/include/duckdb/function/aggregate/regression_functions.hpp +0 -53
  269. package/src/duckdb/src/include/duckdb/function/scalar/bit_functions.hpp +0 -32
  270. package/src/duckdb/src/include/duckdb/function/scalar/blob_functions.hpp +0 -24
  271. package/src/duckdb/src/include/duckdb/function/scalar/date_functions.hpp +0 -73
  272. package/src/duckdb/src/include/duckdb/function/scalar/enum_functions.hpp +0 -37
  273. package/src/duckdb/src/include/duckdb/function/scalar/math_functions.hpp +0 -137
  274. package/src/duckdb/src/include/duckdb/function/scalar/trigonometric_functions.hpp +0 -49
  275. package/src/duckdb/ub_src_function_aggregate_algebraic.cpp +0 -8
  276. package/src/duckdb/ub_src_function_aggregate_holistic.cpp +0 -8
  277. package/src/duckdb/ub_src_function_aggregate_nested.cpp +0 -4
  278. package/src/duckdb/ub_src_function_aggregate_regression.cpp +0 -14
  279. package/src/duckdb/ub_src_function_scalar_bit.cpp +0 -2
  280. package/src/duckdb/ub_src_function_scalar_blob.cpp +0 -4
  281. package/src/duckdb/ub_src_function_scalar_date.cpp +0 -22
  282. package/src/duckdb/ub_src_function_scalar_enum.cpp +0 -2
  283. package/src/duckdb/ub_src_function_scalar_map.cpp +0 -12
  284. package/src/duckdb/ub_src_function_scalar_math.cpp +0 -6
  285. package/src/duckdb/ub_src_function_scalar_union.cpp +0 -6
  286. /package/src/duckdb/src/include/duckdb/function/scalar/{strftime.hpp → strftime_format.hpp} +0 -0
@@ -0,0 +1,439 @@
1
+ //===----------------------------------------------------------------------===//
2
+ // DuckDB
3
+ //
4
+ // duckdb/core_functions/scalar/string_functions.hpp
5
+ //
6
+ //
7
+ //===----------------------------------------------------------------------===//
8
+ // This file is generated by scripts/generate_functions.py
9
+
10
+ #pragma once
11
+
12
+ #include "duckdb/function/function_set.hpp"
13
+
14
+ namespace duckdb {
15
+
16
+ struct StartsWithOperatorFun {
17
+ static constexpr const char *Name = "^@";
18
+ static constexpr const char *Parameters = "string,search_string";
19
+ static constexpr const char *Description = "Return true if string begins with search_string";
20
+ static constexpr const char *Example = "starts_with('abc','a')";
21
+
22
+ static ScalarFunction GetFunction();
23
+ };
24
+
25
+ struct StartsWithFun {
26
+ using ALIAS = StartsWithOperatorFun;
27
+
28
+ static constexpr const char *Name = "starts_with";
29
+ };
30
+
31
+ struct ASCIIFun {
32
+ static constexpr const char *Name = "ascii";
33
+ static constexpr const char *Parameters = "string";
34
+ static constexpr const char *Description = "Returns an integer that represents the Unicode code point of the first character of the string.";
35
+ static constexpr const char *Example = "ascii('Ω')";
36
+
37
+ static ScalarFunction GetFunction();
38
+ };
39
+
40
+ struct BarFun {
41
+ static constexpr const char *Name = "bar";
42
+ static constexpr const char *Parameters = "x,min,max,width";
43
+ static constexpr const char *Description = "Draw a band whose width is proportional to (x - min) and equal to width characters when x = max. width defaults to 80.";
44
+ static constexpr const char *Example = "bar(5, 0, 20, 10)";
45
+
46
+ static ScalarFunctionSet GetFunctions();
47
+ };
48
+
49
+ struct BinFun {
50
+ static constexpr const char *Name = "bin";
51
+ static constexpr const char *Parameters = "value";
52
+ static constexpr const char *Description = "Converts the value to binary representation";
53
+ static constexpr const char *Example = "bin(42)";
54
+
55
+ static ScalarFunctionSet GetFunctions();
56
+ };
57
+
58
+ struct ToBinaryFun {
59
+ using ALIAS = BinFun;
60
+
61
+ static constexpr const char *Name = "to_binary";
62
+ };
63
+
64
+ struct ChrFun {
65
+ static constexpr const char *Name = "chr";
66
+ static constexpr const char *Parameters = "code_point";
67
+ static constexpr const char *Description = "returns a character which is corresponding the ASCII code value or Unicode code point";
68
+ static constexpr const char *Example = "chr(65)";
69
+
70
+ static ScalarFunction GetFunction();
71
+ };
72
+
73
+ struct DamerauLevenshteinFun {
74
+ static constexpr const char *Name = "damerau_levenshtein";
75
+ static constexpr const char *Parameters = "str1,str2";
76
+ static constexpr const char *Description = "Extension of Levenshtein distance to also include transposition of adjacent characters as an allowed edit operation. In other words, the minimum number of edit operations (insertions, deletions, substitutions or transpositions) required to change one string to another. Different case is considered different.";
77
+ static constexpr const char *Example = "damerau_levenshtein('hello', 'world')";
78
+
79
+ static ScalarFunction GetFunction();
80
+ };
81
+
82
+ struct FormatFun {
83
+ static constexpr const char *Name = "format";
84
+ static constexpr const char *Parameters = "format,parameters...";
85
+ static constexpr const char *Description = "Formats a string using fmt syntax";
86
+ static constexpr const char *Example = "format('Benchmark \"{}\" took {} seconds', 'CSV', 42)";
87
+
88
+ static ScalarFunction GetFunction();
89
+ };
90
+
91
+ struct HammingFun {
92
+ static constexpr const char *Name = "hamming";
93
+ static constexpr const char *Parameters = "str1,str2";
94
+ static constexpr const char *Description = "The number of positions with different characters for 2 strings of equal length. Different case is considered different.";
95
+ static constexpr const char *Example = "hamming('duck','luck')";
96
+
97
+ static ScalarFunction GetFunction();
98
+ };
99
+
100
+ struct MismatchesFun {
101
+ using ALIAS = HammingFun;
102
+
103
+ static constexpr const char *Name = "mismatches";
104
+ };
105
+
106
+ struct HexFun {
107
+ static constexpr const char *Name = "hex";
108
+ static constexpr const char *Parameters = "value";
109
+ static constexpr const char *Description = "Converts the value to hexadecimal representation";
110
+ static constexpr const char *Example = "hex(42)";
111
+
112
+ static ScalarFunctionSet GetFunctions();
113
+ };
114
+
115
+ struct ToHexFun {
116
+ using ALIAS = HexFun;
117
+
118
+ static constexpr const char *Name = "to_hex";
119
+ };
120
+
121
+ struct InstrFun {
122
+ static constexpr const char *Name = "instr";
123
+ static constexpr const char *Parameters = "haystack,needle";
124
+ static constexpr const char *Description = "Return location of first occurrence of needle in haystack, counting from 1. Returns 0 if no match found.";
125
+ static constexpr const char *Example = "instr('test test','es')";
126
+
127
+ static ScalarFunction GetFunction();
128
+ };
129
+
130
+ struct StrposFun {
131
+ using ALIAS = InstrFun;
132
+
133
+ static constexpr const char *Name = "strpos";
134
+ };
135
+
136
+ struct PositionFun {
137
+ using ALIAS = InstrFun;
138
+
139
+ static constexpr const char *Name = "position";
140
+ };
141
+
142
+ struct JaccardFun {
143
+ static constexpr const char *Name = "jaccard";
144
+ static constexpr const char *Parameters = "str1,str2";
145
+ static constexpr const char *Description = "The Jaccard similarity between two strings. Different case is considered different. Returns a number between 0 and 1.";
146
+ static constexpr const char *Example = "jaccard('duck','luck')";
147
+
148
+ static ScalarFunction GetFunction();
149
+ };
150
+
151
+ struct JaroSimilarityFun {
152
+ static constexpr const char *Name = "jaro_similarity";
153
+ static constexpr const char *Parameters = "str1,str2";
154
+ static constexpr const char *Description = "The Jaro similarity between two strings. Different case is considered different. Returns a number between 0 and 1.";
155
+ static constexpr const char *Example = "jaro_similarity('duck','duckdb')";
156
+
157
+ static ScalarFunction GetFunction();
158
+ };
159
+
160
+ struct JaroWinklerSimilarityFun {
161
+ static constexpr const char *Name = "jaro_winkler_similarity";
162
+ static constexpr const char *Parameters = "str1,str2";
163
+ static constexpr const char *Description = "The Jaro-Winkler similarity between two strings. Different case is considered different. Returns a number between 0 and 1.";
164
+ static constexpr const char *Example = "jaro_winkler_similarity('duck','duckdb')";
165
+
166
+ static ScalarFunction GetFunction();
167
+ };
168
+
169
+ struct LeftFun {
170
+ static constexpr const char *Name = "left";
171
+ static constexpr const char *Parameters = "string,count";
172
+ static constexpr const char *Description = "Extract the left-most count characters";
173
+ static constexpr const char *Example = "left('Hello🦆', 2)";
174
+
175
+ static ScalarFunction GetFunction();
176
+ };
177
+
178
+ struct LeftGraphemeFun {
179
+ static constexpr const char *Name = "left_grapheme";
180
+ static constexpr const char *Parameters = "string,count";
181
+ static constexpr const char *Description = "Extract the left-most count grapheme clusters";
182
+ static constexpr const char *Example = "left_grapheme('🤦🏼‍♂️🤦🏽‍♀️', 1)";
183
+
184
+ static ScalarFunction GetFunction();
185
+ };
186
+
187
+ struct LevenshteinFun {
188
+ static constexpr const char *Name = "levenshtein";
189
+ static constexpr const char *Parameters = "str1,str2";
190
+ static constexpr const char *Description = "The minimum number of single-character edits (insertions, deletions or substitutions) required to change one string to the other. Different case is considered different.";
191
+ static constexpr const char *Example = "levenshtein('duck','db')";
192
+
193
+ static ScalarFunction GetFunction();
194
+ };
195
+
196
+ struct Editdist3Fun {
197
+ using ALIAS = LevenshteinFun;
198
+
199
+ static constexpr const char *Name = "editdist3";
200
+ };
201
+
202
+ struct LpadFun {
203
+ static constexpr const char *Name = "lpad";
204
+ static constexpr const char *Parameters = "string,count,character";
205
+ static constexpr const char *Description = "Pads the string with the character from the left until it has count characters";
206
+ static constexpr const char *Example = "lpad('hello', 10, '>')";
207
+
208
+ static ScalarFunction GetFunction();
209
+ };
210
+
211
+ struct LtrimFun {
212
+ static constexpr const char *Name = "ltrim";
213
+ static constexpr const char *Parameters = "string,characters";
214
+ static constexpr const char *Description = "Removes any occurrences of any of the characters from the left side of the string";
215
+ static constexpr const char *Example = "ltrim('>>>>test<<', '><')";
216
+
217
+ static ScalarFunctionSet GetFunctions();
218
+ };
219
+
220
+ struct MD5Fun {
221
+ static constexpr const char *Name = "md5";
222
+ static constexpr const char *Parameters = "value";
223
+ static constexpr const char *Description = "Returns the MD5 hash of the value as a string";
224
+ static constexpr const char *Example = "md5('123')";
225
+
226
+ static ScalarFunction GetFunction();
227
+ };
228
+
229
+ struct MD5NumberFun {
230
+ static constexpr const char *Name = "md5_number";
231
+ static constexpr const char *Parameters = "value";
232
+ static constexpr const char *Description = "Returns the MD5 hash of the value as an INT128";
233
+ static constexpr const char *Example = "md5_number('123')";
234
+
235
+ static ScalarFunction GetFunction();
236
+ };
237
+
238
+ struct MD5NumberLowerFun {
239
+ static constexpr const char *Name = "md5_number_lower";
240
+ static constexpr const char *Parameters = "value";
241
+ static constexpr const char *Description = "Returns the MD5 hash of the value as an INT128";
242
+ static constexpr const char *Example = "md5_number_lower('123')";
243
+
244
+ static ScalarFunction GetFunction();
245
+ };
246
+
247
+ struct MD5NumberUpperFun {
248
+ static constexpr const char *Name = "md5_number_upper";
249
+ static constexpr const char *Parameters = "value";
250
+ static constexpr const char *Description = "Returns the MD5 hash of the value as an INT128";
251
+ static constexpr const char *Example = "md5_number_upper('123')";
252
+
253
+ static ScalarFunction GetFunction();
254
+ };
255
+
256
+ struct PrintfFun {
257
+ static constexpr const char *Name = "printf";
258
+ static constexpr const char *Parameters = "format,parameters...";
259
+ static constexpr const char *Description = "Formats a string using printf syntax";
260
+ static constexpr const char *Example = "printf('Benchmark \"%s\" took %d seconds', 'CSV', 42)";
261
+
262
+ static ScalarFunction GetFunction();
263
+ };
264
+
265
+ struct RepeatFun {
266
+ static constexpr const char *Name = "repeat";
267
+ static constexpr const char *Parameters = "string,count";
268
+ static constexpr const char *Description = "Repeats the string count number of times";
269
+ static constexpr const char *Example = "repeat('A', 5)";
270
+
271
+ static ScalarFunction GetFunction();
272
+ };
273
+
274
+ struct ReplaceFun {
275
+ static constexpr const char *Name = "replace";
276
+ static constexpr const char *Parameters = "string,source,target";
277
+ static constexpr const char *Description = "Replaces any occurrences of the source with target in string";
278
+ static constexpr const char *Example = "replace('hello', 'l', '-')";
279
+
280
+ static ScalarFunction GetFunction();
281
+ };
282
+
283
+ struct ReverseFun {
284
+ static constexpr const char *Name = "reverse";
285
+ static constexpr const char *Parameters = "string";
286
+ static constexpr const char *Description = "Reverses the string";
287
+ static constexpr const char *Example = "reverse('hello')";
288
+
289
+ static ScalarFunction GetFunction();
290
+ };
291
+
292
+ struct RightFun {
293
+ static constexpr const char *Name = "right";
294
+ static constexpr const char *Parameters = "string,count";
295
+ static constexpr const char *Description = "Extract the right-most count characters";
296
+ static constexpr const char *Example = "right('Hello🦆', 3)";
297
+
298
+ static ScalarFunction GetFunction();
299
+ };
300
+
301
+ struct RightGraphemeFun {
302
+ static constexpr const char *Name = "right_grapheme";
303
+ static constexpr const char *Parameters = "string,count";
304
+ static constexpr const char *Description = "Extract the right-most count grapheme clusters";
305
+ static constexpr const char *Example = "right_grapheme('🤦🏼‍♂️🤦🏽‍♀️', 1)";
306
+
307
+ static ScalarFunction GetFunction();
308
+ };
309
+
310
+ struct RpadFun {
311
+ static constexpr const char *Name = "rpad";
312
+ static constexpr const char *Parameters = "string,count,character";
313
+ static constexpr const char *Description = "Pads the string with the character from the right until it has count characters";
314
+ static constexpr const char *Example = "rpad('hello', 10, '<')";
315
+
316
+ static ScalarFunction GetFunction();
317
+ };
318
+
319
+ struct RtrimFun {
320
+ static constexpr const char *Name = "rtrim";
321
+ static constexpr const char *Parameters = "string,characters";
322
+ static constexpr const char *Description = "Removes any occurrences of any of the characters from the right side of the string";
323
+ static constexpr const char *Example = "rtrim('>>>>test<<', '><')";
324
+
325
+ static ScalarFunctionSet GetFunctions();
326
+ };
327
+
328
+ struct StringSplitFun {
329
+ static constexpr const char *Name = "string_split";
330
+ static constexpr const char *Parameters = "string,separator";
331
+ static constexpr const char *Description = "Splits the string along the separator";
332
+ static constexpr const char *Example = "string_split('hello-world', '-')";
333
+
334
+ static ScalarFunction GetFunction();
335
+ };
336
+
337
+ struct StrSplitFun {
338
+ using ALIAS = StringSplitFun;
339
+
340
+ static constexpr const char *Name = "str_split";
341
+ };
342
+
343
+ struct StringToArrayFun {
344
+ using ALIAS = StringSplitFun;
345
+
346
+ static constexpr const char *Name = "string_to_array";
347
+ };
348
+
349
+ struct SplitFun {
350
+ using ALIAS = StringSplitFun;
351
+
352
+ static constexpr const char *Name = "split";
353
+ };
354
+
355
+ struct StringSplitRegexFun {
356
+ static constexpr const char *Name = "string_split_regex";
357
+ static constexpr const char *Parameters = "string,separator";
358
+ static constexpr const char *Description = "Splits the string along the regex";
359
+ static constexpr const char *Example = "string_split_regex('hello␣world; 42', ';?␣')";
360
+
361
+ static ScalarFunctionSet GetFunctions();
362
+ };
363
+
364
+ struct StrSplitRegexFun {
365
+ using ALIAS = StringSplitRegexFun;
366
+
367
+ static constexpr const char *Name = "str_split_regex";
368
+ };
369
+
370
+ struct RegexpSplitToArrayFun {
371
+ using ALIAS = StringSplitRegexFun;
372
+
373
+ static constexpr const char *Name = "regexp_split_to_array";
374
+ };
375
+
376
+ struct TranslateFun {
377
+ static constexpr const char *Name = "translate";
378
+ static constexpr const char *Parameters = "string,from,to";
379
+ static constexpr const char *Description = "Replaces each character in string that matches a character in the from set with the corresponding character in the to set. If from is longer than to, occurrences of the extra characters in from are deleted.";
380
+ static constexpr const char *Example = "translate('12345', '143', 'ax')";
381
+
382
+ static ScalarFunction GetFunction();
383
+ };
384
+
385
+ struct TrimFun {
386
+ static constexpr const char *Name = "trim";
387
+ static constexpr const char *Parameters = "string,characters";
388
+ static constexpr const char *Description = "Removes any occurrences of any of the characters from either side of the string";
389
+ static constexpr const char *Example = "trim('>>>>test<<', '><')";
390
+
391
+ static ScalarFunctionSet GetFunctions();
392
+ };
393
+
394
+ struct UnbinFun {
395
+ static constexpr const char *Name = "unbin";
396
+ static constexpr const char *Parameters = "value";
397
+ static constexpr const char *Description = "Converts a value from binary representation to a blob";
398
+ static constexpr const char *Example = "unbin('0110')";
399
+
400
+ static ScalarFunction GetFunction();
401
+ };
402
+
403
+ struct FromBinaryFun {
404
+ using ALIAS = UnbinFun;
405
+
406
+ static constexpr const char *Name = "from_binary";
407
+ };
408
+
409
+ struct UnhexFun {
410
+ static constexpr const char *Name = "unhex";
411
+ static constexpr const char *Parameters = "value";
412
+ static constexpr const char *Description = "Converts a value from hexadecimal representation to a blob";
413
+ static constexpr const char *Example = "unhex('2A')";
414
+
415
+ static ScalarFunction GetFunction();
416
+ };
417
+
418
+ struct FromHexFun {
419
+ using ALIAS = UnhexFun;
420
+
421
+ static constexpr const char *Name = "from_hex";
422
+ };
423
+
424
+ struct UnicodeFun {
425
+ static constexpr const char *Name = "unicode";
426
+ static constexpr const char *Parameters = "str";
427
+ static constexpr const char *Description = "Returns the unicode codepoint of the first character of the string";
428
+ static constexpr const char *Example = "unicode('ü')";
429
+
430
+ static ScalarFunction GetFunction();
431
+ };
432
+
433
+ struct OrdFun {
434
+ using ALIAS = UnicodeFun;
435
+
436
+ static constexpr const char *Name = "ord";
437
+ };
438
+
439
+ } // namespace duckdb
@@ -0,0 +1,40 @@
1
+ //===----------------------------------------------------------------------===//
2
+ // DuckDB
3
+ //
4
+ // duckdb/core_functions/scalar/struct_functions.hpp
5
+ //
6
+ //
7
+ //===----------------------------------------------------------------------===//
8
+ // This file is generated by scripts/generate_functions.py
9
+
10
+ #pragma once
11
+
12
+ #include "duckdb/function/function_set.hpp"
13
+
14
+ namespace duckdb {
15
+
16
+ struct StructInsertFun {
17
+ static constexpr const char *Name = "struct_insert";
18
+ static constexpr const char *Parameters = "struct,any";
19
+ static constexpr const char *Description = "Add field(s)/value(s) to an existing STRUCT with the argument values. The entry name(s) will be the bound variable name(s).";
20
+ static constexpr const char *Example = "struct_insert({'a': 1}, b := 2)";
21
+
22
+ static ScalarFunction GetFunction();
23
+ };
24
+
25
+ struct StructPackFun {
26
+ static constexpr const char *Name = "struct_pack";
27
+ static constexpr const char *Parameters = "any";
28
+ static constexpr const char *Description = "Create a STRUCT containing the argument values. The entry name will be the bound variable name";
29
+ static constexpr const char *Example = "struct_pack(i := 4, s := 'string')";
30
+
31
+ static ScalarFunction GetFunction();
32
+ };
33
+
34
+ struct RowFun {
35
+ using ALIAS = StructPackFun;
36
+
37
+ static constexpr const char *Name = "row";
38
+ };
39
+
40
+ } // namespace duckdb
@@ -0,0 +1,43 @@
1
+ //===----------------------------------------------------------------------===//
2
+ // DuckDB
3
+ //
4
+ // duckdb/core_functions/scalar/union_functions.hpp
5
+ //
6
+ //
7
+ //===----------------------------------------------------------------------===//
8
+ // This file is generated by scripts/generate_functions.py
9
+
10
+ #pragma once
11
+
12
+ #include "duckdb/function/function_set.hpp"
13
+
14
+ namespace duckdb {
15
+
16
+ struct UnionExtractFun {
17
+ static constexpr const char *Name = "union_extract";
18
+ static constexpr const char *Parameters = "union,tag";
19
+ static constexpr const char *Description = "Extract the value with the named tags from the union. NULL if the tag is not currently selected";
20
+ static constexpr const char *Example = "union_extract(s, 'k')";
21
+
22
+ static ScalarFunction GetFunction();
23
+ };
24
+
25
+ struct UnionTagFun {
26
+ static constexpr const char *Name = "union_tag";
27
+ static constexpr const char *Parameters = "union";
28
+ static constexpr const char *Description = "Retrieve the currently selected tag of the union as an Enum.";
29
+ static constexpr const char *Example = "union_tag(union_value(k := 'foo'))";
30
+
31
+ static ScalarFunction GetFunction();
32
+ };
33
+
34
+ struct UnionValueFun {
35
+ static constexpr const char *Name = "union_value";
36
+ static constexpr const char *Parameters = "tag";
37
+ static constexpr const char *Description = "Create a single member UNION containing the argument value. The tag of the value will be the bound variable name.";
38
+ static constexpr const char *Example = "union_value(k := 'hello')";
39
+
40
+ static ScalarFunction GetFunction();
41
+ };
42
+
43
+ } // namespace duckdb
@@ -10,7 +10,7 @@
10
10
 
11
11
  #include "duckdb/execution/physical_operator.hpp"
12
12
  #include "duckdb/parser/parsed_data/copy_info.hpp"
13
- #include "duckdb/function/scalar/strftime.hpp"
13
+ #include "duckdb/function/scalar/strftime_format.hpp"
14
14
  #include "duckdb/common/types/chunk_collection.hpp"
15
15
  #include "duckdb/common/enums/file_compression_type.hpp"
16
16
  #include "duckdb/common/map.hpp"
@@ -10,7 +10,7 @@
10
10
 
11
11
  #include "duckdb/execution/operator/persistent/csv_buffer.hpp"
12
12
  #include "duckdb/common/map.hpp"
13
- #include "duckdb/function/scalar/strftime.hpp"
13
+ #include "duckdb/function/scalar/strftime_format.hpp"
14
14
  #include "duckdb/common/types/value.hpp"
15
15
  #include "duckdb/common/field_writer.hpp"
16
16
  #include "duckdb/common/case_insensitive_map.hpp"
@@ -47,6 +47,10 @@ public:
47
47
  bool ParallelSink() const override {
48
48
  return false;
49
49
  }
50
+
51
+ bool SinkOrderDependent() const override {
52
+ return true;
53
+ }
50
54
  };
51
55
 
52
56
  } // namespace duckdb
@@ -15,23 +15,6 @@
15
15
 
16
16
  namespace duckdb {
17
17
 
18
- struct BitAndFun {
19
- static void RegisterFunction(BuiltinFunctions &set);
20
- };
21
-
22
- struct BitOrFun {
23
- static void RegisterFunction(BuiltinFunctions &set);
24
- };
25
-
26
- struct BitXorFun {
27
- static void RegisterFunction(BuiltinFunctions &set);
28
- };
29
-
30
- struct BitStringAggFun {
31
- static void GetBitStringAggregate(const LogicalType &type, AggregateFunctionSet &bitstring_agg);
32
- static void RegisterFunction(BuiltinFunctions &set);
33
- };
34
-
35
18
  struct CountStarFun {
36
19
  static AggregateFunction GetFunction();
37
20
 
@@ -44,78 +27,10 @@ struct CountFun {
44
27
  static void RegisterFunction(BuiltinFunctions &set);
45
28
  };
46
29
 
47
- struct BoolAndFun {
48
- static AggregateFunction GetFunction();
49
-
50
- static void RegisterFunction(BuiltinFunctions &set);
51
- };
52
-
53
- struct BoolOrFun {
54
- static AggregateFunction GetFunction();
55
-
56
- static void RegisterFunction(BuiltinFunctions &set);
57
- };
58
-
59
- struct ProductFun {
60
- static AggregateFunction GetFunction();
61
-
62
- static void RegisterFunction(BuiltinFunctions &set);
63
- };
64
-
65
- struct ApproxCountDistinctFun {
66
- static void RegisterFunction(BuiltinFunctions &set);
67
- };
68
-
69
- struct ArgMinFun {
70
- static void RegisterFunction(BuiltinFunctions &set);
71
- };
72
-
73
- struct ArgMaxFun {
74
- static void RegisterFunction(BuiltinFunctions &set);
75
- };
76
-
77
30
  struct FirstFun {
78
31
  static AggregateFunction GetFunction(const LogicalType &type);
79
32
 
80
33
  static void RegisterFunction(BuiltinFunctions &set);
81
34
  };
82
35
 
83
- struct MaxFun {
84
- static void RegisterFunction(BuiltinFunctions &set);
85
- };
86
-
87
- struct MinFun {
88
- static void RegisterFunction(BuiltinFunctions &set);
89
- };
90
-
91
- struct MaxByFun {
92
- static void RegisterFunction(BuiltinFunctions &set);
93
- };
94
-
95
- struct MinByFun {
96
- static void RegisterFunction(BuiltinFunctions &set);
97
- };
98
-
99
- struct SumFun {
100
- static AggregateFunction GetSumAggregate(PhysicalType type);
101
- static AggregateFunction GetSumAggregateNoOverflow(PhysicalType type);
102
- static void RegisterFunction(BuiltinFunctions &set);
103
- };
104
-
105
- struct SkewFun {
106
- static void RegisterFunction(BuiltinFunctions &set);
107
- };
108
-
109
- struct KurtosisFun {
110
- static void RegisterFunction(BuiltinFunctions &set);
111
- };
112
-
113
- struct EntropyFun {
114
- static void RegisterFunction(BuiltinFunctions &set);
115
- };
116
-
117
- struct StringAggFun {
118
- static void RegisterFunction(BuiltinFunctions &set);
119
- };
120
-
121
36
  } // namespace duckdb
@@ -54,22 +54,14 @@ private:
54
54
  void RegisterArrowFunctions();
55
55
 
56
56
  // aggregates
57
- void RegisterAlgebraicAggregates();
58
57
  void RegisterDistributiveAggregates();
59
- void RegisterNestedAggregates();
60
- void RegisterHolisticAggregates();
61
- void RegisterRegressiveAggregates();
62
58
 
63
59
  // scalar functions
64
- void RegisterDateFunctions();
65
- void RegisterEnumFunctions();
66
60
  void RegisterGenericFunctions();
67
- void RegisterMathFunctions();
68
61
  void RegisterOperators();
69
62
  void RegisterStringFunctions();
70
63
  void RegisterNestedFunctions();
71
64
  void RegisterSequenceFunctions();
72
- void RegisterTrigonometricsFunctions();
73
65
 
74
66
  // pragmas
75
67
  void RegisterPragmaFunctions();