#include <sqlite3.h>
Go to the source code of this file.
Data Structures | |
struct | memory_sqlite3_stmt |
Defines | |
#define | _GNU_SOURCE |
#define | ABORT(format, args...) ({ ALP_TMTL(format, args); ALP_FAIL_FATAL_IF(1, format "\n", args); }) |
#define | S_DB db |
#define | S_STMT sqlite3_stmt * |
#define | S_EXEC(cmd) |
#define | S_EXEC_W(cmd) |
#define | S_PREPARE(stmt, cmd) |
#define | S_PREPARE_P(stmt, cmd) |
#define | S_RESET(stmt) ({ sqlite3_reset((stmt)); }) |
#define | S_STEP_ROW(stmt) |
#define | S_FINALIZE(stmt) sqlite3_finalize((stmt)); |
#define | S_BEGIN_SELECT(stmt) |
#define | S_BREAK_SELECT(stmt) ({ _result = SQLITE_DONE; break; }) |
#define | S_END_SELECT(stmt) |
#define | S_DO(stmt) |
#define | S_DO_OR_ABORT(stmt) |
#define | S_DO_W(stmt) |
#define | S_BIND_INT(stmt, param, value) sqlite3_bind_int((stmt), (param), (value)) |
#define | S_BIND_INT64(stmt, param, value) sqlite3_bind_int64((stmt), (param), (value)) |
#define | S_BIND_UINT(stmt, param, value) sqlite3_bind_int64((stmt), (param), (long long)((unsigned int)(value))) |
#define | S_BIND_TEXT(stmt, param, value) sqlite3_bind_text((stmt), (param), (value), -1, SQLITE_TRANSIENT) |
#define | S_BIND_TEXTLEN(stmt, param, value, len) sqlite3_bind_text((stmt), (param), (value), (len), SQLITE_TRANSIENT) |
#define | S_BIND_BLOBLEN(stmt, param, value, len) sqlite3_bind_blob(stmt, param, value, len, SQLITE_TRANSIENT) |
#define | S_BIND_NULL(stmt, param) sqlite3_bind_null(stmt, param) |
#define | S_BIND_GSTRING(stmt, param, value) sqlite3_bind_text((stmt), (param), (value)->str, (value)->len, SQLITE_TRANSIENT) |
#define | S_COL_INT(stmt, param) sqlite3_column_int((stmt),(param)) |
#define | S_COL_INT64(stmt, param) sqlite3_column_int64((stmt),(param)) |
#define | S_COL_TEXT(stmt, param) sqlite3_column_text((stmt),(param)) |
#define | S_COL_BLOB(stmt, param) sqlite3_column_blob((stmt),(param)) |
#define | S_COL_BYTES(stmt, param) sqlite3_column_bytes((stmt),(param)) |
#define | S_COL_ISNULL(stmt, param) (sqlite3_column_type((stmt),(param)) == SQLITE_NULL) |
#define | SK_STMT struct sqlite3_stmt * |
#define | SK_PREPARE(stmt, cmd) |
#define | SK_RESET(stmt) ({ sqlite3_reset((stmt)); }) |
#define | SK_STEP_ROW(stmt) |
#define | SK_FINALIZE(stmt) |
#define | SK_BEGIN_SELECT(stmt) |
#define | SK_BREAK_SELECT(stmt) ({ _result = SQLITE_DONE; break; }) |
#define | SK_END_SELECT(stmt) |
#define | SK_DO(stmt) |
#define | SK_DO_OR_ABORT(stmt) |
#define | SK_DO_W(stmt) |
#define | SK_BEGIN() S_EXEC("BEGIN") |
#define | SK_COMMIT() S_EXEC("COMMIT") |
#define | SK_BIND_INT(stmt, param, value) sqlite3_bind_int((stmt), (param), (value)) |
#define | SK_BIND_TEXT(stmt, param, value) sqlite3_bind_text((stmt), (param), (value), -1, SQLITE_TRANSIENT) |
#define | SK_BIND_TEXTLEN(stmt, param, value, len) sqlite3_bind_text((stmt), (param), (value), (len), SQLITE_TRANSIENT) |
#define | SK_BIND_BLOBLEN(stmt, param, value, len) sqlite3_bind_blob(stmt, param, value, len, SQLITE_TRANSIENT) |
#define | SK_BIND_NULL(stmt, param) sqlite3_bind_null(stmt, param) |
#define | SK_BIND_GSTRING(stmt, param, value) sqlite3_bind_text((stmt), (param), (value)->str, (value)->len, SQLITE_TRANSIENT) |
#define | SK_COL_INT(stmt, param) sqlite3_column_int((stmt),(param)) |
#define | SK_COL_TEXT(stmt, param) sqlite3_column_text((stmt),(param)) |
#define | SK_COL_BLOB(stmt, param) sqlite3_column_blob((stmt),(param)) |
#define | SK_COL_BYTES(stmt, param) sqlite3_column_bytes((stmt),(param)) |
#define | SK_COL_ISNULL(stmt, param) (sqlite3_column_type((stmt),(param)) == SQLITE_NULL) |
Variables | |
memory_sqlite3_stmt * | gmemory_sqlite3_stmt |
memory_sqlite3_stmt | gmemoize_sqlite3_begin |
memory_sqlite3_stmt | gmemoize_sqlite3_commit |
|
|
|
|
|
Value: { int _result; \ while ((_result = sqlite3_step((stmt))) == SQLITE_ROW) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Value: |
|
Value: |
|
Value: |
|
Value: |
|
Value: ({ ALP_FAIL_FATAL_IF(!S_DB, "Error: bundle manager not initialized\n"); \ int _result = sqlite3_exec(S_DB, (cmd), NULL, NULL, NULL); \ if (_result != SQLITE_OK) { \ ABORT("Error executing command %s: %s\n", (cmd), sqlite3_errmsg(S_DB)); \ } \ }) |
|
Value: ({ ALP_FAIL_FATAL_IF(!S_DB, "Error: bundle manager not initialized\n"); \ int _result = sqlite3_exec(S_DB, (cmd), NULL, NULL, NULL); \ if (_result != SQLITE_OK) { \ ALP_TMTL("Warning executing command %s: %s\n", (cmd), sqlite3_errmsg(S_DB)); \ } \ }) |
|
|
|
Value: ({ ALP_FAIL_FATAL_IF(!S_DB, "Error: bundle manager not initialized\n"); \ int _result = sqlite3_prepare(S_DB, (cmd), -1, &(stmt), NULL); \ if (_result != SQLITE_OK) { \ ABORT("Error preparing command: %s\n", sqlite3_errmsg(S_DB)); \ } \ }) |
|
Value: ({ ALP_FAIL_FATAL_IF(!S_DB, "Error: bundle manager not initialized\n"); \ int _result = sqlite3_prepare(S_DB, (cmd), -1, &(stmt), NULL); \ _result == SQLITE_OK; \ }) |
|
|
|
Value: |
|
|
|
|
|
Value: { int _result; \ while ((_result = sqlite3_step((stmt))) == SQLITE_ROW) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Value: |
|
Value: ({ int _result = sqlite3_step(stmt); \ if (_result != SQLITE_DONE && _result != SQLITE_ERROR) { \ _result = sqlite3_reset((stmt)); \ ABORT("Error executing prepared command: %s\n", sqlite3_errmsg(S_DB)); \ } \ sqlite3_reset((stmt)); \ sqlite3_clear_bindings((stmt)); \ (_result == SQLITE_DONE) ? 0 : 1; \ }) |
|
Value: |
|
Value: |
|
Value: ({ sqlite3_reset((stmt)); \ sqlite3_clear_bindings((stmt)); }) |
|
Value: ({ ALP_FAIL_FATAL_IF(!S_DB, "Error: bundle manager not initialized\n"); \ if (!__builtin_constant_p(cmd)) { \ ALP_TMTL("Error preparing command: %s (line %d of %s) -- not constant!", (cmd), __LINE__, __FUNCTION__); \ } \ static struct memory_sqlite3_stmt _stmt_memory; \ if (_stmt_memory.sqlstmt != NULL && sqlite3_expired(_stmt_memory.sqlstmt)) { \ sqlite3_finalize(_stmt_memory.sqlstmt); \ int _result = sqlite3_prepare(S_DB, (cmd), -1, &(_stmt_memory.sqlstmt), NULL); \ if (_result != SQLITE_OK) { \ ABORT("Error re-preparing command: %s\n", sqlite3_errmsg(S_DB)); \ } \ } else if (_stmt_memory.sqlstmt == NULL ) { \ int _result = sqlite3_prepare(S_DB, (cmd), -1, &(_stmt_memory.sqlstmt), NULL); \ if (_result != SQLITE_OK) { \ ABORT("Error preparing command: %s\n", sqlite3_errmsg(S_DB)); \ } \ _stmt_memory.cmd_str = (cmd); \ _stmt_memory.next = gmemory_sqlite3_stmt; \ gmemory_sqlite3_stmt = &_stmt_memory; \ } \ (stmt) = _stmt_memory.sqlstmt; \ }) |
|
|
|
Value: |
|
|
|
|
|
|
|
|