simplified statement_reset

This commit is contained in:
2025-12-20 20:05:08 +05:00
parent 58840cecd0
commit 6260264f04
2 changed files with 8 additions and 7 deletions

View File

@@ -49,7 +49,10 @@ typedef struct tsqlite_statement {
/// @return compiled statement
Result(tsqlite_statement*) tsqlite_statement_compile(tsqlite_connection* conn, str sql_code);
void tsqlite_statement_free(tsqlite_statement* st);
void tsqlite_statement_free(NULLABLE(tsqlite_statement*) st);
/// call this after executing a compiled statement to use it again
void tsqlite_statement_reset(NULLABLE(tsqlite_statement*) st);
/// @brief execute statement or move to next result row.
/// Documentation: https://sqlite.org/c3ref/step.html
@@ -66,9 +69,6 @@ void tsqlite_statement_free(tsqlite_statement* st);
/// @return is result row avaliable
Result(bool) tsqlite_statement_step(tsqlite_statement* self);
/// call this after executing a compiled statement to use it again
Result(void) tsqlite_statement_reset(tsqlite_statement* st);
/// Bind value to a placeholder
Result(void) tsqlite_statement_bind_null(tsqlite_statement* self, cstr key);
Result(void) tsqlite_statement_bind_i64(tsqlite_statement* self, cstr key, i64 v);

View File

@@ -27,11 +27,12 @@ void tsqlite_statement_free(tsqlite_statement* self){
free(self);
}
Result(void) tsqlite_statement_reset(tsqlite_statement* self){
try_sqlite3(self->conn, sqlite3_reset(self->st));
void tsqlite_statement_reset(tsqlite_statement* self){
if(!self)
return;
sqlite3_reset(self->st);
self->result_row = -1;
self->result_col = -1;
return RESULT_VOID;
}