Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add const keyword to C API params #1661

Merged
merged 1 commit into from
Jun 12, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions src/c_api/prepared_statement.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ using namespace kuzu::common;
using namespace kuzu::main;

void kuzu_prepared_statement_bind_cpp_value(kuzu_prepared_statement* prepared_statement,
char* param_name, const std::shared_ptr<Value>& value) {
const char* param_name, const std::shared_ptr<Value>& value) {
auto* bound_values = static_cast<std::unordered_map<std::string, std::shared_ptr<Value>>*>(
prepared_statement->_bound_values);
bound_values->insert({param_name, value});
Expand Down Expand Up @@ -49,68 +49,68 @@ char* kuzu_prepared_statement_get_error_message(kuzu_prepared_statement* prepare
}

void kuzu_prepared_statement_bind_bool(
kuzu_prepared_statement* prepared_statement, char* param_name, bool value) {
kuzu_prepared_statement* prepared_statement, const char* param_name, bool value) {
auto value_ptr = std::make_shared<Value>(value);
kuzu_prepared_statement_bind_cpp_value(prepared_statement, param_name, value_ptr);
}

void kuzu_prepared_statement_bind_int64(
kuzu_prepared_statement* prepared_statement, char* param_name, int64_t value) {
kuzu_prepared_statement* prepared_statement, const char* param_name, int64_t value) {
auto value_ptr = std::make_shared<Value>(value);
kuzu_prepared_statement_bind_cpp_value(prepared_statement, param_name, value_ptr);
}

void kuzu_prepared_statement_bind_int32(
kuzu_prepared_statement* prepared_statement, char* param_name, int32_t value) {
kuzu_prepared_statement* prepared_statement, const char* param_name, int32_t value) {
auto value_ptr = std::make_shared<Value>(value);
kuzu_prepared_statement_bind_cpp_value(prepared_statement, param_name, value_ptr);
}

void kuzu_prepared_statement_bind_int16(
kuzu_prepared_statement* prepared_statement, char* param_name, int16_t value) {
kuzu_prepared_statement* prepared_statement, const char* param_name, int16_t value) {
auto value_ptr = std::make_shared<Value>(value);
kuzu_prepared_statement_bind_cpp_value(prepared_statement, param_name, value_ptr);
}

void kuzu_prepared_statement_bind_double(
kuzu_prepared_statement* prepared_statement, char* param_name, double value) {
kuzu_prepared_statement* prepared_statement, const char* param_name, double value) {
auto value_ptr = std::make_shared<Value>(value);
kuzu_prepared_statement_bind_cpp_value(prepared_statement, param_name, value_ptr);
}

void kuzu_prepared_statement_bind_float(
kuzu_prepared_statement* prepared_statement, char* param_name, float value) {
kuzu_prepared_statement* prepared_statement, const char* param_name, float value) {
auto value_ptr = std::make_shared<Value>(value);
kuzu_prepared_statement_bind_cpp_value(prepared_statement, param_name, value_ptr);
}

void kuzu_prepared_statement_bind_date(
kuzu_prepared_statement* prepared_statement, char* param_name, kuzu_date_t value) {
kuzu_prepared_statement* prepared_statement, const char* param_name, kuzu_date_t value) {
auto value_ptr = std::make_shared<Value>(date_t(value.days));
kuzu_prepared_statement_bind_cpp_value(prepared_statement, param_name, value_ptr);
}

void kuzu_prepared_statement_bind_timestamp(
kuzu_prepared_statement* prepared_statement, char* param_name, kuzu_timestamp_t value) {
kuzu_prepared_statement* prepared_statement, const char* param_name, kuzu_timestamp_t value) {
auto value_ptr = std::make_shared<Value>(timestamp_t(value.value));
kuzu_prepared_statement_bind_cpp_value(prepared_statement, param_name, value_ptr);
}

void kuzu_prepared_statement_bind_interval(
kuzu_prepared_statement* prepared_statement, char* param_name, kuzu_interval_t value) {
kuzu_prepared_statement* prepared_statement, const char* param_name, kuzu_interval_t value) {
auto value_ptr = std::make_shared<Value>(interval_t(value.months, value.days, value.micros));
kuzu_prepared_statement_bind_cpp_value(prepared_statement, param_name, value_ptr);
}

void kuzu_prepared_statement_bind_string(
kuzu_prepared_statement* prepared_statement, char* param_name, char* value) {
kuzu_prepared_statement* prepared_statement, const char* param_name, const char* value) {
auto string_value = std::string(value);
auto value_ptr = std::make_shared<Value>(string_value);
kuzu_prepared_statement_bind_cpp_value(prepared_statement, param_name, value_ptr);
}

void kuzu_prepared_statement_bind_value(
kuzu_prepared_statement* prepared_statement, char* param_name, kuzu_value* value) {
kuzu_prepared_statement* prepared_statement, const char* param_name, kuzu_value* value) {
auto value_ptr = std::make_shared<Value>(*static_cast<Value*>(value->_value));
kuzu_prepared_statement_bind_cpp_value(prepared_statement, param_name, value_ptr);
}
8 changes: 4 additions & 4 deletions src/c_api/value.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ kuzu_value* kuzu_value_create_interval(kuzu_interval_t val_) {
return c_value;
}

kuzu_value* kuzu_value_create_string(char* val_) {
kuzu_value* kuzu_value_create_string(const char* val_) {
auto* c_value = (kuzu_value*)calloc(1, sizeof(kuzu_value));
c_value->_value = new Value(val_);
return c_value;
Expand Down Expand Up @@ -266,7 +266,7 @@ char* kuzu_value_to_string(kuzu_value* value) {
return c_string;
}

kuzu_node_val* kuzu_node_val_create(kuzu_internal_id_t id, char* label) {
kuzu_node_val* kuzu_node_val_create(kuzu_internal_id_t id, const char* label) {
auto id_val = std::make_unique<Value>(internalID_t(id.offset, id.table_id));
auto label_val = std::make_unique<Value>(label);
auto* node_val = new NodeVal(std::move(id_val), std::move(label_val));
Expand Down Expand Up @@ -354,7 +354,7 @@ char* kuzu_node_val_to_string(kuzu_node_val* node_val) {
}

kuzu_rel_val* kuzu_rel_val_create(
kuzu_internal_id_t src_id, kuzu_internal_id_t dst_id, char* label) {
kuzu_internal_id_t src_id, kuzu_internal_id_t dst_id, const char* label) {
auto src_id_val = std::make_unique<Value>(internalID_t(src_id.offset, src_id.table_id));
auto dst_id_val = std::make_unique<Value>(internalID_t(dst_id.offset, dst_id.table_id));
auto label_val = std::make_unique<Value>(std::string(label));
Expand Down Expand Up @@ -437,7 +437,7 @@ kuzu_value* kuzu_rel_val_get_property_value_at(kuzu_rel_val* rel_val, uint64_t i
return c_value;
}

void kuzu_rel_val_add_property(kuzu_rel_val* rel_val, char* name, kuzu_value* property) {
void kuzu_rel_val_add_property(kuzu_rel_val* rel_val, const char* name, kuzu_value* property) {
auto value_ = std::make_unique<Value>(*static_cast<Value*>(property->_value));
static_cast<RelVal*>(rel_val->_rel_val)->addProperty(std::string(name), std::move(value_));
}
Expand Down
31 changes: 16 additions & 15 deletions src/include/c_api/kuzu.h
Original file line number Diff line number Diff line change
Expand Up @@ -289,87 +289,87 @@ KUZU_C_API char* kuzu_prepared_statement_get_error_message(
* @param value The boolean value to bind.
*/
KUZU_C_API void kuzu_prepared_statement_bind_bool(
kuzu_prepared_statement* prepared_statement, char* param_name, bool value);
kuzu_prepared_statement* prepared_statement, const char* param_name, bool value);
/**
* @brief Binds the given int64_t value to the given parameter name in the prepared statement.
* @param prepared_statement The prepared statement instance to bind the value.
* @param param_name The parameter name to bind the value.
* @param value The int64_t value to bind.
*/
KUZU_C_API void kuzu_prepared_statement_bind_int64(
kuzu_prepared_statement* prepared_statement, char* param_name, int64_t value);
kuzu_prepared_statement* prepared_statement, const char* param_name, int64_t value);
/**
* @brief Binds the given int32_t value to the given parameter name in the prepared statement.
* @param prepared_statement The prepared statement instance to bind the value.
* @param param_name The parameter name to bind the value.
* @param value The int32_t value to bind.
*/
KUZU_C_API void kuzu_prepared_statement_bind_int32(
kuzu_prepared_statement* prepared_statement, char* param_name, int32_t value);
kuzu_prepared_statement* prepared_statement, const char* param_name, int32_t value);
/**
* @brief Binds the given int16_t value to the given parameter name in the prepared statement.
* @param prepared_statement The prepared statement instance to bind the value.
* @param param_name The parameter name to bind the value.
* @param value The int16_t value to bind.
*/
KUZU_C_API void kuzu_prepared_statement_bind_int16(
kuzu_prepared_statement* prepared_statement, char* param_name, int16_t value);
kuzu_prepared_statement* prepared_statement, const char* param_name, int16_t value);
/**
* @brief Binds the given double value to the given parameter name in the prepared statement.
* @param prepared_statement The prepared statement instance to bind the value.
* @param param_name The parameter name to bind the value.
* @param value The double value to bind.
*/
KUZU_C_API void kuzu_prepared_statement_bind_double(
kuzu_prepared_statement* prepared_statement, char* param_name, double value);
kuzu_prepared_statement* prepared_statement, const char* param_name, double value);
/**
* @brief Binds the given float value to the given parameter name in the prepared statement.
* @param prepared_statement The prepared statement instance to bind the value.
* @param param_name The parameter name to bind the value.
* @param value The float value to bind.
*/
KUZU_C_API void kuzu_prepared_statement_bind_float(
kuzu_prepared_statement* prepared_statement, char* param_name, float value);
kuzu_prepared_statement* prepared_statement, const char* param_name, float value);
/**
* @brief Binds the given date value to the given parameter name in the prepared statement.
* @param prepared_statement The prepared statement instance to bind the value.
* @param param_name The parameter name to bind the value.
* @param value The date value to bind.
*/
KUZU_C_API void kuzu_prepared_statement_bind_date(
kuzu_prepared_statement* prepared_statement, char* param_name, kuzu_date_t value);
kuzu_prepared_statement* prepared_statement, const char* param_name, kuzu_date_t value);
/**
* @brief Binds the given timestamp value to the given parameter name in the prepared statement.
* @param prepared_statement The prepared statement instance to bind the value.
* @param param_name The parameter name to bind the value.
* @param value The timestamp value to bind.
*/
KUZU_C_API void kuzu_prepared_statement_bind_timestamp(
kuzu_prepared_statement* prepared_statement, char* param_name, kuzu_timestamp_t value);
kuzu_prepared_statement* prepared_statement, const char* param_name, kuzu_timestamp_t value);
/**
* @brief Binds the given interval value to the given parameter name in the prepared statement.
* @param prepared_statement The prepared statement instance to bind the value.
* @param param_name The parameter name to bind the value.
* @param value The interval value to bind.
*/
KUZU_C_API void kuzu_prepared_statement_bind_interval(
kuzu_prepared_statement* prepared_statement, char* param_name, kuzu_interval_t value);
kuzu_prepared_statement* prepared_statement, const char* param_name, kuzu_interval_t value);
/**
* @brief Binds the given string value to the given parameter name in the prepared statement.
* @param prepared_statement The prepared statement instance to bind the value.
* @param param_name The parameter name to bind the value.
* @param value The string value to bind.
*/
KUZU_C_API void kuzu_prepared_statement_bind_string(
kuzu_prepared_statement* prepared_statement, char* param_name, char* value);
kuzu_prepared_statement* prepared_statement, const char* param_name, const char* value);
/**
* @brief Binds the given kuzu value to the given parameter name in the prepared statement.
* @param prepared_statement The prepared statement instance to bind the value.
* @param param_name The parameter name to bind the value.
* @param value The kuzu value to bind.
*/
KUZU_C_API void kuzu_prepared_statement_bind_value(
kuzu_prepared_statement* prepared_statement, char* param_name, kuzu_value* value);
kuzu_prepared_statement* prepared_statement, const char* param_name, kuzu_value* value);

