duckdb 0.8.1-dev0.0 → 0.8.1-dev111.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.
- package/package.json +1 -1
- package/src/duckdb/extension/icu/icu-datepart.cpp +1 -1
- package/src/duckdb/extension/json/include/json_common.hpp +1 -1
- package/src/duckdb/extension/json/include/json_executors.hpp +1 -1
- package/src/duckdb/extension/json/json_functions/json_create.cpp +6 -6
- package/src/duckdb/extension/json/json_functions/json_merge_patch.cpp +1 -1
- package/src/duckdb/extension/json/json_functions/json_transform.cpp +1 -1
- package/src/duckdb/extension/parquet/column_reader.cpp +57 -52
- package/src/duckdb/extension/parquet/column_writer.cpp +57 -45
- package/src/duckdb/extension/parquet/include/cast_column_reader.hpp +1 -1
- package/src/duckdb/extension/parquet/include/column_reader.hpp +5 -4
- package/src/duckdb/extension/parquet/include/column_writer.hpp +24 -0
- package/src/duckdb/extension/parquet/include/decode_utils.hpp +6 -0
- package/src/duckdb/extension/parquet/include/list_column_reader.hpp +1 -1
- package/src/duckdb/extension/parquet/include/parquet_dbp_decoder.hpp +4 -4
- package/src/duckdb/extension/parquet/include/parquet_rle_bp_decoder.hpp +4 -5
- package/src/duckdb/extension/parquet/include/resizable_buffer.hpp +4 -4
- package/src/duckdb/extension/parquet/include/row_number_column_reader.hpp +1 -1
- package/src/duckdb/extension/parquet/include/struct_column_reader.hpp +1 -1
- package/src/duckdb/extension/parquet/parquet-extension.cpp +1 -1
- package/src/duckdb/extension/parquet/parquet_metadata.cpp +1 -1
- package/src/duckdb/extension/parquet/parquet_reader.cpp +18 -18
- package/src/duckdb/extension/parquet/parquet_statistics.cpp +23 -26
- package/src/duckdb/extension/parquet/parquet_timestamp.cpp +2 -2
- package/src/duckdb/extension/parquet/parquet_writer.cpp +3 -3
- package/src/duckdb/extension/parquet/zstd_file_system.cpp +3 -3
- package/src/duckdb/src/catalog/catalog.cpp +0 -4
- package/src/duckdb/src/catalog/catalog_entry/table_catalog_entry.cpp +3 -0
- package/src/duckdb/src/catalog/catalog_entry.cpp +4 -4
- package/src/duckdb/src/catalog/catalog_set.cpp +1 -1
- package/src/duckdb/src/catalog/dependency_manager.cpp +2 -2
- package/src/duckdb/src/catalog/duck_catalog.cpp +1 -0
- package/src/duckdb/src/common/adbc/adbc.cpp +183 -94
- package/src/duckdb/src/common/adbc/driver_manager.cpp +10 -2
- package/src/duckdb/src/common/arrow/arrow_appender.cpp +12 -12
- package/src/duckdb/src/common/arrow/arrow_wrapper.cpp +7 -7
- package/src/duckdb/src/common/checksum.cpp +1 -1
- package/src/duckdb/src/common/compressed_file_system.cpp +6 -6
- package/src/duckdb/src/common/crypto/md5.cpp +9 -9
- package/src/duckdb/src/common/field_writer.cpp +1 -1
- package/src/duckdb/src/common/file_system.cpp +15 -2
- package/src/duckdb/src/common/fsst.cpp +11 -6
- package/src/duckdb/src/common/gzip_file_system.cpp +8 -8
- package/src/duckdb/src/common/hive_partitioning.cpp +1 -1
- package/src/duckdb/src/common/local_file_system.cpp +11 -11
- package/src/duckdb/src/common/operator/cast_operators.cpp +1 -1
- package/src/duckdb/src/common/pipe_file_system.cpp +2 -2
- package/src/duckdb/src/common/radix_partitioning.cpp +2 -2
- package/src/duckdb/src/common/row_operations/row_heap_gather.cpp +1 -1
- package/src/duckdb/src/common/row_operations/row_heap_scatter.cpp +5 -5
- package/src/duckdb/src/common/row_operations/row_match.cpp +1 -1
- package/src/duckdb/src/common/row_operations/row_radix_scatter.cpp +2 -2
- package/src/duckdb/src/common/row_operations/row_scatter.cpp +4 -4
- package/src/duckdb/src/common/serializer/binary_deserializer.cpp +1 -1
- package/src/duckdb/src/common/serializer/binary_serializer.cpp +3 -3
- package/src/duckdb/src/common/serializer.cpp +1 -1
- package/src/duckdb/src/common/sort/comparators.cpp +1 -1
- package/src/duckdb/src/common/sort/merge_sorter.cpp +7 -2
- package/src/duckdb/src/common/sort/partition_state.cpp +2 -2
- package/src/duckdb/src/common/types/bit.cpp +5 -5
- package/src/duckdb/src/common/types/blob.cpp +8 -8
- package/src/duckdb/src/common/types/column/column_data_allocator.cpp +4 -4
- package/src/duckdb/src/common/types/column/column_data_collection.cpp +3 -3
- package/src/duckdb/src/common/types/column/column_data_collection_segment.cpp +1 -1
- package/src/duckdb/src/common/types/column/partitioned_column_data.cpp +2 -2
- package/src/duckdb/src/common/types/hash.cpp +2 -2
- package/src/duckdb/src/common/types/hyperloglog.cpp +22 -21
- package/src/duckdb/src/common/types/list_segment.cpp +77 -49
- package/src/duckdb/src/common/types/row/partitioned_tuple_data.cpp +1 -1
- package/src/duckdb/src/common/types/row/tuple_data_allocator.cpp +5 -3
- package/src/duckdb/src/common/types/row/tuple_data_scatter_gather.cpp +17 -17
- package/src/duckdb/src/common/types/string_heap.cpp +1 -1
- package/src/duckdb/src/common/types/value.cpp +2 -2
- package/src/duckdb/src/common/types/vector.cpp +101 -101
- package/src/duckdb/src/common/types/vector_cache.cpp +6 -6
- package/src/duckdb/src/common/types/vector_constants.cpp +2 -1
- package/src/duckdb/src/common/types.cpp +44 -33
- package/src/duckdb/src/common/vector_operations/boolean_operators.cpp +2 -2
- package/src/duckdb/src/common/vector_operations/is_distinct_from.cpp +12 -12
- package/src/duckdb/src/common/vector_operations/vector_hash.cpp +13 -11
- package/src/duckdb/src/common/vector_operations/vector_storage.cpp +1 -1
- package/src/duckdb/src/core_functions/aggregate/algebraic/avg.cpp +30 -33
- package/src/duckdb/src/core_functions/aggregate/algebraic/covar.cpp +0 -4
- package/src/duckdb/src/core_functions/aggregate/distributive/approx_count.cpp +32 -36
- package/src/duckdb/src/core_functions/aggregate/distributive/arg_min_max.cpp +53 -66
- package/src/duckdb/src/core_functions/aggregate/distributive/bitagg.cpp +48 -48
- package/src/duckdb/src/core_functions/aggregate/distributive/bitstring_agg.cpp +43 -43
- package/src/duckdb/src/core_functions/aggregate/distributive/bool.cpp +32 -32
- package/src/duckdb/src/core_functions/aggregate/distributive/entropy.cpp +34 -34
- package/src/duckdb/src/core_functions/aggregate/distributive/kurtosis.cpp +30 -31
- package/src/duckdb/src/core_functions/aggregate/distributive/minmax.cpp +91 -103
- package/src/duckdb/src/core_functions/aggregate/distributive/product.cpp +17 -17
- package/src/duckdb/src/core_functions/aggregate/distributive/skew.cpp +25 -27
- package/src/duckdb/src/core_functions/aggregate/distributive/string_agg.cpp +36 -37
- package/src/duckdb/src/core_functions/aggregate/distributive/sum.cpp +22 -22
- package/src/duckdb/src/core_functions/aggregate/holistic/approximate_quantile.cpp +48 -84
- package/src/duckdb/src/core_functions/aggregate/holistic/mode.cpp +49 -51
- package/src/duckdb/src/core_functions/aggregate/holistic/quantile.cpp +83 -119
- package/src/duckdb/src/core_functions/aggregate/holistic/reservoir_quantile.cpp +62 -99
- package/src/duckdb/src/core_functions/aggregate/nested/histogram.cpp +24 -26
- package/src/duckdb/src/core_functions/aggregate/nested/list.cpp +22 -23
- package/src/duckdb/src/core_functions/aggregate/regression/regr_avg.cpp +16 -18
- package/src/duckdb/src/core_functions/aggregate/regression/regr_intercept.cpp +22 -25
- package/src/duckdb/src/core_functions/aggregate/regression/regr_r2.cpp +19 -24
- package/src/duckdb/src/core_functions/aggregate/regression/regr_sxx_syy.cpp +18 -23
- package/src/duckdb/src/core_functions/aggregate/regression/regr_sxy.cpp +14 -18
- package/src/duckdb/src/core_functions/scalar/blob/base64.cpp +1 -1
- package/src/duckdb/src/core_functions/scalar/date/date_part.cpp +45 -45
- package/src/duckdb/src/core_functions/scalar/date/strftime.cpp +2 -2
- package/src/duckdb/src/core_functions/scalar/generic/current_setting.cpp +1 -1
- package/src/duckdb/src/core_functions/scalar/generic/least.cpp +2 -2
- package/src/duckdb/src/core_functions/scalar/generic/stats.cpp +1 -1
- package/src/duckdb/src/core_functions/scalar/list/array_slice.cpp +3 -3
- package/src/duckdb/src/core_functions/scalar/list/flatten.cpp +2 -4
- package/src/duckdb/src/core_functions/scalar/list/list_aggregates.cpp +3 -3
- package/src/duckdb/src/core_functions/scalar/list/list_lambdas.cpp +6 -7
- package/src/duckdb/src/core_functions/scalar/list/list_sort.cpp +1 -1
- package/src/duckdb/src/core_functions/scalar/map/cardinality.cpp +1 -1
- package/src/duckdb/src/core_functions/scalar/map/map.cpp +2 -2
- package/src/duckdb/src/core_functions/scalar/map/map_concat.cpp +1 -1
- package/src/duckdb/src/core_functions/scalar/map/map_extract.cpp +5 -9
- package/src/duckdb/src/core_functions/scalar/math/numeric.cpp +3 -3
- package/src/duckdb/src/core_functions/scalar/string/starts_with.cpp +3 -2
- package/src/duckdb/src/core_functions/scalar/string/string_split.cpp +4 -4
- package/src/duckdb/src/core_functions/scalar/string/trim.cpp +1 -1
- package/src/duckdb/src/core_functions/scalar/union/union_extract.cpp +1 -1
- package/src/duckdb/src/execution/adaptive_filter.cpp +1 -1
- package/src/duckdb/src/execution/expression_executor/execute_case.cpp +10 -10
- package/src/duckdb/src/execution/expression_executor/execute_conjunction.cpp +7 -7
- package/src/duckdb/src/execution/expression_executor.cpp +33 -28
- package/src/duckdb/src/execution/index/art/art.cpp +30 -32
- package/src/duckdb/src/execution/index/art/fixed_size_allocator.cpp +3 -4
- package/src/duckdb/src/execution/join_hashtable.cpp +4 -4
- package/src/duckdb/src/execution/nested_loop_join/nested_loop_join_inner.cpp +4 -4
- package/src/duckdb/src/execution/nested_loop_join/nested_loop_join_mark.cpp +2 -2
- package/src/duckdb/src/execution/operator/aggregate/distinct_aggregate_data.cpp +1 -1
- package/src/duckdb/src/execution/operator/aggregate/physical_perfecthash_aggregate.cpp +1 -1
- package/src/duckdb/src/execution/operator/aggregate/physical_streaming_window.cpp +2 -2
- package/src/duckdb/src/execution/operator/aggregate/physical_ungrouped_aggregate.cpp +4 -4
- package/src/duckdb/src/execution/operator/filter/physical_filter.cpp +1 -1
- package/src/duckdb/src/execution/operator/join/outer_join_marker.cpp +1 -1
- package/src/duckdb/src/execution/operator/join/perfect_hash_join_executor.cpp +1 -1
- package/src/duckdb/src/execution/operator/join/physical_asof_join.cpp +2 -2
- package/src/duckdb/src/execution/operator/join/physical_blockwise_nl_join.cpp +4 -4
- package/src/duckdb/src/execution/operator/join/physical_index_join.cpp +3 -3
- package/src/duckdb/src/execution/operator/join/physical_nested_loop_join.cpp +3 -3
- package/src/duckdb/src/execution/operator/join/physical_piecewise_merge_join.cpp +3 -3
- package/src/duckdb/src/execution/operator/order/physical_top_n.cpp +1 -1
- package/src/duckdb/src/execution/operator/persistent/buffered_csv_reader.cpp +2 -2
- package/src/duckdb/src/execution/operator/persistent/csv_file_handle.cpp +2 -2
- package/src/duckdb/src/execution/operator/persistent/csv_reader_options.cpp +2 -0
- package/src/duckdb/src/execution/operator/persistent/physical_batch_insert.cpp +2 -3
- package/src/duckdb/src/execution/operator/persistent/physical_insert.cpp +1 -1
- package/src/duckdb/src/execution/operator/projection/physical_pivot.cpp +2 -2
- package/src/duckdb/src/execution/operator/projection/physical_projection.cpp +1 -1
- package/src/duckdb/src/execution/operator/projection/physical_unnest.cpp +3 -3
- package/src/duckdb/src/execution/operator/scan/physical_column_data_scan.cpp +2 -1
- package/src/duckdb/src/execution/operator/scan/physical_expression_scan.cpp +1 -1
- package/src/duckdb/src/execution/operator/scan/physical_positional_scan.cpp +2 -2
- package/src/duckdb/src/execution/operator/schema/physical_create_type.cpp +1 -1
- package/src/duckdb/src/execution/perfect_aggregate_hashtable.cpp +1 -1
- package/src/duckdb/src/execution/physical_plan/plan_comparison_join.cpp +1 -1
- package/src/duckdb/src/execution/physical_plan/plan_create_table.cpp +1 -1
- package/src/duckdb/src/execution/physical_plan_generator.cpp +2 -2
- package/src/duckdb/src/execution/radix_partitioned_hashtable.cpp +1 -1
- package/src/duckdb/src/execution/reservoir_sample.cpp +2 -2
- package/src/duckdb/src/execution/window_segment_tree.cpp +8 -6
- package/src/duckdb/src/function/aggregate/distributive/count.cpp +158 -20
- package/src/duckdb/src/function/aggregate/distributive/first.cpp +66 -74
- package/src/duckdb/src/function/aggregate/sorted_aggregate_function.cpp +13 -13
- package/src/duckdb/src/function/cast/cast_function_set.cpp +1 -1
- package/src/duckdb/src/function/cast/decimal_cast.cpp +1 -1
- package/src/duckdb/src/function/cast/enum_casts.cpp +2 -2
- package/src/duckdb/src/function/cast/string_cast.cpp +11 -11
- package/src/duckdb/src/function/cast/union_casts.cpp +2 -2
- package/src/duckdb/src/function/cast/vector_cast_helpers.cpp +3 -2
- package/src/duckdb/src/function/scalar/generic/constant_or_null.cpp +1 -1
- package/src/duckdb/src/function/scalar/list/list_concat.cpp +2 -2
- package/src/duckdb/src/function/scalar/list/list_extract.cpp +3 -3
- package/src/duckdb/src/function/scalar/operators/arithmetic.cpp +2 -3
- package/src/duckdb/src/function/scalar/string/concat.cpp +8 -7
- package/src/duckdb/src/function/scalar/string/contains.cpp +4 -4
- package/src/duckdb/src/function/scalar/string/like.cpp +5 -5
- package/src/duckdb/src/function/scalar/string/regexp/regexp_extract_all.cpp +4 -4
- package/src/duckdb/src/function/scalar/string/regexp.cpp +3 -3
- package/src/duckdb/src/function/scalar/string/strip_accents.cpp +1 -1
- package/src/duckdb/src/function/scalar/struct/struct_extract.cpp +1 -1
- package/src/duckdb/src/function/scalar/system/aggregate_export.cpp +25 -23
- package/src/duckdb/src/function/scalar_function.cpp +3 -3
- package/src/duckdb/src/function/table/arrow.cpp +4 -4
- package/src/duckdb/src/function/table/arrow_conversion.cpp +67 -61
- package/src/duckdb/src/function/table/checkpoint.cpp +1 -1
- package/src/duckdb/src/function/table/copy_csv.cpp +11 -7
- package/src/duckdb/src/function/table/glob.cpp +1 -1
- package/src/duckdb/src/function/table/pragma_last_profiling_output.cpp +1 -1
- package/src/duckdb/src/function/table/range.cpp +4 -4
- package/src/duckdb/src/function/table/read_csv.cpp +4 -7
- package/src/duckdb/src/function/table/repeat.cpp +2 -2
- package/src/duckdb/src/function/table/repeat_row.cpp +2 -2
- package/src/duckdb/src/function/table/system/duckdb_functions.cpp +1 -1
- package/src/duckdb/src/function/table/system/test_vector_types.cpp +1 -1
- package/src/duckdb/src/function/table/table_scan.cpp +2 -2
- package/src/duckdb/src/function/table/unnest.cpp +1 -1
- package/src/duckdb/src/function/table/version/pragma_version.cpp +3 -3
- package/src/duckdb/src/include/duckdb/catalog/catalog.hpp +2 -2
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/adbc/adbc.hpp +5 -0
- package/src/duckdb/src/include/duckdb/common/allocator.hpp +15 -4
- package/src/duckdb/src/include/duckdb/common/arrow/arrow_buffer.hpp +7 -2
- package/src/duckdb/src/include/duckdb/common/crypto/md5.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/exception.hpp +2 -2
- package/src/duckdb/src/include/duckdb/common/field_writer.hpp +3 -3
- package/src/duckdb/src/include/duckdb/common/file_system.hpp +11 -0
- package/src/duckdb/src/include/duckdb/common/fsst.hpp +2 -3
- package/src/duckdb/src/include/duckdb/common/radix.hpp +3 -3
- package/src/duckdb/src/include/duckdb/common/serializer/binary_deserializer.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/serializer/binary_serializer.hpp +4 -1
- package/src/duckdb/src/include/duckdb/common/serializer.hpp +4 -4
- package/src/duckdb/src/include/duckdb/common/typedefs.hpp +30 -0
- package/src/duckdb/src/include/duckdb/common/types/column/partitioned_column_data.hpp +12 -0
- package/src/duckdb/src/include/duckdb/common/types/hyperloglog.hpp +6 -2
- package/src/duckdb/src/include/duckdb/common/types/null_value.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/types/row/partitioned_tuple_data.hpp +12 -0
- package/src/duckdb/src/include/duckdb/common/types/string_type.hpp +10 -10
- package/src/duckdb/src/include/duckdb/common/types/value.hpp +1 -1
- package/src/duckdb/src/include/duckdb/common/types/vector.hpp +9 -0
- package/src/duckdb/src/include/duckdb/common/types/vector_buffer.hpp +18 -6
- package/src/duckdb/src/include/duckdb/common/vector_operations/aggregate_executor.hpp +112 -76
- package/src/duckdb/src/include/duckdb/common/vector_operations/binary_executor.hpp +16 -15
- package/src/duckdb/src/include/duckdb/common/vector_operations/generic_executor.hpp +11 -11
- package/src/duckdb/src/include/duckdb/common/vector_operations/ternary_executor.hpp +23 -19
- package/src/duckdb/src/include/duckdb/common/vector_operations/unary_executor.hpp +3 -3
- package/src/duckdb/src/include/duckdb/core_functions/aggregate/algebraic/corr.hpp +20 -24
- package/src/duckdb/src/include/duckdb/core_functions/aggregate/algebraic/covar.hpp +36 -39
- package/src/duckdb/src/include/duckdb/core_functions/aggregate/algebraic/stddev.hpp +57 -53
- package/src/duckdb/src/include/duckdb/core_functions/aggregate/regression/regr_count.hpp +8 -9
- package/src/duckdb/src/include/duckdb/core_functions/aggregate/regression/regr_slope.hpp +16 -18
- package/src/duckdb/src/include/duckdb/core_functions/aggregate/sum_helpers.hpp +7 -8
- package/src/duckdb/src/include/duckdb/execution/expression_executor_state.hpp +14 -2
- package/src/duckdb/src/include/duckdb/execution/index/art/art.hpp +3 -3
- package/src/duckdb/src/include/duckdb/execution/operator/helper/physical_result_collector.hpp +3 -0
- package/src/duckdb/src/include/duckdb/execution/operator/persistent/csv_buffer.hpp +1 -1
- package/src/duckdb/src/include/duckdb/execution/physical_operator.hpp +5 -2
- package/src/duckdb/src/include/duckdb/execution/physical_operator_states.hpp +12 -12
- package/src/duckdb/src/include/duckdb/function/aggregate_function.hpp +8 -29
- package/src/duckdb/src/include/duckdb/function/aggregate_state.hpp +95 -0
- package/src/duckdb/src/include/duckdb/function/cast/default_casts.hpp +13 -2
- package/src/duckdb/src/include/duckdb/function/cast/vector_cast_helpers.hpp +4 -4
- package/src/duckdb/src/include/duckdb/function/compression_function.hpp +44 -0
- package/src/duckdb/src/include/duckdb/function/copy_function.hpp +6 -6
- package/src/duckdb/src/include/duckdb/function/function.hpp +3 -3
- package/src/duckdb/src/include/duckdb/function/macro_function.hpp +2 -2
- package/src/duckdb/src/include/duckdb/function/scalar/list/contains_or_position.hpp +3 -3
- package/src/duckdb/src/include/duckdb/function/scalar_function.hpp +2 -2
- package/src/duckdb/src/include/duckdb/function/table_function.hpp +6 -6
- package/src/duckdb/src/include/duckdb/main/capi/cast/utils.hpp +1 -1
- package/src/duckdb/src/include/duckdb/main/materialized_query_result.hpp +3 -0
- package/src/duckdb/src/include/duckdb/main/pending_query_result.hpp +3 -0
- package/src/duckdb/src/include/duckdb/main/query_result.hpp +17 -0
- package/src/duckdb/src/include/duckdb/main/relation.hpp +12 -0
- package/src/duckdb/src/include/duckdb/main/stream_query_result.hpp +3 -0
- package/src/duckdb/src/include/duckdb/optimizer/join_order/cardinality_estimator.hpp +2 -2
- package/src/duckdb/src/include/duckdb/parser/base_expression.hpp +6 -12
- package/src/duckdb/src/include/duckdb/parser/constraint.hpp +2 -2
- package/src/duckdb/src/include/duckdb/parser/expression/between_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/bound_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/case_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/cast_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/collate_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/columnref_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/comparison_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/conjunction_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/constant_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/function_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/lambda_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/operator_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/parameter_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/positional_reference_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/star_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/subquery_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression/window_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/expression_map.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/parse_info.hpp +2 -2
- package/src/duckdb/src/include/duckdb/parser/parsed_expression.hpp +5 -1
- package/src/duckdb/src/include/duckdb/parser/query_node.hpp +2 -2
- package/src/duckdb/src/include/duckdb/parser/result_modifier.hpp +36 -5
- package/src/duckdb/src/include/duckdb/parser/sql_statement.hpp +7 -4
- package/src/duckdb/src/include/duckdb/parser/statement/select_statement.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/tableref/basetableref.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/tableref/emptytableref.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/tableref/expressionlistref.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/tableref/joinref.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/tableref/pivotref.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/tableref/subqueryref.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/tableref/table_function_ref.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/tableref.hpp +4 -3
- package/src/duckdb/src/include/duckdb/parser/transformer.hpp +107 -91
- package/src/duckdb/src/include/duckdb/planner/bind_context.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/bound_constraint.hpp +2 -2
- package/src/duckdb/src/include/duckdb/planner/bound_query_node.hpp +2 -2
- package/src/duckdb/src/include/duckdb/planner/bound_result_modifier.hpp +34 -1
- package/src/duckdb/src/include/duckdb/planner/bound_tableref.hpp +2 -2
- package/src/duckdb/src/include/duckdb/planner/expression/bound_aggregate_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_between_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_case_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_cast_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_columnref_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_comparison_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_conjunction_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_constant_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_function_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_lambda_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_lambdaref_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_operator_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_parameter_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_reference_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_subquery_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_unnest_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression/bound_window_expression.hpp +1 -1
- package/src/duckdb/src/include/duckdb/planner/expression.hpp +5 -7
- package/src/duckdb/src/include/duckdb/planner/filter/conjunction_filter.hpp +6 -0
- package/src/duckdb/src/include/duckdb/planner/filter/constant_filter.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/filter/null_filter.hpp +6 -0
- package/src/duckdb/src/include/duckdb/planner/logical_operator.hpp +2 -2
- package/src/duckdb/src/include/duckdb/planner/operator/logical_pivot.hpp +3 -0
- package/src/duckdb/src/include/duckdb/planner/table_binding.hpp +26 -0
- package/src/duckdb/src/include/duckdb/planner/table_filter.hpp +17 -0
- package/src/duckdb/src/include/duckdb/planner/tableref/bound_pivotref.hpp +3 -0
- package/src/duckdb/src/include/duckdb/storage/compression/chimp/chimp_analyze.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/compression/chimp/chimp_compress.hpp +2 -2
- package/src/duckdb/src/include/duckdb/storage/compression/patas/patas_analyze.hpp +2 -2
- package/src/duckdb/src/include/duckdb/storage/compression/patas/patas_compress.hpp +2 -2
- package/src/duckdb/src/include/duckdb/storage/index.hpp +2 -2
- package/src/duckdb/src/include/duckdb/storage/partial_block_manager.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/storage_manager.hpp +12 -0
- package/src/duckdb/src/include/duckdb/storage/string_uncompressed.hpp +1 -1
- package/src/duckdb/src/include/duckdb/storage/table/chunk_info.hpp +25 -2
- package/src/duckdb/src/include/duckdb/storage/table/column_checkpoint_state.hpp +12 -0
- package/src/duckdb/src/include/duckdb/storage/table/scan_state.hpp +22 -0
- package/src/duckdb/src/include/duckdb/transaction/duck_transaction_manager.hpp +2 -2
- package/src/duckdb/src/include/duckdb/transaction/transaction.hpp +2 -2
- package/src/duckdb/src/main/capi/appender-c.cpp +5 -5
- package/src/duckdb/src/main/capi/arrow-c.cpp +10 -10
- package/src/duckdb/src/main/capi/cast/from_decimal-c.cpp +1 -1
- package/src/duckdb/src/main/capi/cast/utils-c.cpp +1 -1
- package/src/duckdb/src/main/capi/config-c.cpp +1 -1
- package/src/duckdb/src/main/capi/data_chunk-c.cpp +17 -17
- package/src/duckdb/src/main/capi/duckdb-c.cpp +4 -4
- package/src/duckdb/src/main/capi/duckdb_value-c.cpp +4 -4
- package/src/duckdb/src/main/capi/logical_types-c.cpp +22 -21
- package/src/duckdb/src/main/capi/pending-c.cpp +6 -6
- package/src/duckdb/src/main/capi/prepared-c.cpp +10 -10
- package/src/duckdb/src/main/capi/replacement_scan-c.cpp +6 -6
- package/src/duckdb/src/main/capi/result-c.cpp +23 -23
- package/src/duckdb/src/main/capi/table_function-c.cpp +1 -1
- package/src/duckdb/src/main/client_context.cpp +3 -3
- package/src/duckdb/src/main/database_manager.cpp +1 -1
- package/src/duckdb/src/main/error_manager.cpp +1 -1
- package/src/duckdb/src/main/extension/extension_load.cpp +1 -1
- package/src/duckdb/src/main/relation/create_table_relation.cpp +1 -1
- package/src/duckdb/src/main/relation/create_view_relation.cpp +1 -1
- package/src/duckdb/src/main/relation/delete_relation.cpp +1 -1
- package/src/duckdb/src/main/relation/explain_relation.cpp +1 -1
- package/src/duckdb/src/main/relation/insert_relation.cpp +1 -1
- package/src/duckdb/src/main/relation/update_relation.cpp +1 -1
- package/src/duckdb/src/main/relation/write_csv_relation.cpp +1 -1
- package/src/duckdb/src/main/relation/write_parquet_relation.cpp +1 -1
- package/src/duckdb/src/main/relation.cpp +1 -1
- package/src/duckdb/src/optimizer/deliminator.cpp +12 -12
- package/src/duckdb/src/optimizer/expression_heuristics.cpp +1 -0
- package/src/duckdb/src/optimizer/filter_combiner.cpp +3 -3
- package/src/duckdb/src/optimizer/join_order/cardinality_estimator.cpp +10 -10
- package/src/duckdb/src/optimizer/join_order/join_order_optimizer.cpp +4 -7
- package/src/duckdb/src/optimizer/matcher/expression_matcher.cpp +1 -1
- package/src/duckdb/src/optimizer/pullup/pullup_projection.cpp +2 -2
- package/src/duckdb/src/optimizer/regex_range_filter.cpp +2 -4
- package/src/duckdb/src/optimizer/rule/distributivity.cpp +2 -2
- package/src/duckdb/src/optimizer/statistics/operator/propagate_filter.cpp +6 -6
- package/src/duckdb/src/optimizer/statistics/operator/propagate_get.cpp +2 -2
- package/src/duckdb/src/parallel/executor.cpp +1 -1
- package/src/duckdb/src/parser/base_expression.cpp +2 -5
- package/src/duckdb/src/parser/expression/between_expression.cpp +4 -4
- package/src/duckdb/src/parser/expression/case_expression.cpp +6 -6
- package/src/duckdb/src/parser/expression/cast_expression.cpp +4 -4
- package/src/duckdb/src/parser/expression/collate_expression.cpp +3 -3
- package/src/duckdb/src/parser/expression/columnref_expression.cpp +4 -4
- package/src/duckdb/src/parser/expression/comparison_expression.cpp +3 -3
- package/src/duckdb/src/parser/expression/conjunction_expression.cpp +2 -2
- package/src/duckdb/src/parser/expression/constant_expression.cpp +2 -2
- package/src/duckdb/src/parser/expression/function_expression.cpp +10 -14
- package/src/duckdb/src/parser/expression/lambda_expression.cpp +2 -2
- package/src/duckdb/src/parser/expression/operator_expression.cpp +4 -4
- package/src/duckdb/src/parser/expression/parameter_expression.cpp +2 -2
- package/src/duckdb/src/parser/expression/positional_reference_expression.cpp +3 -3
- package/src/duckdb/src/parser/expression/star_expression.cpp +9 -9
- package/src/duckdb/src/parser/expression/subquery_expression.cpp +5 -5
- package/src/duckdb/src/parser/expression/window_expression.cpp +13 -24
- package/src/duckdb/src/parser/parsed_expression.cpp +34 -18
- package/src/duckdb/src/parser/parsed_expression_iterator.cpp +4 -4
- package/src/duckdb/src/parser/parser.cpp +3 -3
- package/src/duckdb/src/parser/query_node/select_node.cpp +6 -13
- package/src/duckdb/src/parser/query_node.cpp +7 -6
- package/src/duckdb/src/parser/result_modifier.cpp +25 -18
- package/src/duckdb/src/parser/statement/select_statement.cpp +3 -3
- package/src/duckdb/src/parser/tableref/basetableref.cpp +4 -4
- package/src/duckdb/src/parser/tableref/emptytableref.cpp +1 -1
- package/src/duckdb/src/parser/tableref/expressionlistref.cpp +5 -5
- package/src/duckdb/src/parser/tableref/joinref.cpp +6 -6
- package/src/duckdb/src/parser/tableref/pivotref.cpp +10 -15
- package/src/duckdb/src/parser/tableref/subqueryref.cpp +3 -3
- package/src/duckdb/src/parser/tableref/table_function.cpp +3 -3
- package/src/duckdb/src/parser/tableref.cpp +12 -3
- package/src/duckdb/src/parser/transform/expression/transform_array_access.cpp +7 -7
- package/src/duckdb/src/parser/transform/expression/transform_bool_expr.cpp +4 -4
- package/src/duckdb/src/parser/transform/expression/transform_boolean_test.cpp +4 -4
- package/src/duckdb/src/parser/transform/expression/transform_case.cpp +8 -10
- package/src/duckdb/src/parser/transform/expression/transform_cast.cpp +7 -9
- package/src/duckdb/src/parser/transform/expression/transform_coalesce.cpp +3 -5
- package/src/duckdb/src/parser/transform/expression/transform_columnref.cpp +22 -22
- package/src/duckdb/src/parser/transform/expression/transform_constant.cpp +2 -2
- package/src/duckdb/src/parser/transform/expression/transform_expression.cpp +42 -44
- package/src/duckdb/src/parser/transform/expression/transform_function.cpp +70 -75
- package/src/duckdb/src/parser/transform/expression/transform_grouping_function.cpp +4 -4
- package/src/duckdb/src/parser/transform/expression/transform_interval.cpp +7 -7
- package/src/duckdb/src/parser/transform/expression/transform_is_null.cpp +4 -5
- package/src/duckdb/src/parser/transform/expression/transform_lambda.cpp +5 -6
- package/src/duckdb/src/parser/transform/expression/transform_operator.cpp +28 -29
- package/src/duckdb/src/parser/transform/expression/transform_param_ref.cpp +13 -14
- package/src/duckdb/src/parser/transform/expression/transform_positional_reference.cpp +4 -4
- package/src/duckdb/src/parser/transform/expression/transform_subquery.cpp +9 -10
- package/src/duckdb/src/parser/transform/helpers/transform_cte.cpp +28 -32
- package/src/duckdb/src/parser/transform/helpers/transform_groupby.cpp +18 -18
- package/src/duckdb/src/parser/transform/helpers/transform_sample.cpp +3 -3
- package/src/duckdb/src/parser/transform/helpers/transform_typename.cpp +27 -26
- package/src/duckdb/src/parser/transform/statement/transform_alter_sequence.cpp +11 -14
- package/src/duckdb/src/parser/transform/statement/transform_alter_table.cpp +14 -16
- package/src/duckdb/src/parser/transform/statement/transform_attach.cpp +8 -9
- package/src/duckdb/src/parser/transform/statement/transform_call.cpp +2 -5
- package/src/duckdb/src/parser/transform/statement/transform_checkpoint.cpp +4 -6
- package/src/duckdb/src/parser/transform/statement/transform_copy.cpp +22 -23
- package/src/duckdb/src/parser/transform/statement/transform_create_database.cpp +3 -4
- package/src/duckdb/src/parser/transform/statement/transform_create_function.cpp +14 -18
- package/src/duckdb/src/parser/transform/statement/transform_create_index.cpp +13 -15
- package/src/duckdb/src/parser/transform/statement/transform_create_schema.cpp +8 -10
- package/src/duckdb/src/parser/transform/statement/transform_create_sequence.cpp +8 -10
- package/src/duckdb/src/parser/transform/statement/transform_create_table.cpp +26 -28
- package/src/duckdb/src/parser/transform/statement/transform_create_table_as.cpp +8 -10
- package/src/duckdb/src/parser/transform/statement/transform_create_type.cpp +12 -15
- package/src/duckdb/src/parser/transform/statement/transform_create_view.cpp +13 -18
- package/src/duckdb/src/parser/transform/statement/transform_delete.cpp +11 -13
- package/src/duckdb/src/parser/transform/statement/transform_detach.cpp +3 -4
- package/src/duckdb/src/parser/transform/statement/transform_drop.cpp +20 -22
- package/src/duckdb/src/parser/transform/statement/transform_explain.cpp +5 -7
- package/src/duckdb/src/parser/transform/statement/transform_export.cpp +5 -6
- package/src/duckdb/src/parser/transform/statement/transform_import.cpp +2 -3
- package/src/duckdb/src/parser/transform/statement/transform_insert.cpp +21 -24
- package/src/duckdb/src/parser/transform/statement/transform_load.cpp +4 -5
- package/src/duckdb/src/parser/transform/statement/transform_pivot_stmt.cpp +7 -7
- package/src/duckdb/src/parser/transform/statement/transform_pragma.cpp +7 -9
- package/src/duckdb/src/parser/transform/statement/transform_prepare.cpp +11 -19
- package/src/duckdb/src/parser/transform/statement/transform_rename.cpp +12 -14
- package/src/duckdb/src/parser/transform/statement/transform_select.cpp +12 -9
- package/src/duckdb/src/parser/transform/statement/transform_select_node.cpp +34 -34
- package/src/duckdb/src/parser/transform/statement/transform_set.cpp +18 -19
- package/src/duckdb/src/parser/transform/statement/transform_show.cpp +5 -7
- package/src/duckdb/src/parser/transform/statement/transform_show_select.cpp +4 -5
- package/src/duckdb/src/parser/transform/statement/transform_transaction.cpp +3 -5
- package/src/duckdb/src/parser/transform/statement/transform_update.cpp +10 -13
- package/src/duckdb/src/parser/transform/statement/transform_upsert.cpp +4 -4
- package/src/duckdb/src/parser/transform/statement/transform_use.cpp +2 -3
- package/src/duckdb/src/parser/transform/statement/transform_vacuum.cpp +6 -10
- package/src/duckdb/src/parser/transform/tableref/transform_base_tableref.cpp +18 -18
- package/src/duckdb/src/parser/transform/tableref/transform_from.cpp +5 -5
- package/src/duckdb/src/parser/transform/tableref/transform_join.cpp +11 -11
- package/src/duckdb/src/parser/transform/tableref/transform_pivot.cpp +27 -27
- package/src/duckdb/src/parser/transform/tableref/transform_subquery.cpp +5 -5
- package/src/duckdb/src/parser/transform/tableref/transform_table_function.cpp +13 -12
- package/src/duckdb/src/parser/transform/tableref/transform_tableref.cpp +8 -8
- package/src/duckdb/src/parser/transformer.cpp +46 -46
- package/src/duckdb/src/planner/bind_context.cpp +6 -6
- package/src/duckdb/src/planner/binder/expression/bind_function_expression.cpp +1 -1
- package/src/duckdb/src/planner/binder/expression/bind_lambda.cpp +1 -1
- package/src/duckdb/src/planner/binder/expression/bind_star_expression.cpp +1 -1
- package/src/duckdb/src/planner/binder/expression/bind_subquery_expression.cpp +6 -3
- package/src/duckdb/src/planner/binder/query_node/bind_select_node.cpp +8 -8
- package/src/duckdb/src/planner/binder/query_node/plan_query_node.cpp +4 -4
- package/src/duckdb/src/planner/binder/statement/bind_create.cpp +13 -5
- package/src/duckdb/src/planner/binder/statement/bind_insert.cpp +2 -2
- package/src/duckdb/src/planner/binder/statement/bind_update.cpp +1 -1
- package/src/duckdb/src/planner/binder/tableref/bind_pivot.cpp +1 -1
- package/src/duckdb/src/planner/binder/tableref/bind_table_function.cpp +14 -7
- package/src/duckdb/src/planner/binder.cpp +1 -1
- package/src/duckdb/src/planner/bound_result_modifier.cpp +16 -11
- package/src/duckdb/src/planner/expression/bound_aggregate_expression.cpp +5 -5
- package/src/duckdb/src/planner/expression/bound_between_expression.cpp +5 -5
- package/src/duckdb/src/planner/expression/bound_case_expression.cpp +5 -5
- package/src/duckdb/src/planner/expression/bound_cast_expression.cpp +3 -3
- package/src/duckdb/src/planner/expression/bound_columnref_expression.cpp +2 -2
- package/src/duckdb/src/planner/expression/bound_comparison_expression.cpp +4 -4
- package/src/duckdb/src/planner/expression/bound_conjunction_expression.cpp +2 -2
- package/src/duckdb/src/planner/expression/bound_constant_expression.cpp +2 -2
- package/src/duckdb/src/planner/expression/bound_expression.cpp +1 -1
- package/src/duckdb/src/planner/expression/bound_function_expression.cpp +3 -4
- package/src/duckdb/src/planner/expression/bound_lambda_expression.cpp +4 -5
- package/src/duckdb/src/planner/expression/bound_lambdaref_expression.cpp +2 -2
- package/src/duckdb/src/planner/expression/bound_operator_expression.cpp +3 -4
- package/src/duckdb/src/planner/expression/bound_parameter_expression.cpp +2 -2
- package/src/duckdb/src/planner/expression/bound_reference_expression.cpp +2 -2
- package/src/duckdb/src/planner/expression/bound_subquery_expression.cpp +1 -1
- package/src/duckdb/src/planner/expression/bound_unnest_expression.cpp +3 -3
- package/src/duckdb/src/planner/expression/bound_window_expression.cpp +8 -21
- package/src/duckdb/src/planner/expression.cpp +15 -0
- package/src/duckdb/src/planner/expression_binder/base_select_binder.cpp +2 -2
- package/src/duckdb/src/planner/expression_iterator.cpp +2 -2
- package/src/duckdb/src/planner/filter/conjunction_filter.cpp +2 -2
- package/src/duckdb/src/planner/filter/constant_filter.cpp +1 -1
- package/src/duckdb/src/planner/logical_operator.cpp +3 -4
- package/src/duckdb/src/planner/logical_operator_visitor.cpp +1 -1
- package/src/duckdb/src/planner/table_filter.cpp +1 -1
- package/src/duckdb/src/storage/arena_allocator.cpp +2 -2
- package/src/duckdb/src/storage/buffer/block_handle.cpp +1 -1
- package/src/duckdb/src/storage/checkpoint/write_overflow_strings_to_disk.cpp +2 -2
- package/src/duckdb/src/storage/checkpoint_manager.cpp +3 -3
- package/src/duckdb/src/storage/compression/bitpacking.cpp +8 -8
- package/src/duckdb/src/storage/compression/dictionary_compression.cpp +36 -36
- package/src/duckdb/src/storage/compression/fixed_size_uncompressed.cpp +11 -11
- package/src/duckdb/src/storage/compression/fsst.cpp +34 -34
- package/src/duckdb/src/storage/compression/rle.cpp +8 -8
- package/src/duckdb/src/storage/compression/string_uncompressed.cpp +13 -13
- package/src/duckdb/src/storage/compression/validity_uncompressed.cpp +11 -11
- package/src/duckdb/src/storage/data_table.cpp +2 -2
- package/src/duckdb/src/storage/index.cpp +1 -3
- package/src/duckdb/src/storage/local_storage.cpp +2 -1
- package/src/duckdb/src/storage/magic_bytes.cpp +1 -1
- package/src/duckdb/src/storage/single_file_block_manager.cpp +3 -3
- package/src/duckdb/src/storage/standard_buffer_manager.cpp +3 -3
- package/src/duckdb/src/storage/statistics/list_stats.cpp +1 -1
- package/src/duckdb/src/storage/statistics/numeric_stats.cpp +1 -1
- package/src/duckdb/src/storage/statistics/string_stats.cpp +15 -14
- package/src/duckdb/src/storage/table/chunk_info.cpp +2 -2
- package/src/duckdb/src/storage/table/column_segment.cpp +3 -3
- package/src/duckdb/src/storage/table/list_column_data.cpp +8 -7
- package/src/duckdb/src/storage/table/row_group.cpp +4 -4
- package/src/duckdb/src/storage/table/standard_column_data.cpp +1 -1
- package/src/duckdb/src/storage/table/update_segment.cpp +12 -12
- package/src/duckdb/src/storage/wal_replay.cpp +1 -1
- package/src/duckdb/src/transaction/cleanup_state.cpp +3 -3
- package/src/duckdb/src/transaction/commit_state.cpp +8 -8
- package/src/duckdb/src/transaction/duck_transaction.cpp +9 -7
- package/src/duckdb/src/transaction/duck_transaction_manager.cpp +16 -16
- package/src/duckdb/src/transaction/rollback_state.cpp +3 -3
- package/src/duckdb/src/verification/prepared_statement_verifier.cpp +1 -1
- package/src/duckdb/src/verification/statement_verifier.cpp +3 -4
- package/src/duckdb/third_party/hyperloglog/hyperloglog.hpp +2 -2
- package/src/duckdb/third_party/libpg_query/src_backend_parser_gram.cpp +13479 -13564
- package/src/duckdb/third_party/pcg/pcg_extras.hpp +1 -1
@@ -10,7 +10,7 @@ duckdb_data_chunk duckdb_create_data_chunk(duckdb_logical_type *ctypes, idx_t co
|
|
10
10
|
}
|
11
11
|
duckdb::vector<duckdb::LogicalType> types;
|
12
12
|
for (idx_t i = 0; i < column_count; i++) {
|
13
|
-
auto ltype =
|
13
|
+
auto ltype = reinterpret_cast<duckdb::LogicalType *>(ctypes[i]);
|
14
14
|
types.push_back(*ltype);
|
15
15
|
}
|
16
16
|
|
@@ -21,7 +21,7 @@ duckdb_data_chunk duckdb_create_data_chunk(duckdb_logical_type *ctypes, idx_t co
|
|
21
21
|
|
22
22
|
void duckdb_destroy_data_chunk(duckdb_data_chunk *chunk) {
|
23
23
|
if (chunk && *chunk) {
|
24
|
-
auto dchunk =
|
24
|
+
auto dchunk = reinterpret_cast<duckdb::DataChunk *>(*chunk);
|
25
25
|
delete dchunk;
|
26
26
|
*chunk = nullptr;
|
27
27
|
}
|
@@ -31,7 +31,7 @@ void duckdb_data_chunk_reset(duckdb_data_chunk chunk) {
|
|
31
31
|
if (!chunk) {
|
32
32
|
return;
|
33
33
|
}
|
34
|
-
auto dchunk =
|
34
|
+
auto dchunk = reinterpret_cast<duckdb::DataChunk *>(chunk);
|
35
35
|
dchunk->Reset();
|
36
36
|
}
|
37
37
|
|
@@ -39,7 +39,7 @@ idx_t duckdb_data_chunk_get_column_count(duckdb_data_chunk chunk) {
|
|
39
39
|
if (!chunk) {
|
40
40
|
return 0;
|
41
41
|
}
|
42
|
-
auto dchunk =
|
42
|
+
auto dchunk = reinterpret_cast<duckdb::DataChunk *>(chunk);
|
43
43
|
return dchunk->ColumnCount();
|
44
44
|
}
|
45
45
|
|
@@ -47,7 +47,7 @@ duckdb_vector duckdb_data_chunk_get_vector(duckdb_data_chunk chunk, idx_t col_id
|
|
47
47
|
if (!chunk || col_idx >= duckdb_data_chunk_get_column_count(chunk)) {
|
48
48
|
return nullptr;
|
49
49
|
}
|
50
|
-
auto dchunk =
|
50
|
+
auto dchunk = reinterpret_cast<duckdb::DataChunk *>(chunk);
|
51
51
|
return reinterpret_cast<duckdb_vector>(&dchunk->data[col_idx]);
|
52
52
|
}
|
53
53
|
|
@@ -55,7 +55,7 @@ idx_t duckdb_data_chunk_get_size(duckdb_data_chunk chunk) {
|
|
55
55
|
if (!chunk) {
|
56
56
|
return 0;
|
57
57
|
}
|
58
|
-
auto dchunk =
|
58
|
+
auto dchunk = reinterpret_cast<duckdb::DataChunk *>(chunk);
|
59
59
|
return dchunk->size();
|
60
60
|
}
|
61
61
|
|
@@ -63,7 +63,7 @@ void duckdb_data_chunk_set_size(duckdb_data_chunk chunk, idx_t size) {
|
|
63
63
|
if (!chunk) {
|
64
64
|
return;
|
65
65
|
}
|
66
|
-
auto dchunk =
|
66
|
+
auto dchunk = reinterpret_cast<duckdb::DataChunk *>(chunk);
|
67
67
|
dchunk->SetCardinality(size);
|
68
68
|
}
|
69
69
|
|
@@ -71,7 +71,7 @@ duckdb_logical_type duckdb_vector_get_column_type(duckdb_vector vector) {
|
|
71
71
|
if (!vector) {
|
72
72
|
return nullptr;
|
73
73
|
}
|
74
|
-
auto v =
|
74
|
+
auto v = reinterpret_cast<duckdb::Vector *>(vector);
|
75
75
|
return reinterpret_cast<duckdb_logical_type>(new duckdb::LogicalType(v->GetType()));
|
76
76
|
}
|
77
77
|
|
@@ -79,7 +79,7 @@ void *duckdb_vector_get_data(duckdb_vector vector) {
|
|
79
79
|
if (!vector) {
|
80
80
|
return nullptr;
|
81
81
|
}
|
82
|
-
auto v =
|
82
|
+
auto v = reinterpret_cast<duckdb::Vector *>(vector);
|
83
83
|
return duckdb::FlatVector::GetData(*v);
|
84
84
|
}
|
85
85
|
|
@@ -87,7 +87,7 @@ uint64_t *duckdb_vector_get_validity(duckdb_vector vector) {
|
|
87
87
|
if (!vector) {
|
88
88
|
return nullptr;
|
89
89
|
}
|
90
|
-
auto v =
|
90
|
+
auto v = reinterpret_cast<duckdb::Vector *>(vector);
|
91
91
|
return duckdb::FlatVector::Validity(*v).GetData();
|
92
92
|
}
|
93
93
|
|
@@ -95,7 +95,7 @@ void duckdb_vector_ensure_validity_writable(duckdb_vector vector) {
|
|
95
95
|
if (!vector) {
|
96
96
|
return;
|
97
97
|
}
|
98
|
-
auto v =
|
98
|
+
auto v = reinterpret_cast<duckdb::Vector *>(vector);
|
99
99
|
auto &validity = duckdb::FlatVector::Validity(*v);
|
100
100
|
validity.EnsureWritable();
|
101
101
|
}
|
@@ -108,7 +108,7 @@ void duckdb_vector_assign_string_element_len(duckdb_vector vector, idx_t index,
|
|
108
108
|
if (!vector) {
|
109
109
|
return;
|
110
110
|
}
|
111
|
-
auto v =
|
111
|
+
auto v = reinterpret_cast<duckdb::Vector *>(vector);
|
112
112
|
auto data = duckdb::FlatVector::GetData<duckdb::string_t>(*v);
|
113
113
|
data[index] = duckdb::StringVector::AddString(*v, str, str_len);
|
114
114
|
}
|
@@ -117,7 +117,7 @@ duckdb_vector duckdb_list_vector_get_child(duckdb_vector vector) {
|
|
117
117
|
if (!vector) {
|
118
118
|
return nullptr;
|
119
119
|
}
|
120
|
-
auto v =
|
120
|
+
auto v = reinterpret_cast<duckdb::Vector *>(vector);
|
121
121
|
return reinterpret_cast<duckdb_vector>(&duckdb::ListVector::GetEntry(*v));
|
122
122
|
}
|
123
123
|
|
@@ -125,7 +125,7 @@ idx_t duckdb_list_vector_get_size(duckdb_vector vector) {
|
|
125
125
|
if (!vector) {
|
126
126
|
return 0;
|
127
127
|
}
|
128
|
-
auto v =
|
128
|
+
auto v = reinterpret_cast<duckdb::Vector *>(vector);
|
129
129
|
return duckdb::ListVector::GetListSize(*v);
|
130
130
|
}
|
131
131
|
|
@@ -133,7 +133,7 @@ duckdb_state duckdb_list_vector_set_size(duckdb_vector vector, idx_t size) {
|
|
133
133
|
if (!vector) {
|
134
134
|
return duckdb_state::DuckDBError;
|
135
135
|
}
|
136
|
-
auto v =
|
136
|
+
auto v = reinterpret_cast<duckdb::Vector *>(vector);
|
137
137
|
duckdb::ListVector::SetListSize(*v, size);
|
138
138
|
return duckdb_state::DuckDBSuccess;
|
139
139
|
}
|
@@ -142,7 +142,7 @@ duckdb_state duckdb_list_vector_reserve(duckdb_vector vector, idx_t required_cap
|
|
142
142
|
if (!vector) {
|
143
143
|
return duckdb_state::DuckDBError;
|
144
144
|
}
|
145
|
-
auto v =
|
145
|
+
auto v = reinterpret_cast<duckdb::Vector *>(vector);
|
146
146
|
duckdb::ListVector::Reserve(*v, required_capacity);
|
147
147
|
return duckdb_state::DuckDBSuccess;
|
148
148
|
}
|
@@ -151,7 +151,7 @@ duckdb_vector duckdb_struct_vector_get_child(duckdb_vector vector, idx_t index)
|
|
151
151
|
if (!vector) {
|
152
152
|
return nullptr;
|
153
153
|
}
|
154
|
-
auto v =
|
154
|
+
auto v = reinterpret_cast<duckdb::Vector *>(vector);
|
155
155
|
return reinterpret_cast<duckdb_vector>(duckdb::StructVector::GetEntries(*v)[index].get());
|
156
156
|
}
|
157
157
|
|
@@ -33,7 +33,7 @@ duckdb_state duckdb_open(const char *path, duckdb_database *out) {
|
|
33
33
|
|
34
34
|
void duckdb_close(duckdb_database *database) {
|
35
35
|
if (database && *database) {
|
36
|
-
auto wrapper =
|
36
|
+
auto wrapper = reinterpret_cast<DatabaseData *>(*database);
|
37
37
|
delete wrapper;
|
38
38
|
*database = nullptr;
|
39
39
|
}
|
@@ -43,7 +43,7 @@ duckdb_state duckdb_connect(duckdb_database database, duckdb_connection *out) {
|
|
43
43
|
if (!database || !out) {
|
44
44
|
return DuckDBError;
|
45
45
|
}
|
46
|
-
auto wrapper =
|
46
|
+
auto wrapper = reinterpret_cast<DatabaseData *>(database);
|
47
47
|
Connection *connection;
|
48
48
|
try {
|
49
49
|
connection = new Connection(*wrapper->database);
|
@@ -56,14 +56,14 @@ duckdb_state duckdb_connect(duckdb_database database, duckdb_connection *out) {
|
|
56
56
|
|
57
57
|
void duckdb_disconnect(duckdb_connection *connection) {
|
58
58
|
if (connection && *connection) {
|
59
|
-
Connection *conn =
|
59
|
+
Connection *conn = reinterpret_cast<Connection *>(*connection);
|
60
60
|
delete conn;
|
61
61
|
*connection = nullptr;
|
62
62
|
}
|
63
63
|
}
|
64
64
|
|
65
65
|
duckdb_state duckdb_query(duckdb_connection connection, const char *query, duckdb_result *out) {
|
66
|
-
Connection *conn =
|
66
|
+
Connection *conn = reinterpret_cast<Connection *>(connection);
|
67
67
|
auto result = conn->Query(query);
|
68
68
|
return duckdb_translate_result(std::move(result), out);
|
69
69
|
}
|
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
void duckdb_destroy_value(duckdb_value *value) {
|
4
4
|
if (value && *value) {
|
5
|
-
auto val =
|
5
|
+
auto val = reinterpret_cast<duckdb::Value *>(*value);
|
6
6
|
delete val;
|
7
7
|
*value = nullptr;
|
8
8
|
}
|
@@ -22,18 +22,18 @@ duckdb_value duckdb_create_int64(int64_t input) {
|
|
22
22
|
}
|
23
23
|
|
24
24
|
char *duckdb_get_varchar(duckdb_value value) {
|
25
|
-
auto val =
|
25
|
+
auto val = reinterpret_cast<duckdb::Value *>(value);
|
26
26
|
auto str_val = val->DefaultCastAs(duckdb::LogicalType::VARCHAR);
|
27
27
|
auto &str = duckdb::StringValue::Get(str_val);
|
28
28
|
|
29
|
-
auto result =
|
29
|
+
auto result = reinterpret_cast<char *>(malloc(sizeof(char *) * (str.size() + 1)));
|
30
30
|
memcpy(result, str.c_str(), str.size());
|
31
31
|
result[str.size()] = '\0';
|
32
32
|
return result;
|
33
33
|
}
|
34
34
|
|
35
35
|
int64_t duckdb_get_int64(duckdb_value value) {
|
36
|
-
auto val =
|
36
|
+
auto val = reinterpret_cast<duckdb::Value *>(value);
|
37
37
|
if (!val->DefaultTryCastAs(duckdb::LogicalType::BIGINT)) {
|
38
38
|
return 0;
|
39
39
|
}
|
@@ -4,7 +4,7 @@ static bool AssertLogicalTypeId(duckdb_logical_type type, duckdb::LogicalTypeId
|
|
4
4
|
if (!type) {
|
5
5
|
return false;
|
6
6
|
}
|
7
|
-
auto <ype = *(
|
7
|
+
auto <ype = *(reinterpret_cast<duckdb::LogicalType *>(type));
|
8
8
|
if (ltype.id() != type_id) {
|
9
9
|
return false;
|
10
10
|
}
|
@@ -15,7 +15,7 @@ static bool AssertInternalType(duckdb_logical_type type, duckdb::PhysicalType ph
|
|
15
15
|
if (!type) {
|
16
16
|
return false;
|
17
17
|
}
|
18
|
-
auto <ype = *(
|
18
|
+
auto <ype = *(reinterpret_cast<duckdb::LogicalType *>(type));
|
19
19
|
if (ltype.InternalType() != physical_type) {
|
20
20
|
return false;
|
21
21
|
}
|
@@ -31,7 +31,7 @@ duckdb_logical_type duckdb_create_list_type(duckdb_logical_type type) {
|
|
31
31
|
return nullptr;
|
32
32
|
}
|
33
33
|
duckdb::LogicalType *ltype = new duckdb::LogicalType;
|
34
|
-
*ltype = duckdb::LogicalType::LIST(*
|
34
|
+
*ltype = duckdb::LogicalType::LIST(*reinterpret_cast<duckdb::LogicalType *>(type));
|
35
35
|
return reinterpret_cast<duckdb_logical_type>(ltype);
|
36
36
|
}
|
37
37
|
|
@@ -40,7 +40,7 @@ duckdb_logical_type duckdb_create_union_type(duckdb_logical_type member_types_p,
|
|
40
40
|
if (!member_types_p || !member_names) {
|
41
41
|
return nullptr;
|
42
42
|
}
|
43
|
-
duckdb::LogicalType *member_types =
|
43
|
+
duckdb::LogicalType *member_types = reinterpret_cast<duckdb::LogicalType *>(member_types_p);
|
44
44
|
duckdb::LogicalType *mtype = new duckdb::LogicalType;
|
45
45
|
duckdb::child_list_t<duckdb::LogicalType> members;
|
46
46
|
|
@@ -56,7 +56,8 @@ duckdb_logical_type duckdb_create_map_type(duckdb_logical_type key_type, duckdb_
|
|
56
56
|
return nullptr;
|
57
57
|
}
|
58
58
|
duckdb::LogicalType *mtype = new duckdb::LogicalType;
|
59
|
-
*mtype = duckdb::LogicalType::MAP(*
|
59
|
+
*mtype = duckdb::LogicalType::MAP(*reinterpret_cast<duckdb::LogicalType *>(key_type),
|
60
|
+
*reinterpret_cast<duckdb::LogicalType *>(value_type));
|
60
61
|
return reinterpret_cast<duckdb_logical_type>(mtype);
|
61
62
|
}
|
62
63
|
|
@@ -68,13 +69,13 @@ duckdb_type duckdb_get_type_id(duckdb_logical_type type) {
|
|
68
69
|
if (!type) {
|
69
70
|
return DUCKDB_TYPE_INVALID;
|
70
71
|
}
|
71
|
-
auto ltype =
|
72
|
+
auto ltype = reinterpret_cast<duckdb::LogicalType *>(type);
|
72
73
|
return duckdb::ConvertCPPTypeToC(*ltype);
|
73
74
|
}
|
74
75
|
|
75
76
|
void duckdb_destroy_logical_type(duckdb_logical_type *type) {
|
76
77
|
if (type && *type) {
|
77
|
-
auto ltype =
|
78
|
+
auto ltype = reinterpret_cast<duckdb::LogicalType *>(*type);
|
78
79
|
delete ltype;
|
79
80
|
*type = nullptr;
|
80
81
|
}
|
@@ -84,7 +85,7 @@ uint8_t duckdb_decimal_width(duckdb_logical_type type) {
|
|
84
85
|
if (!AssertLogicalTypeId(type, duckdb::LogicalTypeId::DECIMAL)) {
|
85
86
|
return 0;
|
86
87
|
}
|
87
|
-
auto <ype = *(
|
88
|
+
auto <ype = *(reinterpret_cast<duckdb::LogicalType *>(type));
|
88
89
|
return duckdb::DecimalType::GetWidth(ltype);
|
89
90
|
}
|
90
91
|
|
@@ -92,7 +93,7 @@ uint8_t duckdb_decimal_scale(duckdb_logical_type type) {
|
|
92
93
|
if (!AssertLogicalTypeId(type, duckdb::LogicalTypeId::DECIMAL)) {
|
93
94
|
return 0;
|
94
95
|
}
|
95
|
-
auto <ype = *(
|
96
|
+
auto <ype = *(reinterpret_cast<duckdb::LogicalType *>(type));
|
96
97
|
return duckdb::DecimalType::GetScale(ltype);
|
97
98
|
}
|
98
99
|
|
@@ -100,7 +101,7 @@ duckdb_type duckdb_decimal_internal_type(duckdb_logical_type type) {
|
|
100
101
|
if (!AssertLogicalTypeId(type, duckdb::LogicalTypeId::DECIMAL)) {
|
101
102
|
return DUCKDB_TYPE_INVALID;
|
102
103
|
}
|
103
|
-
auto <ype = *(
|
104
|
+
auto <ype = *(reinterpret_cast<duckdb::LogicalType *>(type));
|
104
105
|
switch (ltype.InternalType()) {
|
105
106
|
case duckdb::PhysicalType::INT16:
|
106
107
|
return DUCKDB_TYPE_SMALLINT;
|
@@ -119,7 +120,7 @@ duckdb_type duckdb_enum_internal_type(duckdb_logical_type type) {
|
|
119
120
|
if (!AssertLogicalTypeId(type, duckdb::LogicalTypeId::ENUM)) {
|
120
121
|
return DUCKDB_TYPE_INVALID;
|
121
122
|
}
|
122
|
-
auto <ype = *(
|
123
|
+
auto <ype = *(reinterpret_cast<duckdb::LogicalType *>(type));
|
123
124
|
switch (ltype.InternalType()) {
|
124
125
|
case duckdb::PhysicalType::UINT8:
|
125
126
|
return DUCKDB_TYPE_UTINYINT;
|
@@ -136,7 +137,7 @@ uint32_t duckdb_enum_dictionary_size(duckdb_logical_type type) {
|
|
136
137
|
if (!AssertLogicalTypeId(type, duckdb::LogicalTypeId::ENUM)) {
|
137
138
|
return 0;
|
138
139
|
}
|
139
|
-
auto <ype = *(
|
140
|
+
auto <ype = *(reinterpret_cast<duckdb::LogicalType *>(type));
|
140
141
|
return duckdb::EnumType::GetSize(ltype);
|
141
142
|
}
|
142
143
|
|
@@ -144,7 +145,7 @@ char *duckdb_enum_dictionary_value(duckdb_logical_type type, idx_t index) {
|
|
144
145
|
if (!AssertLogicalTypeId(type, duckdb::LogicalTypeId::ENUM)) {
|
145
146
|
return nullptr;
|
146
147
|
}
|
147
|
-
auto <ype = *(
|
148
|
+
auto <ype = *(reinterpret_cast<duckdb::LogicalType *>(type));
|
148
149
|
auto &vector = duckdb::EnumType::GetValuesInsertOrder(ltype);
|
149
150
|
auto value = vector.GetValue(index);
|
150
151
|
return strdup(duckdb::StringValue::Get(value).c_str());
|
@@ -155,7 +156,7 @@ duckdb_logical_type duckdb_list_type_child_type(duckdb_logical_type type) {
|
|
155
156
|
!AssertLogicalTypeId(type, duckdb::LogicalTypeId::MAP)) {
|
156
157
|
return nullptr;
|
157
158
|
}
|
158
|
-
auto <ype = *(
|
159
|
+
auto <ype = *(reinterpret_cast<duckdb::LogicalType *>(type));
|
159
160
|
if (ltype.id() != duckdb::LogicalTypeId::LIST && ltype.id() != duckdb::LogicalTypeId::MAP) {
|
160
161
|
return nullptr;
|
161
162
|
}
|
@@ -166,7 +167,7 @@ duckdb_logical_type duckdb_map_type_key_type(duckdb_logical_type type) {
|
|
166
167
|
if (!AssertLogicalTypeId(type, duckdb::LogicalTypeId::MAP)) {
|
167
168
|
return nullptr;
|
168
169
|
}
|
169
|
-
auto &mtype = *(
|
170
|
+
auto &mtype = *(reinterpret_cast<duckdb::LogicalType *>(type));
|
170
171
|
if (mtype.id() != duckdb::LogicalTypeId::MAP) {
|
171
172
|
return nullptr;
|
172
173
|
}
|
@@ -177,7 +178,7 @@ duckdb_logical_type duckdb_map_type_value_type(duckdb_logical_type type) {
|
|
177
178
|
if (!AssertLogicalTypeId(type, duckdb::LogicalTypeId::MAP)) {
|
178
179
|
return nullptr;
|
179
180
|
}
|
180
|
-
auto &mtype = *(
|
181
|
+
auto &mtype = *(reinterpret_cast<duckdb::LogicalType *>(type));
|
181
182
|
if (mtype.id() != duckdb::LogicalTypeId::MAP) {
|
182
183
|
return nullptr;
|
183
184
|
}
|
@@ -188,7 +189,7 @@ idx_t duckdb_struct_type_child_count(duckdb_logical_type type) {
|
|
188
189
|
if (!AssertInternalType(type, duckdb::PhysicalType::STRUCT)) {
|
189
190
|
return 0;
|
190
191
|
}
|
191
|
-
auto <ype = *(
|
192
|
+
auto <ype = *(reinterpret_cast<duckdb::LogicalType *>(type));
|
192
193
|
return duckdb::StructType::GetChildCount(ltype);
|
193
194
|
}
|
194
195
|
|
@@ -210,7 +211,7 @@ char *duckdb_union_type_member_name(duckdb_logical_type type, idx_t index) {
|
|
210
211
|
if (!AssertLogicalTypeId(type, duckdb::LogicalTypeId::UNION)) {
|
211
212
|
return nullptr;
|
212
213
|
}
|
213
|
-
auto <ype = *(
|
214
|
+
auto <ype = *(reinterpret_cast<duckdb::LogicalType *>(type));
|
214
215
|
return strdup(duckdb::UnionType::GetMemberName(ltype, index).c_str());
|
215
216
|
}
|
216
217
|
|
@@ -221,7 +222,7 @@ duckdb_logical_type duckdb_union_type_member_type(duckdb_logical_type type, idx_
|
|
221
222
|
if (!AssertLogicalTypeId(type, duckdb::LogicalTypeId::UNION)) {
|
222
223
|
return nullptr;
|
223
224
|
}
|
224
|
-
auto <ype = *(
|
225
|
+
auto <ype = *(reinterpret_cast<duckdb::LogicalType *>(type));
|
225
226
|
return reinterpret_cast<duckdb_logical_type>(
|
226
227
|
new duckdb::LogicalType(duckdb::UnionType::GetMemberType(ltype, index)));
|
227
228
|
}
|
@@ -230,7 +231,7 @@ char *duckdb_struct_type_child_name(duckdb_logical_type type, idx_t index) {
|
|
230
231
|
if (!AssertInternalType(type, duckdb::PhysicalType::STRUCT)) {
|
231
232
|
return nullptr;
|
232
233
|
}
|
233
|
-
auto <ype = *(
|
234
|
+
auto <ype = *(reinterpret_cast<duckdb::LogicalType *>(type));
|
234
235
|
return strdup(duckdb::StructType::GetChildName(ltype, index).c_str());
|
235
236
|
}
|
236
237
|
|
@@ -238,7 +239,7 @@ duckdb_logical_type duckdb_struct_type_child_type(duckdb_logical_type type, idx_
|
|
238
239
|
if (!AssertInternalType(type, duckdb::PhysicalType::STRUCT)) {
|
239
240
|
return nullptr;
|
240
241
|
}
|
241
|
-
auto <ype = *(
|
242
|
+
auto <ype = *(reinterpret_cast<duckdb::LogicalType *>(type));
|
242
243
|
if (ltype.InternalType() != duckdb::PhysicalType::STRUCT) {
|
243
244
|
return nullptr;
|
244
245
|
}
|
@@ -14,7 +14,7 @@ duckdb_state duckdb_pending_prepared_internal(duckdb_prepared_statement prepared
|
|
14
14
|
if (!prepared_statement || !out_result) {
|
15
15
|
return DuckDBError;
|
16
16
|
}
|
17
|
-
auto wrapper =
|
17
|
+
auto wrapper = reinterpret_cast<PreparedStatementWrapper *>(prepared_statement);
|
18
18
|
auto result = new PendingStatementWrapper();
|
19
19
|
result->allow_streaming = allow_streaming;
|
20
20
|
try {
|
@@ -25,7 +25,7 @@ duckdb_state duckdb_pending_prepared_internal(duckdb_prepared_statement prepared
|
|
25
25
|
result->statement = make_uniq<PendingQueryResult>(duckdb::PreservedError(ex));
|
26
26
|
}
|
27
27
|
duckdb_state return_value = !result->statement->HasError() ? DuckDBSuccess : DuckDBError;
|
28
|
-
*out_result = (
|
28
|
+
*out_result = reinterpret_cast<duckdb_pending_result>(result);
|
29
29
|
|
30
30
|
return return_value;
|
31
31
|
}
|
@@ -43,7 +43,7 @@ void duckdb_destroy_pending(duckdb_pending_result *pending_result) {
|
|
43
43
|
if (!pending_result || !*pending_result) {
|
44
44
|
return;
|
45
45
|
}
|
46
|
-
auto wrapper =
|
46
|
+
auto wrapper = reinterpret_cast<PendingStatementWrapper *>(*pending_result);
|
47
47
|
if (wrapper->statement) {
|
48
48
|
wrapper->statement->Close();
|
49
49
|
}
|
@@ -55,7 +55,7 @@ const char *duckdb_pending_error(duckdb_pending_result pending_result) {
|
|
55
55
|
if (!pending_result) {
|
56
56
|
return nullptr;
|
57
57
|
}
|
58
|
-
auto wrapper =
|
58
|
+
auto wrapper = reinterpret_cast<PendingStatementWrapper *>(pending_result);
|
59
59
|
if (!wrapper->statement) {
|
60
60
|
return nullptr;
|
61
61
|
}
|
@@ -66,7 +66,7 @@ duckdb_pending_state duckdb_pending_execute_task(duckdb_pending_result pending_r
|
|
66
66
|
if (!pending_result) {
|
67
67
|
return DUCKDB_PENDING_ERROR;
|
68
68
|
}
|
69
|
-
auto wrapper =
|
69
|
+
auto wrapper = reinterpret_cast<PendingStatementWrapper *>(pending_result);
|
70
70
|
if (!wrapper->statement) {
|
71
71
|
return DUCKDB_PENDING_ERROR;
|
72
72
|
}
|
@@ -97,7 +97,7 @@ duckdb_state duckdb_execute_pending(duckdb_pending_result pending_result, duckdb
|
|
97
97
|
if (!pending_result || !out_result) {
|
98
98
|
return DuckDBError;
|
99
99
|
}
|
100
|
-
auto wrapper =
|
100
|
+
auto wrapper = reinterpret_cast<PendingStatementWrapper *>(pending_result);
|
101
101
|
if (!wrapper->statement) {
|
102
102
|
return DuckDBError;
|
103
103
|
}
|
@@ -21,7 +21,7 @@ idx_t duckdb_extract_statements(duckdb_connection connection, const char *query,
|
|
21
21
|
return 0;
|
22
22
|
}
|
23
23
|
auto wrapper = new ExtractStatementsWrapper();
|
24
|
-
Connection *conn =
|
24
|
+
Connection *conn = reinterpret_cast<Connection *>(connection);
|
25
25
|
try {
|
26
26
|
wrapper->statements = conn->ExtractStatements(query);
|
27
27
|
} catch (const duckdb::ParserException &e) {
|
@@ -35,7 +35,7 @@ idx_t duckdb_extract_statements(duckdb_connection connection, const char *query,
|
|
35
35
|
duckdb_state duckdb_prepare_extracted_statement(duckdb_connection connection,
|
36
36
|
duckdb_extracted_statements extracted_statements, idx_t index,
|
37
37
|
duckdb_prepared_statement *out_prepared_statement) {
|
38
|
-
Connection *conn =
|
38
|
+
Connection *conn = reinterpret_cast<Connection *>(connection);
|
39
39
|
auto source_wrapper = (ExtractStatementsWrapper *)extracted_statements;
|
40
40
|
|
41
41
|
if (!connection || !out_prepared_statement || index >= source_wrapper->statements.size()) {
|
@@ -62,14 +62,14 @@ duckdb_state duckdb_prepare(duckdb_connection connection, const char *query,
|
|
62
62
|
return DuckDBError;
|
63
63
|
}
|
64
64
|
auto wrapper = new PreparedStatementWrapper();
|
65
|
-
Connection *conn =
|
65
|
+
Connection *conn = reinterpret_cast<Connection *>(connection);
|
66
66
|
wrapper->statement = conn->Prepare(query);
|
67
67
|
*out_prepared_statement = (duckdb_prepared_statement)wrapper;
|
68
68
|
return !wrapper->statement->HasError() ? DuckDBSuccess : DuckDBError;
|
69
69
|
}
|
70
70
|
|
71
71
|
const char *duckdb_prepare_error(duckdb_prepared_statement prepared_statement) {
|
72
|
-
auto wrapper =
|
72
|
+
auto wrapper = reinterpret_cast<PreparedStatementWrapper *>(prepared_statement);
|
73
73
|
if (!wrapper || !wrapper->statement || !wrapper->statement->HasError()) {
|
74
74
|
return nullptr;
|
75
75
|
}
|
@@ -77,7 +77,7 @@ const char *duckdb_prepare_error(duckdb_prepared_statement prepared_statement) {
|
|
77
77
|
}
|
78
78
|
|
79
79
|
idx_t duckdb_nparams(duckdb_prepared_statement prepared_statement) {
|
80
|
-
auto wrapper =
|
80
|
+
auto wrapper = reinterpret_cast<PreparedStatementWrapper *>(prepared_statement);
|
81
81
|
if (!wrapper || !wrapper->statement || wrapper->statement->HasError()) {
|
82
82
|
return 0;
|
83
83
|
}
|
@@ -85,7 +85,7 @@ idx_t duckdb_nparams(duckdb_prepared_statement prepared_statement) {
|
|
85
85
|
}
|
86
86
|
|
87
87
|
duckdb_type duckdb_param_type(duckdb_prepared_statement prepared_statement, idx_t param_idx) {
|
88
|
-
auto wrapper =
|
88
|
+
auto wrapper = reinterpret_cast<PreparedStatementWrapper *>(prepared_statement);
|
89
89
|
if (!wrapper || !wrapper->statement || wrapper->statement->HasError()) {
|
90
90
|
return DUCKDB_TYPE_INVALID;
|
91
91
|
}
|
@@ -97,7 +97,7 @@ duckdb_type duckdb_param_type(duckdb_prepared_statement prepared_statement, idx_
|
|
97
97
|
}
|
98
98
|
|
99
99
|
duckdb_state duckdb_clear_bindings(duckdb_prepared_statement prepared_statement) {
|
100
|
-
auto wrapper =
|
100
|
+
auto wrapper = reinterpret_cast<PreparedStatementWrapper *>(prepared_statement);
|
101
101
|
if (!wrapper || !wrapper->statement || wrapper->statement->HasError()) {
|
102
102
|
return DuckDBError;
|
103
103
|
}
|
@@ -106,7 +106,7 @@ duckdb_state duckdb_clear_bindings(duckdb_prepared_statement prepared_statement)
|
|
106
106
|
}
|
107
107
|
|
108
108
|
static duckdb_state duckdb_bind_value(duckdb_prepared_statement prepared_statement, idx_t param_idx, Value val) {
|
109
|
-
auto wrapper =
|
109
|
+
auto wrapper = reinterpret_cast<PreparedStatementWrapper *>(prepared_statement);
|
110
110
|
if (!wrapper || !wrapper->statement || wrapper->statement->HasError()) {
|
111
111
|
return DuckDBError;
|
112
112
|
}
|
@@ -220,7 +220,7 @@ duckdb_state duckdb_bind_decimal(duckdb_prepared_statement prepared_statement, i
|
|
220
220
|
|
221
221
|
duckdb_state duckdb_bind_blob(duckdb_prepared_statement prepared_statement, idx_t param_idx, const void *data,
|
222
222
|
idx_t length) {
|
223
|
-
return duckdb_bind_value(prepared_statement, param_idx, Value::BLOB(
|
223
|
+
return duckdb_bind_value(prepared_statement, param_idx, Value::BLOB(duckdb::const_data_ptr_cast(data), length));
|
224
224
|
}
|
225
225
|
|
226
226
|
duckdb_state duckdb_bind_null(duckdb_prepared_statement prepared_statement, idx_t param_idx) {
|
@@ -228,7 +228,7 @@ duckdb_state duckdb_bind_null(duckdb_prepared_statement prepared_statement, idx_
|
|
228
228
|
}
|
229
229
|
|
230
230
|
duckdb_state duckdb_execute_prepared(duckdb_prepared_statement prepared_statement, duckdb_result *out_result) {
|
231
|
-
auto wrapper =
|
231
|
+
auto wrapper = reinterpret_cast<PreparedStatementWrapper *>(prepared_statement);
|
232
232
|
if (!wrapper || !wrapper->statement || wrapper->statement->HasError()) {
|
233
233
|
return DuckDBError;
|
234
234
|
}
|
@@ -30,7 +30,7 @@ struct CAPIReplacementScanInfo {
|
|
30
30
|
|
31
31
|
unique_ptr<TableRef> duckdb_capi_replacement_callback(ClientContext &context, const string &table_name,
|
32
32
|
ReplacementScanData *data) {
|
33
|
-
auto &scan_data =
|
33
|
+
auto &scan_data = reinterpret_cast<CAPIReplacementScanData &>(*data);
|
34
34
|
|
35
35
|
CAPIReplacementScanInfo info(&scan_data);
|
36
36
|
scan_data.callback((duckdb_replacement_scan_info)&info, table_name.c_str(), scan_data.extra_data);
|
@@ -57,7 +57,7 @@ void duckdb_add_replacement_scan(duckdb_database db, duckdb_replacement_callback
|
|
57
57
|
if (!db || !replacement) {
|
58
58
|
return;
|
59
59
|
}
|
60
|
-
auto wrapper =
|
60
|
+
auto wrapper = reinterpret_cast<duckdb::DatabaseData *>(db);
|
61
61
|
auto scan_info = duckdb::make_uniq<duckdb::CAPIReplacementScanData>();
|
62
62
|
scan_info->callback = replacement;
|
63
63
|
scan_info->extra_data = extra_data;
|
@@ -72,7 +72,7 @@ void duckdb_replacement_scan_set_function_name(duckdb_replacement_scan_info info
|
|
72
72
|
if (!info_p || !function_name) {
|
73
73
|
return;
|
74
74
|
}
|
75
|
-
auto info =
|
75
|
+
auto info = reinterpret_cast<duckdb::CAPIReplacementScanInfo *>(info_p);
|
76
76
|
info->function_name = function_name;
|
77
77
|
}
|
78
78
|
|
@@ -80,8 +80,8 @@ void duckdb_replacement_scan_add_parameter(duckdb_replacement_scan_info info_p,
|
|
80
80
|
if (!info_p || !parameter) {
|
81
81
|
return;
|
82
82
|
}
|
83
|
-
auto info =
|
84
|
-
auto val =
|
83
|
+
auto info = reinterpret_cast<duckdb::CAPIReplacementScanInfo *>(info_p);
|
84
|
+
auto val = reinterpret_cast<duckdb::Value *>(parameter);
|
85
85
|
info->parameters.push_back(*val);
|
86
86
|
}
|
87
87
|
|
@@ -89,6 +89,6 @@ void duckdb_replacement_scan_set_error(duckdb_replacement_scan_info info_p, cons
|
|
89
89
|
if (!info_p || !error) {
|
90
90
|
return;
|
91
91
|
}
|
92
|
-
auto info =
|
92
|
+
auto info = reinterpret_cast<duckdb::CAPIReplacementScanInfo *>(info_p);
|
93
93
|
info->error = error;
|
94
94
|
}
|