Callback = proc (para1: pointer; para2: int32; para3, para4: cstringArray): int32 {.
cdecl.}
Collation_needed_func = proc (para1: pointer; para2: PSqlite3; eTextRep: int32;
para4: cstring) {.cdecl.}
Create_collation_func = proc (para1: pointer; para2: int32; para3: pointer;
para4: int32; para5: pointer): int32 {.cdecl.}
Create_function_final_func = proc (para1: Pcontext) {.cdecl.}
Create_function_func_func = proc (para1: Pcontext; para2: int32;
para3: PValueArg) {.cdecl.}
Create_function_step_func = proc (para1: Pcontext; para2: int32;
para3: PValueArg) {.cdecl.}
Pcontext = ptr Context
PPSqlite3 = ptr PSqlite3
PPSqlite3_Backup = ptr PSqlite3_Backup
PSqlite3 = ptr Sqlite3
PSqlite3_Backup = ptr Sqlite3_Backup
PStmt = ptr TStmt
PValue = ptr Value
PValueArg = array[0 .. 127, PValue]
Result_func = proc (para1: pointer) {.cdecl.}
Tbind_destructor_func = proc (para1: pointer) {.cdecl, ...tags: [], gcsafe.}
SQLITE_ABORT = 4
SQLITE_ALTER_TABLE = 26
SQLITE_ANY = 5
SQLITE_ATTACH = 24
SQLITE_AUTH = 23
SQLITE_BLOB = 4
SQLITE_BUSY = 5
SQLITE_CANTOPEN = 14
SQLITE_CONSTRAINT = 19
SQLITE_COPY = 0
SQLITE_CORRUPT = 11
SQLITE_CREATE_INDEX = 1
SQLITE_CREATE_TABLE = 2
SQLITE_CREATE_TEMP_INDEX = 3
SQLITE_CREATE_TEMP_TABLE = 4
SQLITE_CREATE_TEMP_TRIGGER = 5
SQLITE_CREATE_TEMP_VIEW = 6
SQLITE_CREATE_TRIGGER = 7
SQLITE_CREATE_VIEW = 8
SQLITE_DELETE = 9
SQLITE_DENY = 1
SQLITE_DETACH = 25
SQLITE_DETERMINISTIC = 0x00000800
SQLITE_DONE = 101
SQLITE_DROP_INDEX = 10
SQLITE_DROP_TABLE = 11
SQLITE_DROP_TEMP_INDEX = 12
SQLITE_DROP_TEMP_TABLE = 13
SQLITE_DROP_TEMP_TRIGGER = 14
SQLITE_DROP_TEMP_VIEW = 15
SQLITE_DROP_TRIGGER = 16
SQLITE_DROP_VIEW = 17
SQLITE_EMPTY = 16
SQLITE_ERROR = 1
SQLITE_FLOAT = 2
SQLITE_FORMAT = 24
SQLITE_FULL = 13
SQLITE_IGNORE = 2
SQLITE_INSERT = 18
SQLITE_INTEGER = 1
SQLITE_INTERNAL = 2
SQLITE_INTERRUPT = 9
SQLITE_IOERR = 10
SQLITE_LOCKED = 6
SQLITE_MISMATCH = 20
SQLITE_MISUSE = 21
SQLITE_NOLFS = 22
SQLITE_NOMEM = 7
SQLITE_NOTADB = 26
SQLITE_NOTFOUND = 12
SQLITE_NULL = 5
SQLITE_OK = 0
SQLITE_PERM = 3
SQLITE_PRAGMA = 19
SQLITE_PROTOCOL = 15
SQLITE_RANGE = 25
SQLITE_READ = 20
SQLITE_READONLY = 8
SQLITE_REINDEX = 27
SQLITE_ROW = 100
SQLITE_SCHEMA = 17
SQLITE_SELECT = 21
SQLITE_STATIC = nil
SQLITE_TEXT = 3
SQLITE_TOOBIG = 18
SQLITE_TRANSACTION = 22
SQLITE_TRANSIENT = -1
SQLITE_UPDATE = 23
SQLITE_UTF8 = 1
SQLITE_UTF16 = 4
SQLITE_UTF16BE = 3
SQLITE_UTF16LE = 2
proc aggregate_context(para1: Pcontext; nBytes: int32): pointer {.cdecl,
dynlib: Lib, importc: "sqlite3_aggregate_context", ...raises: [], tags: [],
forbids: [].}
proc aggregate_count(para1: Pcontext): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_aggregate_count", ...raises: [], tags: [], forbids: [].}
proc backup_finish(pBackup: PSqlite3_Backup): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_backup_finish", ...raises: [], tags: [], forbids: [].}
proc backup_init(pDest: PSqlite3; zDestName: cstring; pSource: PSqlite3;
zSourceName: cstring): PSqlite3_Backup {.cdecl, dynlib: Lib,
importc: "sqlite3_backup_init", ...raises: [], tags: [], forbids: [].}
proc backup_pagecount(pBackup: PSqlite3_Backup): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_backup_pagecount", ...raises: [], tags: [], forbids: [].}
proc backup_remaining(pBackup: PSqlite3_Backup): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_backup_remaining", ...raises: [], tags: [], forbids: [].}
proc backup_step(pBackup: PSqlite3_Backup; nPage: int32): int32 {.cdecl,
dynlib: Lib, importc: "sqlite3_backup_step", ...raises: [], tags: [],
forbids: [].}
proc bind_blob(para1: PStmt; para2: int32; para3: pointer; n: int32;
para5: Tbind_destructor_func): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_bind_blob", ...raises: [], tags: [], forbids: [].}
proc bind_blob(para1: PStmt; para2: int32; para3: pointer; n: int32;
para5: int32): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_bind_blob", ...raises: [],
tags: [], forbids: [].}
proc bind_double(para1: PStmt; para2: int32; para3: float64): int32 {.cdecl,
dynlib: Lib, importc: "sqlite3_bind_double", ...raises: [], tags: [],
forbids: [].}
proc bind_int(para1: PStmt; para2: int32; para3: int32): int32 {.cdecl,
dynlib: Lib, importc: "sqlite3_bind_int", ...raises: [], tags: [], forbids: [].}
proc bind_int64(para1: PStmt; para2: int32; para3: int64): int32 {.cdecl,
dynlib: Lib, importc: "sqlite3_bind_int64", ...raises: [], tags: [],
forbids: [].}
proc bind_null(para1: PStmt; para2: int32): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_bind_null", ...raises: [], tags: [], forbids: [].}
proc bind_parameter_count(para1: PStmt): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_bind_parameter_count", ...raises: [], tags: [], forbids: [].}
proc bind_parameter_index(para1: PStmt; zName: cstring): int32 {.cdecl,
dynlib: Lib, importc: "sqlite3_bind_parameter_index", ...raises: [], tags: [],
forbids: [].}
proc bind_parameter_name(para1: PStmt; para2: int32): cstring {.cdecl,
dynlib: Lib, importc: "sqlite3_bind_parameter_name", ...raises: [], tags: [],
forbids: [].}
proc bind_text(para1: PStmt; para2: int32; para3: cstring; n: int32;
para5: Tbind_destructor_func): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_bind_text", ...raises: [], tags: [], forbids: [].}
proc bind_text(para1: PStmt; para2: int32; para3: cstring; n: int32;
para5: int32): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_bind_text", ...raises: [],
tags: [], forbids: [].}
proc bind_text16(para1: PStmt; para2: int32; para3: pointer; para4: int32;
para5: int32): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_bind_text16",
...raises: [], tags: [], forbids: [].}
proc bind_text16(para1: PStmt; para2: int32; para3: pointer; para4: int32;
para5: Tbind_destructor_func): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_bind_text16", ...raises: [], tags: [], forbids: [].}
proc busy_handler(para1: PSqlite3;
para2: proc (para1: pointer; para2: int32): int32 {.cdecl.};
para3: pointer): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_busy_handler", ...raises: [], tags: [], forbids: [].}
proc busy_timeout(para1: PSqlite3; ms: int32): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_busy_timeout", ...raises: [], tags: [], forbids: [].}
proc changes(para1: PSqlite3): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_changes", ...raises: [],
tags: [], forbids: [].}
proc clear_bindings(para1: PStmt): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_clear_bindings", ...raises: [], tags: [], forbids: [].}
proc close(para1: PSqlite3): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_close", ...raises: [],
tags: [], forbids: [].}
proc collation_needed(para1: PSqlite3; para2: pointer;
para3: Collation_needed_func): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_collation_needed", ...raises: [], tags: [], forbids: [].}
proc collation_needed16(para1: PSqlite3; para2: pointer;
para3: Collation_needed_func): int32 {.cdecl,
dynlib: Lib, importc: "sqlite3_collation_needed16", ...raises: [], tags: [],
forbids: [].}
proc column_blob(para1: PStmt; iCol: int32): pointer {.cdecl, dynlib: Lib,
importc: "sqlite3_column_blob", ...raises: [], tags: [], forbids: [].}
proc column_bytes(para1: PStmt; iCol: int32): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_column_bytes", ...raises: [], tags: [], forbids: [].}
proc column_bytes16(para1: PStmt; iCol: int32): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_column_bytes16", ...raises: [], tags: [], forbids: [].}
proc column_count(PStmt: PStmt): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_column_count", ...raises: [], tags: [], forbids: [].}
proc column_decltype(para1: PStmt; i: int32): cstring {.cdecl, dynlib: Lib,
importc: "sqlite3_column_decltype", ...raises: [], tags: [], forbids: [].}
proc column_decltype16(para1: PStmt; para2: int32): pointer {.cdecl,
dynlib: Lib, importc: "sqlite3_column_decltype16", ...raises: [], tags: [],
forbids: [].}
proc column_double(para1: PStmt; iCol: int32): float64 {.cdecl, dynlib: Lib,
importc: "sqlite3_column_double", ...raises: [], tags: [], forbids: [].}
proc column_int(para1: PStmt; iCol: int32): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_column_int", ...raises: [], tags: [], forbids: [].}
proc column_int64(para1: PStmt; iCol: int32): int64 {.cdecl, dynlib: Lib,
importc: "sqlite3_column_int64", ...raises: [], tags: [], forbids: [].}
proc column_name(para1: PStmt; para2: int32): cstring {.cdecl, dynlib: Lib,
importc: "sqlite3_column_name", ...raises: [], tags: [], forbids: [].}
proc column_name16(para1: PStmt; para2: int32): pointer {.cdecl, dynlib: Lib,
importc: "sqlite3_column_name16", ...raises: [], tags: [], forbids: [].}
proc column_table_name(para1: PStmt; para2: int32): cstring {.cdecl,
dynlib: Lib, importc: "sqlite3_column_table_name", ...raises: [], tags: [],
forbids: [].}
proc column_text(para1: PStmt; iCol: int32): cstring {.cdecl, dynlib: Lib,
importc: "sqlite3_column_text", ...raises: [], tags: [], forbids: [].}
proc column_text16(para1: PStmt; iCol: int32): pointer {.cdecl, dynlib: Lib,
importc: "sqlite3_column_text16", ...raises: [], tags: [], forbids: [].}
proc column_type(para1: PStmt; iCol: int32): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_column_type", ...raises: [], tags: [], forbids: [].}
proc commit_hook(para1: PSqlite3; para2: proc (para1: pointer): int32 {.cdecl.};
para3: pointer): pointer {.cdecl, dynlib: Lib,
importc: "sqlite3_commit_hook", ...raises: [], tags: [], forbids: [].}
proc complete(sql: cstring): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_complete", ...raises: [],
tags: [], forbids: [].}
proc complete16(sql: pointer): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_complete16",
...raises: [], tags: [], forbids: [].}
proc create_collation(para1: PSqlite3; zName: cstring; eTextRep: int32;
para4: pointer; xCompare: Create_collation_func): int32 {.
cdecl, dynlib: Lib, importc: "sqlite3_create_collation", ...raises: [],
tags: [], forbids: [].}
proc create_collation16(para1: PSqlite3; zName: cstring; eTextRep: int32;
para4: pointer; xCompare: Create_collation_func): int32 {.
cdecl, dynlib: Lib, importc: "sqlite3_create_collation16", ...raises: [],
tags: [], forbids: [].}
proc create_function(para1: PSqlite3; zFunctionName: cstring; nArg: int32;
eTextRep: int32; para5: pointer;
xFunc: Create_function_func_func;
xStep: Create_function_step_func;
xFinal: Create_function_final_func): int32 {.cdecl,
dynlib: Lib, importc: "sqlite3_create_function", ...raises: [], tags: [],
forbids: [].}
proc create_function16(para1: PSqlite3; zFunctionName: pointer; nArg: int32;
eTextRep: int32; para5: pointer;
xFunc: Create_function_func_func;
xStep: Create_function_step_func;
xFinal: Create_function_final_func): int32 {.cdecl,
dynlib: Lib, importc: "sqlite3_create_function16", ...raises: [], tags: [],
forbids: [].}
proc data_count(PStmt: PStmt): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_data_count",
...raises: [], tags: [], forbids: [].}
proc errcode(db: PSqlite3): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_errcode", ...raises: [],
tags: [], forbids: [].}
proc errmsg(para1: PSqlite3): cstring {.cdecl, dynlib: Lib,
importc: "sqlite3_errmsg", ...raises: [],
tags: [], forbids: [].}
proc errmsg16(para1: PSqlite3): pointer {.cdecl, dynlib: Lib,
importc: "sqlite3_errmsg16", ...raises: [], tags: [], forbids: [].}
proc exec(para1: PSqlite3; sql: cstring; para3: Callback; para4: pointer;
errmsg: var cstring): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_exec", ...raises: [],
tags: [], forbids: [].}
proc finalize(PStmt: PStmt): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_finalize", ...raises: [],
tags: [], forbids: [].}
proc free(z: cstring) {.cdecl, dynlib: Lib, importc: "sqlite3_free", ...raises: [],
tags: [], forbids: [].}
proc free_table(result: cstringArray) {.cdecl, dynlib: Lib,
importc: "sqlite3_free_table",
...raises: [], tags: [], forbids: [].}
proc get_auxdata(para1: Pcontext; para2: int32): pointer {.cdecl, dynlib: Lib,
importc: "sqlite3_get_auxdata", ...raises: [], tags: [], forbids: [].}
proc get_table(para1: PSqlite3; sql: cstring; resultp: var cstringArray;
nrow, ncolumn: var cint; errmsg: ptr cstring): int32 {.cdecl,
dynlib: Lib, importc: "sqlite3_get_table", ...raises: [], tags: [], forbids: [].}
proc interrupt(para1: PSqlite3) {.cdecl, dynlib: Lib,
importc: "sqlite3_interrupt", ...raises: [],
tags: [], forbids: [].}
proc last_insert_rowid(para1: PSqlite3): int64 {.cdecl, dynlib: Lib,
importc: "sqlite3_last_insert_rowid", ...raises: [], tags: [], forbids: [].}
proc libversion(): cstring {.cdecl, dynlib: Lib, importc: "sqlite3_libversion",
...raises: [], tags: [], forbids: [].}
proc libversion_number(): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_libversion_number",
...raises: [], tags: [], forbids: [].}
proc mprintf(para1: cstring): cstring {.cdecl, varargs, dynlib: Lib,
importc: "sqlite3_mprintf", ...raises: [],
tags: [], forbids: [].}
proc open(filename: cstring; ppDb: var PSqlite3): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_open", ...raises: [], tags: [], forbids: [].}
proc open16(filename: pointer; ppDb: var PSqlite3): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_open16", ...raises: [], tags: [], forbids: [].}
proc prepare(db: PSqlite3; zSql: cstring; nBytes: int32; ppStmt: var PStmt;
pzTail: ptr cstring): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_prepare", ...raises: [], tags: [], forbids: [].}
proc prepare16(db: PSqlite3; zSql: pointer; nBytes: int32; ppStmt: var PStmt;
pzTail: var pointer): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_prepare16", ...raises: [], tags: [], forbids: [].}
proc prepare_v2(db: PSqlite3; zSql: cstring; nByte: cint; ppStmt: var PStmt;
pzTail: ptr cstring): cint {.importc: "sqlite3_prepare_v2",
cdecl, dynlib: Lib, ...raises: [], tags: [], forbids: [].}
proc progress_handler(para1: PSqlite3; para2: int32;
para3: proc (para1: pointer): int32 {.cdecl.};
para4: pointer) {.cdecl, dynlib: Lib,
importc: "sqlite3_progress_handler",
...raises: [], tags: [], forbids: [].}
proc reset(PStmt: PStmt): int32 {.cdecl, dynlib: Lib, importc: "sqlite3_reset",
...raises: [], tags: [], forbids: [].}
proc result_blob(para1: Pcontext; para2: pointer; para3: int32;
para4: Result_func) {.cdecl, dynlib: Lib,
importc: "sqlite3_result_blob",
...raises: [], tags: [], forbids: [].}
proc result_double(para1: Pcontext; para2: float64) {.cdecl, dynlib: Lib,
importc: "sqlite3_result_double", ...raises: [], tags: [], forbids: [].}
proc result_error(para1: Pcontext; para2: cstring; para3: int32) {.cdecl,
dynlib: Lib, importc: "sqlite3_result_error", ...raises: [], tags: [],
forbids: [].}
proc result_error16(para1: Pcontext; para2: pointer; para3: int32) {.cdecl,
dynlib: Lib, importc: "sqlite3_result_error16", ...raises: [], tags: [],
forbids: [].}
proc result_int(para1: Pcontext; para2: int32) {.cdecl, dynlib: Lib,
importc: "sqlite3_result_int", ...raises: [], tags: [], forbids: [].}
proc result_int64(para1: Pcontext; para2: int64) {.cdecl, dynlib: Lib,
importc: "sqlite3_result_int64", ...raises: [], tags: [], forbids: [].}
proc result_null(para1: Pcontext) {.cdecl, dynlib: Lib,
importc: "sqlite3_result_null", ...raises: [],
tags: [], forbids: [].}
proc result_text(para1: Pcontext; para2: cstring; para3: int32;
para4: Result_func) {.cdecl, dynlib: Lib,
importc: "sqlite3_result_text",
...raises: [], tags: [], forbids: [].}
proc result_text16(para1: Pcontext; para2: pointer; para3: int32;
para4: Result_func) {.cdecl, dynlib: Lib,
importc: "sqlite3_result_text16", ...raises: [], tags: [], forbids: [].}
proc result_text16be(para1: Pcontext; para2: pointer; para3: int32;
para4: Result_func) {.cdecl, dynlib: Lib,
importc: "sqlite3_result_text16be", ...raises: [], tags: [], forbids: [].}
proc result_text16le(para1: Pcontext; para2: pointer; para3: int32;
para4: Result_func) {.cdecl, dynlib: Lib,
importc: "sqlite3_result_text16le", ...raises: [], tags: [], forbids: [].}
proc result_value(para1: Pcontext; para2: PValue) {.cdecl, dynlib: Lib,
importc: "sqlite3_result_value", ...raises: [], tags: [], forbids: [].}
proc set_authorizer(para1: PSqlite3; xAuth: proc (para1: pointer; para2: int32;
para3: cstring; para4: cstring; para5: cstring; para6: cstring): int32 {.
cdecl.}; pUserData: pointer): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_set_authorizer", ...raises: [], tags: [], forbids: [].}
proc set_auxdata(para1: Pcontext; para2: int32; para3: pointer;
para4: proc (para1: pointer) {.cdecl.}) {.cdecl, dynlib: Lib,
importc: "sqlite3_set_auxdata", ...raises: [], tags: [], forbids: [].}
proc snprintf(para1: int32; para2: cstring; para3: cstring): cstring {.cdecl,
dynlib: Lib, varargs, importc: "sqlite3_snprintf", ...raises: [], tags: [],
forbids: [].}
proc sqlite3_sleep(t: int64): int64 {.cdecl, dynlib: Lib,
importc: "sqlite3_sleep", ...raises: [],
tags: [], forbids: [].}
proc step(para1: PStmt): int32 {.cdecl, dynlib: Lib, importc: "sqlite3_step",
...raises: [], tags: [], forbids: [].}
proc total_changes(para1: PSqlite3): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_total_changes", ...raises: [], tags: [], forbids: [].}
proc trace(para1: PSqlite3;
xTrace: proc (para1: pointer; para2: cstring) {.cdecl.};
para3: pointer): pointer {.cdecl, dynlib: Lib,
importc: "sqlite3_trace", ...raises: [],
tags: [], forbids: [].}
proc user_data(para1: Pcontext): pointer {.cdecl, dynlib: Lib,
importc: "sqlite3_user_data", ...raises: [], tags: [], forbids: [].}
proc value_blob(para1: PValue): pointer {.cdecl, dynlib: Lib,
importc: "sqlite3_value_blob", ...raises: [], tags: [], forbids: [].}
proc value_bytes(para1: PValue): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_value_bytes", ...raises: [], tags: [], forbids: [].}
proc value_bytes16(para1: PValue): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_value_bytes16", ...raises: [], tags: [], forbids: [].}
proc value_double(para1: PValue): float64 {.cdecl, dynlib: Lib,
importc: "sqlite3_value_double", ...raises: [], tags: [], forbids: [].}
proc value_int(para1: PValue): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_value_int", ...raises: [],
tags: [], forbids: [].}
proc value_int64(para1: PValue): int64 {.cdecl, dynlib: Lib,
importc: "sqlite3_value_int64", ...raises: [], tags: [], forbids: [].}
proc value_text(para1: PValue): cstring {.cdecl, dynlib: Lib,
importc: "sqlite3_value_text", ...raises: [], tags: [], forbids: [].}
proc value_text16(para1: PValue): pointer {.cdecl, dynlib: Lib,
importc: "sqlite3_value_text16", ...raises: [], tags: [], forbids: [].}
proc value_text16be(para1: PValue): pointer {.cdecl, dynlib: Lib,
importc: "sqlite3_value_text16be", ...raises: [], tags: [], forbids: [].}
proc value_text16le(para1: PValue): pointer {.cdecl, dynlib: Lib,
importc: "sqlite3_value_text16le", ...raises: [], tags: [], forbids: [].}
proc value_type(para1: PValue): int32 {.cdecl, dynlib: Lib,
importc: "sqlite3_value_type",
...raises: [], tags: [], forbids: [].}
proc version(): cstring {.cdecl, dynlib: Lib, importc: "sqlite3_libversion",
...raises: [], tags: [], forbids: [].}