// QueryResult
/**
Expand Down Expand Up @@ -608,7 +608,7 @@ KUZU_C_API kuzu_value* kuzu_value_create_interval(kuzu_interval_t val_);
* destroying the returned value.
* @param val_ The string value of the value to create.
*/
KUZU_C_API kuzu_value* kuzu_value_create_string(char* val_);
KUZU_C_API kuzu_value* kuzu_value_create_string(const char* val_);
/**
* @brief Creates a new value based on the given value. Caller is responsible for destroying the
* returned value.
Expand Down Expand Up @@ -738,7 +738,7 @@ KUZU_C_API char* kuzu_value_to_string(kuzu_value* value);
* @param id The internal id of the node.
* @param label The label of the node.
*/
KUZU_C_API kuzu_node_val* kuzu_node_val_create(kuzu_internal_id_t id, char* label);
KUZU_C_API kuzu_node_val* kuzu_node_val_create(kuzu_internal_id_t id, const char* label);
/**
* @brief Creates a new node value from the given node value.
* @param node_val The node value to clone.
Expand Down Expand Up @@ -807,7 +807,7 @@ KUZU_C_API char* kuzu_node_val_to_string(kuzu_node_val* node_val);
* @param label The label of the rel.
*/
KUZU_C_API kuzu_rel_val* kuzu_rel_val_create(
kuzu_internal_id_t src_id, kuzu_internal_id_t dst_id, char* label);
kuzu_internal_id_t src_id, kuzu_internal_id_t dst_id, const char* label);
/**
* @brief Creates a new rel value from the given rel value.
* @param rel_val The rel value to clone.
Expand Down Expand Up @@ -867,7 +867,8 @@ KUZU_C_API kuzu_value* kuzu_rel_val_get_property_value_at(kuzu_rel_val* rel_val,
* @param name The name of the property.
* @param property The property(in value format) to add.
*/
KUZU_C_API void kuzu_rel_val_add_property(kuzu_rel_val* rel_val, char* name, kuzu_value* property);
KUZU_C_API void kuzu_rel_val_add_property(
kuzu_rel_val* rel_val, const char* name, kuzu_value* property);
/**
* @brief Converts the given rel value to string.
* @param rel_val The rel value to convert.
Expand Down
Loading