#ifndef SHIM_RUST_CALLBACKS_HTON_MISC_HPP
#define SHIM_RUST_CALLBACKS_HTON_MISC_HPP
#include <cstddef>
#include <cstdint>
extern "C" {
bool rust__hton__is_dict_readonly();
bool rust__hton__rm_tmp_tables(const void *thd);
void rust__hton__replace_native_transaction_in_thd(const void *thd,
void *new_trx_arg,
void **ptr_trx_arg);
int32_t rust__hton__push_to_engine(const void *thd, const void *query,
const void *join);
bool rust__hton__get_cost_constants(uint32_t storage_category,
double *memory_block_read_cost_out,
double *io_block_read_cost_out);
bool rust__hton__rotate_encryption_master_key();
bool rust__hton__redo_log_set_state(const void *thd, bool enable);
bool rust__hton__get_table_statistics(const uint8_t *db_name, size_t db_name_len,
const uint8_t *table_name,
size_t table_name_len,
uint64_t se_private_id, uint32_t flags,
void *stats);
bool rust__hton__get_index_column_cardinality(
const uint8_t *db_name, size_t db_name_len, const uint8_t *table_name,
size_t table_name_len, const uint8_t *index_name, size_t index_name_len,
uint32_t index_ordinal_position, uint32_t column_ordinal_position,
uint64_t se_private_id, uint64_t *out_cardinality);
bool rust__hton__get_tablespace_statistics(const uint8_t *tablespace_name,
size_t tablespace_name_len,
const uint8_t *file_name,
size_t file_name_len,
void *stats);
void rust__hton__post_ddl(const void *thd);
void rust__hton__post_recover();
}
#endif