DBD-DuckDB
view release on metacpan or search on metacpan
lib/DBD/DuckDB/FFI.pm view on Meta::CPAN
#<<<
my %DUCKDB_FUNCTIONS = (
# Open Connect
duckdb_create_instance_cache => [[] => 'duckdb_instance_cache'],
duckdb_get_or_create_from_cache => [['duckdb_instance_cache', 'string', 'duckdb_database*', 'duckdb_config', 'string*'] => 'duckdb_state'],
duckdb_destroy_instance_cache => [['duckdb_instance_cache*'] => 'void'],
duckdb_open => [['string', 'duckdb_database*'] => 'duckdb_state'],
duckdb_open_ext => [['string', 'duckdb_database*', 'duckdb_config', 'string*'] => 'duckdb_state'],
duckdb_close => [['duckdb_database*'] => 'void'],
duckdb_connect => [['duckdb_database', 'duckdb_connection*'] => 'duckdb_state'],
duckdb_interrupt => [['duckdb_connection'] => 'void'],
duckdb_query_progress => [['duckdb_connection'] => 'duckdb_query_progress_type'],
duckdb_disconnect => [['duckdb_connection*'] => 'void'],
duckdb_connection_get_client_context => [['duckdb_connection', 'duckdb_client_context*'] => 'void'],
duckdb_connection_get_arrow_options => [['duckdb_connection', 'duckdb_arrow_options*'] => 'void'],
duckdb_client_context_get_connection_id => [['duckdb_client_context'] => 'idx_t'],
duckdb_destroy_client_context => [['duckdb_client_context*'] => 'void'],
duckdb_destroy_arrow_options => [['duckdb_arrow_options*'] => 'void'],
duckdb_library_version => [[] => 'string'],
duckdb_get_table_names => [['duckdb_connection', 'string', 'bool'] => 'duckdb_value'],
# Configuration
duckdb_create_config => [['duckdb_config*'] => 'duckdb_state'],
duckdb_config_count => [[] => 'size_t'],
duckdb_get_config_flag => [['size_t', 'string*', 'string*'] => 'duckdb_state'],
duckdb_set_config => [['duckdb_config', 'string', 'string'] => 'duckdb_state'],
duckdb_destroy_config => [['duckdb_config*'] => 'void'],
# Error Data
duckdb_create_error_data => [['duckdb_error_type', 'string'] => 'duckdb_error_data'],
duckdb_destroy_error_data => [['duckdb_error_data*'] => 'void'],
duckdb_error_data_error_type => [['duckdb_error_data'] => 'duckdb_error_type'],
duckdb_error_data_message => [['duckdb_error_data'] => 'string'],
duckdb_error_data_has_error => [['duckdb_error_data'] => 'bool'],
# Query Execution
duckdb_query => [['duckdb_connection', 'string', 'duckdb_result*'] => 'duckdb_state'],
duckdb_destroy_result => [['duckdb_result*'] => 'void'],
duckdb_column_name => [['duckdb_result*', 'idx_t'] => 'string'],
duckdb_column_type => [['duckdb_result*', 'idx_t'] => 'duckdb_type'],
duckdb_result_statement_type => [['duckdb_result'] => 'duckdb_statement_type'],
duckdb_column_logical_type => [['duckdb_result*', 'idx_t'] => 'duckdb_logical_type'],
duckdb_result_get_arrow_options => [['duckdb_result*'] => 'duckdb_arrow_options'],
duckdb_column_count => [['duckdb_result*'] => 'idx_t'],
duckdb_row_count => [['duckdb_result*'] => 'idx_t'],
duckdb_rows_changed => [['duckdb_result*'] => 'idx_t'],
duckdb_column_data => [['duckdb_result*', 'idx_t'] => 'opaque'], # DEPRECATED
duckdb_nullmask_data => [['duckdb_result*', 'idx_t'] => 'opaque'], # DEPRECATED
duckdb_result_error => [['duckdb_result*'] => 'string'],
duckdb_result_error_type => [['duckdb_result*'] => 'duckdb_error_type'],
# Result Functions
duckdb_result_get_chunk => [['duckdb_result', 'idx_t'] => 'duckdb_data_chunk'],
duckdb_result_is_streaming => [['duckdb_result'] => 'bool'],
duckdb_result_chunk_count => [['duckdb_result'] => 'idx_t'],
duckdb_result_return_type => [['duckdb_result'] => 'duckdb_result_type'],
# Safe Fetch Functions
duckdb_value_boolean => [['duckdb_result*', 'idx_t', 'idx_t'] => 'bool'],
duckdb_value_int8 => [['duckdb_result*', 'idx_t', 'idx_t'] => 'int8_t'],
duckdb_value_int16 => [['duckdb_result*', 'idx_t', 'idx_t'] => 'int16_t'],
duckdb_value_int32 => [['duckdb_result*', 'idx_t', 'idx_t'] => 'int32_t'],
duckdb_value_int64 => [['duckdb_result*', 'idx_t', 'idx_t'] => 'int64_t'],
duckdb_value_hugeint => [['duckdb_result*', 'idx_t', 'idx_t'] => 'duckdb_hugeint'],
duckdb_value_uhugeint => [['duckdb_result*', 'idx_t', 'idx_t'] => 'duckdb_uhugeint'],
duckdb_value_decimal => [['duckdb_result*', 'idx_t', 'idx_t'] => 'duckdb_decimal'],
duckdb_value_uint8 => [['duckdb_result*', 'idx_t', 'idx_t'] => 'uint8_t'],
duckdb_value_uint16 => [['duckdb_result*', 'idx_t', 'idx_t'] => 'uint16_t'],
duckdb_value_uint32 => [['duckdb_result*', 'idx_t', 'idx_t'] => 'uint32_t'],
duckdb_value_uint64 => [['duckdb_result*', 'idx_t', 'idx_t'] => 'uint64_t'],
duckdb_value_float => [['duckdb_result*', 'idx_t', 'idx_t'] => 'float'],
duckdb_value_double => [['duckdb_result*', 'idx_t', 'idx_t'] => 'double'],
duckdb_value_date => [['duckdb_result*', 'idx_t', 'idx_t'] => 'duckdb_date'],
duckdb_value_time => [['duckdb_result*', 'idx_t', 'idx_t'] => 'duckdb_time'],
duckdb_value_timestamp => [['duckdb_result*', 'idx_t', 'idx_t'] => 'duckdb_timestamp'],
duckdb_value_interval => [['duckdb_result*', 'idx_t', 'idx_t'] => 'duckdb_interval'],
duckdb_value_varchar => [['duckdb_result*', 'idx_t', 'idx_t'] => 'string'], # DEPRECATED
duckdb_value_string => [['duckdb_result*', 'idx_t', 'idx_t'] => 'duckdb_string'],
duckdb_value_varchar_internal => [['duckdb_result*', 'idx_t', 'idx_t'] => 'string'], # DEPRECATED
duckdb_value_string_internal => [['duckdb_result*', 'idx_t', 'idx_t'] => 'duckdb_string'], # DEPRECATED
duckdb_value_blob => [['duckdb_result*', 'idx_t', 'idx_t'] => 'duckdb_blob'],
duckdb_value_is_null => [['duckdb_result*', 'idx_t', 'idx_t'] => 'bool'],
# Helpers
duckdb_malloc => [['size_t'] => 'opaque'],
duckdb_free => [['opaque'] => 'void'],
duckdb_vector_size => [[] => 'idx_t'],
duckdb_string_is_inlined => [['duckdb_string_t'] => 'bool'],
duckdb_string_t_length => [['duckdb_string_t'] => 'uint32_t'],
duckdb_string_t_data => [['duckdb_string_t*'] => 'string'],
# Date Time Timestamp Helpers
duckdb_from_date => [['duckdb_date'] => 'duckdb_date_struct'],
duckdb_to_date => [['duckdb_date_struct'] => 'duckdb_date'],
duckdb_is_finite_date => [['duckdb_date'] => 'bool'],
duckdb_from_time => [['duckdb_time'] => 'duckdb_time_struct'],
duckdb_create_time_tz => [['int64_t', 'int32_t'] => 'duckdb_time_tz'],
duckdb_from_time_tz => [['duckdb_time_tz'] => 'duckdb_time_tz_struct'],
duckdb_to_time => [['duckdb_time_struct'] => 'duckdb_time'],
duckdb_from_timestamp => [['duckdb_timestamp'] => 'duckdb_timestamp_struct'],
duckdb_to_timestamp => [['duckdb_timestamp_struct'] => 'duckdb_timestamp'],
duckdb_is_finite_timestamp => [['duckdb_timestamp'] => 'bool'],
duckdb_is_finite_timestamp_s => [['duckdb_timestamp_s'] => 'bool'],
duckdb_is_finite_timestamp_ms => [['duckdb_timestamp_ms'] => 'bool'],
duckdb_is_finite_timestamp_ns => [['duckdb_timestamp_ns'] => 'bool'],
# Hugeint Helpers
duckdb_hugeint_to_double => [['duckdb_hugeint'] => 'double'],
duckdb_double_to_hugeint => [['double'] => 'duckdb_hugeint'],
# Unsigned Hugeint Helpers
duckdb_uhugeint_to_double => [['duckdb_uhugeint'] => 'double'],
duckdb_double_to_uhugeint => [['double'] => 'duckdb_uhugeint'],
# Decimal Helpers
duckdb_double_to_decimal => [['double', 'uint8_t', 'uint8_t'] => 'duckdb_decimal'],
duckdb_decimal_to_double => [['duckdb_decimal'] => 'double'],
# Prepared Statements
duckdb_prepare => [['duckdb_connection', 'string', 'duckdb_prepared_statement*'] => 'duckdb_state'],
duckdb_destroy_prepare => [['duckdb_prepared_statement*'] => 'void'],
duckdb_prepare_error => [['duckdb_prepared_statement'] => 'string'],
duckdb_nparams => [['duckdb_prepared_statement'] => 'idx_t'],
duckdb_parameter_name => [['duckdb_prepared_statement', 'idx_t'] => 'string'],
duckdb_param_type => [['duckdb_prepared_statement', 'idx_t'] => 'duckdb_type'],
duckdb_param_logical_type => [['duckdb_prepared_statement', 'idx_t'] => 'duckdb_logical_type'],
duckdb_clear_bindings => [['duckdb_prepared_statement'] => 'duckdb_state'],
duckdb_prepared_statement_type => [['duckdb_prepared_statement'] => 'duckdb_statement_type'],
duckdb_prepared_statement_column_count => [['duckdb_prepared_statement'] => 'idx_t'],
duckdb_prepared_statement_column_name => [['duckdb_prepared_statement', 'idx_t'] => 'string'],
duckdb_prepared_statement_column_logical_type => [['duckdb_prepared_statement', 'idx_t'] => 'duckdb_logical_type'],
duckdb_prepared_statement_column_type => [['duckdb_prepared_statement', 'idx_t'] => 'duckdb_type'],
# Bind Values to Prepared Statements
duckdb_bind_value => [['duckdb_prepared_statement', 'idx_t', 'duckdb_value'] => 'duckdb_state'],
duckdb_bind_parameter_index => [['duckdb_prepared_statement', 'opaque', 'string'] => 'duckdb_state'],
duckdb_bind_boolean => [['duckdb_prepared_statement', 'idx_t', 'bool'] => 'duckdb_state'],
duckdb_bind_int8 => [['duckdb_prepared_statement', 'idx_t', 'int8_t'] => 'duckdb_state'],
duckdb_bind_int16 => [['duckdb_prepared_statement', 'idx_t', 'int16_t'] => 'duckdb_state'],
duckdb_bind_int32 => [['duckdb_prepared_statement', 'idx_t', 'int32_t'] => 'duckdb_state'],
duckdb_bind_int64 => [['duckdb_prepared_statement', 'idx_t', 'int64_t'] => 'duckdb_state'],
duckdb_bind_hugeint => [['duckdb_prepared_statement', 'idx_t', 'duckdb_hugeint'] => 'duckdb_state'],
duckdb_bind_uhugeint => [['duckdb_prepared_statement', 'idx_t', 'duckdb_uhugeint'] => 'duckdb_state'],
duckdb_bind_decimal => [['duckdb_prepared_statement', 'idx_t', 'duckdb_decimal'] => 'duckdb_state'],
duckdb_bind_uint8 => [['duckdb_prepared_statement', 'idx_t', 'uint8_t'] => 'duckdb_state'],
duckdb_bind_uint16 => [['duckdb_prepared_statement', 'idx_t', 'uint16_t'] => 'duckdb_state'],
duckdb_bind_uint32 => [['duckdb_prepared_statement', 'idx_t', 'uint32_t'] => 'duckdb_state'],
duckdb_bind_uint64 => [['duckdb_prepared_statement', 'idx_t', 'uint64_t'] => 'duckdb_state'],
duckdb_bind_float => [['duckdb_prepared_statement', 'idx_t', 'float'] => 'duckdb_state'],
duckdb_bind_double => [['duckdb_prepared_statement', 'idx_t', 'double'] => 'duckdb_state'],
duckdb_bind_date => [['duckdb_prepared_statement', 'idx_t', 'duckdb_date'] => 'duckdb_state'],
duckdb_bind_time => [['duckdb_prepared_statement', 'idx_t', 'duckdb_time'] => 'duckdb_state'],
duckdb_bind_timestamp => [['duckdb_prepared_statement', 'idx_t', 'duckdb_timestamp'] => 'duckdb_state'],
duckdb_bind_timestamp_tz => [['duckdb_prepared_statement', 'idx_t', 'duckdb_timestamp'] => 'duckdb_state'],
duckdb_bind_interval => [['duckdb_prepared_statement', 'idx_t', 'duckdb_interval'] => 'duckdb_state'],
duckdb_bind_varchar => [['duckdb_prepared_statement', 'idx_t', 'string'] => 'duckdb_state'],
duckdb_bind_varchar_length => [['duckdb_prepared_statement', 'idx_t', 'string', 'idx_t'] => 'duckdb_state'],
duckdb_bind_blob => [['duckdb_prepared_statement', 'idx_t', 'opaque', 'idx_t'] => 'duckdb_state'],
duckdb_bind_null => [['duckdb_prepared_statement', 'idx_t'] => 'duckdb_state'],
# Execute Prepared Statements
duckdb_execute_prepared => [['duckdb_prepared_statement', 'duckdb_result*'] => 'duckdb_state'],
duckdb_execute_prepared_streaming => [['duckdb_prepared_statement', 'duckdb_result*'] => 'duckdb_state'],
# Extract Statements
duckdb_extract_statements => [['duckdb_connection', 'string', 'duckdb_extracted_statements*'] => 'idx_t'],
duckdb_prepare_extracted_statement => [['duckdb_connection', 'duckdb_extracted_statements', 'idx_t', 'duckdb_prepared_statement*'] => 'duckdb_state'],
duckdb_extract_statements_error => [['duckdb_extracted_statements'] => 'string'],
duckdb_destroy_extracted => [['duckdb_extracted_statements*'] => 'void'],
# Pending Result Interface
duckdb_pending_prepared => [['duckdb_prepared_statement', 'duckdb_pending_result*'] => 'duckdb_state'],
duckdb_pending_prepared_streaming => [['duckdb_prepared_statement', 'duckdb_pending_result*'] => 'duckdb_state'],
duckdb_destroy_pending => [['duckdb_pending_result*'] => 'void'],
duckdb_pending_error => [['duckdb_pending_result'] => 'string'],
duckdb_pending_execute_task => [['duckdb_pending_result'] => 'duckdb_pending_state'],
duckdb_pending_execute_check_state => [['duckdb_pending_result'] => 'duckdb_pending_state'],
duckdb_execute_pending => [['duckdb_pending_result', 'duckdb_result*'] => 'duckdb_state'],
duckdb_pending_execution_is_finished => [['duckdb_pending_state'] => 'bool'],
# Value Interface
duckdb_destroy_value => [['duckdb_value*'] => 'void'],
duckdb_create_varchar => [['string'] => 'duckdb_value'],
duckdb_create_varchar_length => [['string', 'idx_t'] => 'duckdb_value'],
duckdb_create_bool => [['bool'] => 'duckdb_value'],
duckdb_create_int8 => [['int8_t'] => 'duckdb_value'],
duckdb_create_uint8 => [['uint8_t'] => 'duckdb_value'],
duckdb_create_int16 => [['int16_t'] => 'duckdb_value'],
duckdb_create_uint16 => [['uint16_t'] => 'duckdb_value'],
duckdb_create_int32 => [['int32_t'] => 'duckdb_value'],
duckdb_create_uint32 => [['uint32_t'] => 'duckdb_value'],
duckdb_create_uint64 => [['uint64_t'] => 'duckdb_value'],
duckdb_create_int64 => [['int64_t'] => 'duckdb_value'],
duckdb_create_hugeint => [['duckdb_hugeint'] => 'duckdb_value'],
duckdb_create_uhugeint => [['duckdb_uhugeint'] => 'duckdb_value'],
duckdb_create_bignum => [['duckdb_bignum'] => 'duckdb_value'],
duckdb_create_decimal => [['duckdb_decimal'] => 'duckdb_value'],
duckdb_create_float => [['float'] => 'duckdb_value'],
duckdb_create_double => [['double'] => 'duckdb_value'],
duckdb_create_date => [['duckdb_date'] => 'duckdb_value'],
duckdb_create_time => [['duckdb_time'] => 'duckdb_value'],
duckdb_create_time_ns => [['duckdb_time_ns'] => 'duckdb_value'],
duckdb_create_time_tz_value => [['duckdb_time_tz'] => 'duckdb_value'],
duckdb_create_timestamp => [['duckdb_timestamp'] => 'duckdb_value'],
duckdb_create_timestamp_tz => [['duckdb_timestamp'] => 'duckdb_value'],
duckdb_create_timestamp_s => [['duckdb_timestamp_s'] => 'duckdb_value'],
duckdb_create_timestamp_ms => [['duckdb_timestamp_ms'] => 'duckdb_value'],
duckdb_create_timestamp_ns => [['duckdb_timestamp_ns'] => 'duckdb_value'],
duckdb_create_interval => [['duckdb_interval'] => 'duckdb_value'],
duckdb_create_blob => [['opaque', 'idx_t'] => 'duckdb_value'],
duckdb_create_bit => [['duckdb_bit'] => 'duckdb_value'],
duckdb_create_uuid => [['duckdb_uhugeint'] => 'duckdb_value'],
duckdb_get_bool => [['duckdb_value'] => 'bool'],
duckdb_get_int8 => [['duckdb_value'] => 'int8_t'],
duckdb_get_uint8 => [['duckdb_value'] => 'uint8_t'],
duckdb_get_int16 => [['duckdb_value'] => 'int16_t'],
duckdb_get_uint16 => [['duckdb_value'] => 'uint16_t'],
duckdb_get_int32 => [['duckdb_value'] => 'int32_t'],
duckdb_get_uint32 => [['duckdb_value'] => 'uint32_t'],
duckdb_get_int64 => [['duckdb_value'] => 'int64_t'],
duckdb_get_uint64 => [['duckdb_value'] => 'uint64_t'],
duckdb_get_hugeint => [['duckdb_value'] => 'duckdb_hugeint'],
duckdb_get_uhugeint => [['duckdb_value'] => 'duckdb_uhugeint'],
duckdb_get_bignum => [['duckdb_value'] => 'duckdb_bignum'],
duckdb_get_decimal => [['duckdb_value'] => 'duckdb_decimal'],
duckdb_get_float => [['duckdb_value'] => 'float'],
duckdb_get_double => [['duckdb_value'] => 'double'],
duckdb_get_date => [['duckdb_value'] => 'duckdb_date'],
duckdb_get_time => [['duckdb_value'] => 'duckdb_time'],
duckdb_get_time_ns => [['duckdb_value'] => 'duckdb_time_ns'],
duckdb_get_time_tz => [['duckdb_value'] => 'duckdb_time_tz'],
duckdb_get_timestamp => [['duckdb_value'] => 'duckdb_timestamp'],
lib/DBD/DuckDB/FFI.pm view on Meta::CPAN
=item * duckdb_destroy_config
=back
=head2 Error Data
=over
=item * duckdb_create_error_data
=item * duckdb_destroy_error_data
=item * duckdb_error_data_error_type
=item * duckdb_error_data_message
=item * duckdb_error_data_has_error
=back
=head2 Query Execution
=over
=item * duckdb_query
=item * duckdb_destroy_result
=item * duckdb_column_name
=item * duckdb_column_type
=item * duckdb_result_statement_type
=item * duckdb_column_logical_type
=item * duckdb_result_get_arrow_options
=item * duckdb_column_count
=item * duckdb_row_count
=item * duckdb_rows_changed
=item * duckdb_column_data
=item * duckdb_nullmask_data
=item * duckdb_result_error
=item * duckdb_result_error_type
=back
=head2 Result Functions
=over
=item * duckdb_result_get_chunk
=item * duckdb_result_is_streaming
=item * duckdb_result_chunk_count
=item * duckdb_result_return_type
=back
=head2 Safe Fetch Functions
=over
=item * duckdb_value_boolean
=item * duckdb_value_int8
=item * duckdb_value_int16
=item * duckdb_value_int32
=item * duckdb_value_int64
=item * duckdb_value_hugeint
=item * duckdb_value_uhugeint
=item * duckdb_value_decimal
=item * duckdb_value_uint8
=item * duckdb_value_uint16
=item * duckdb_value_uint32
=item * duckdb_value_uint64
=item * duckdb_value_float
=item * duckdb_value_double
=item * duckdb_value_date
=item * duckdb_value_time
=item * duckdb_value_timestamp
=item * duckdb_value_interval
=item * duckdb_value_varchar
=item * duckdb_value_string
=item * duckdb_value_varchar_internal
=item * duckdb_value_string_internal
=item * duckdb_value_blob
=item * duckdb_value_is_null
=back
lib/DBD/DuckDB/FFI.pm view on Meta::CPAN
=over
=item * duckdb_bind_value
=item * duckdb_bind_parameter_index
=item * duckdb_bind_boolean
=item * duckdb_bind_int8
=item * duckdb_bind_int16
=item * duckdb_bind_int32
=item * duckdb_bind_int64
=item * duckdb_bind_hugeint
=item * duckdb_bind_uhugeint
=item * duckdb_bind_decimal
=item * duckdb_bind_uint8
=item * duckdb_bind_uint16
=item * duckdb_bind_uint32
=item * duckdb_bind_uint64
=item * duckdb_bind_float
=item * duckdb_bind_double
=item * duckdb_bind_date
=item * duckdb_bind_time
=item * duckdb_bind_timestamp
=item * duckdb_bind_timestamp_tz
=item * duckdb_bind_interval
=item * duckdb_bind_varchar
=item * duckdb_bind_varchar_length
=item * duckdb_bind_blob
=item * duckdb_bind_null
=back
=head2 Execute Prepared Statements
=over
=item * duckdb_execute_prepared
=item * duckdb_execute_prepared_streaming
=back
=head2 Extract Statements
=over
=item * duckdb_extract_statements
=item * duckdb_prepare_extracted_statement
=item * duckdb_extract_statements_error
=item * duckdb_destroy_extracted
=back
=head2 Pending Result Interface
=over
=item * duckdb_pending_prepared
=item * duckdb_pending_prepared_streaming
=item * duckdb_destroy_pending
=item * duckdb_pending_error
=item * duckdb_pending_execute_task
=item * duckdb_pending_execute_check_state
=item * duckdb_execute_pending
=item * duckdb_pending_execution_is_finished
=back
=head2 Value Interface
=over
=item * duckdb_destroy_value
=item * duckdb_create_varchar
=item * duckdb_create_varchar_length
=item * duckdb_create_bool
=item * duckdb_create_int8
=item * duckdb_create_uint8
=item * duckdb_create_int16
=item * duckdb_create_uint16
=item * duckdb_create_int32
=item * duckdb_create_uint32
=item * duckdb_create_uint64
=item * duckdb_create_int64
=item * duckdb_create_hugeint
=item * duckdb_create_uhugeint
=item * duckdb_create_bignum
=item * duckdb_create_decimal
=item * duckdb_create_float
=item * duckdb_create_double
=item * duckdb_create_date
=item * duckdb_create_time
=item * duckdb_create_time_ns
( run in 0.862 second using v1.01-cache-2.11-cpan-140bd7fdf52 )