Skip to content
This repository
Browse code

Modified for windows support.

  • Loading branch information...
commit 58cfe6309d1a333b66d4a934cb38218855951d6a 1 parent 629fe17
Carlos Castillo authored
2  sqlite3.go
@@ -14,8 +14,6 @@ static int
14 14
 _sqlite3_bind_blob(sqlite3_stmt *stmt, int n, void *p, int np) {
15 15
   return sqlite3_bind_blob(stmt, n, p, np, SQLITE_TRANSIENT);
16 16
 }
17  
-
18  
-#cgo pkg-config: sqlite3
19 17
 */
20 18
 import "C"
21 19
 import (
7,097  sqlite3.h
7097 additions, 0 deletions not shown
8  sqlite3_other.go
... ...
@@ -0,0 +1,8 @@
  1
+// +build !windows
  2
+
  3
+package sqlite
  4
+
  5
+/*
  6
+#cgo pkg-config: sqlite3
  7
+*/
  8
+import "C"
136,332  sqlite3_windows.c
136332 additions, 0 deletions not shown
7  sqlite3_windows.go
... ...
@@ -0,0 +1,7 @@
  1
+package sqlite
  2
+
  3
+/*
  4
+#cgo CFLAGS: -I. -fno-stack-check -fno-stack-protector -mno-stack-arg-probe
  5
+#cgo LDFLAGS: -lmingwex -lmingw32
  6
+*/
  7
+import "C"
447  sqlite3ext.h
... ...
@@ -0,0 +1,447 @@
  1
+/*
  2
+** 2006 June 7
  3
+**
  4
+** The author disclaims copyright to this source code.  In place of
  5
+** a legal notice, here is a blessing:
  6
+**
  7
+**    May you do good and not evil.
  8
+**    May you find forgiveness for yourself and forgive others.
  9
+**    May you share freely, never taking more than you give.
  10
+**
  11
+*************************************************************************
  12
+** This header file defines the SQLite interface for use by
  13
+** shared libraries that want to be imported as extensions into
  14
+** an SQLite instance.  Shared libraries that intend to be loaded
  15
+** as extensions by SQLite should #include this file instead of 
  16
+** sqlite3.h.
  17
+*/
  18
+#ifndef _SQLITE3EXT_H_
  19
+#define _SQLITE3EXT_H_
  20
+#include "sqlite3.h"
  21
+
  22
+typedef struct sqlite3_api_routines sqlite3_api_routines;
  23
+
  24
+/*
  25
+** The following structure holds pointers to all of the SQLite API
  26
+** routines.
  27
+**
  28
+** WARNING:  In order to maintain backwards compatibility, add new
  29
+** interfaces to the end of this structure only.  If you insert new
  30
+** interfaces in the middle of this structure, then older different
  31
+** versions of SQLite will not be able to load each others' shared
  32
+** libraries!
  33
+*/
  34
+struct sqlite3_api_routines {
  35
+  void * (*aggregate_context)(sqlite3_context*,int nBytes);
  36
+  int  (*aggregate_count)(sqlite3_context*);
  37
+  int  (*bind_blob)(sqlite3_stmt*,int,const void*,int n,void(*)(void*));
  38
+  int  (*bind_double)(sqlite3_stmt*,int,double);
  39
+  int  (*bind_int)(sqlite3_stmt*,int,int);
  40
+  int  (*bind_int64)(sqlite3_stmt*,int,sqlite_int64);
  41
+  int  (*bind_null)(sqlite3_stmt*,int);
  42
+  int  (*bind_parameter_count)(sqlite3_stmt*);
  43
+  int  (*bind_parameter_index)(sqlite3_stmt*,const char*zName);
  44
+  const char * (*bind_parameter_name)(sqlite3_stmt*,int);
  45
+  int  (*bind_text)(sqlite3_stmt*,int,const char*,int n,void(*)(void*));
  46
+  int  (*bind_text16)(sqlite3_stmt*,int,const void*,int,void(*)(void*));
  47
+  int  (*bind_value)(sqlite3_stmt*,int,const sqlite3_value*);
  48
+  int  (*busy_handler)(sqlite3*,int(*)(void*,int),void*);
  49
+  int  (*busy_timeout)(sqlite3*,int ms);
  50
+  int  (*changes)(sqlite3*);
  51
+  int  (*close)(sqlite3*);
  52
+  int  (*collation_needed)(sqlite3*,void*,void(*)(void*,sqlite3*,
  53
+                           int eTextRep,const char*));
  54
+  int  (*collation_needed16)(sqlite3*,void*,void(*)(void*,sqlite3*,
  55
+                             int eTextRep,const void*));
  56
+  const void * (*column_blob)(sqlite3_stmt*,int iCol);
  57
+  int  (*column_bytes)(sqlite3_stmt*,int iCol);
  58
+  int  (*column_bytes16)(sqlite3_stmt*,int iCol);
  59
+  int  (*column_count)(sqlite3_stmt*pStmt);
  60
+  const char * (*column_database_name)(sqlite3_stmt*,int);
  61
+  const void * (*column_database_name16)(sqlite3_stmt*,int);
  62
+  const char * (*column_decltype)(sqlite3_stmt*,int i);
  63
+  const void * (*column_decltype16)(sqlite3_stmt*,int);
  64
+  double  (*column_double)(sqlite3_stmt*,int iCol);
  65
+  int  (*column_int)(sqlite3_stmt*,int iCol);
  66
+  sqlite_int64  (*column_int64)(sqlite3_stmt*,int iCol);
  67
+  const char * (*column_name)(sqlite3_stmt*,int);
  68
+  const void * (*column_name16)(sqlite3_stmt*,int);
  69
+  const char * (*column_origin_name)(sqlite3_stmt*,int);
  70
+  const void * (*column_origin_name16)(sqlite3_stmt*,int);
  71
+  const char * (*column_table_name)(sqlite3_stmt*,int);
  72
+  const void * (*column_table_name16)(sqlite3_stmt*,int);
  73
+  const unsigned char * (*column_text)(sqlite3_stmt*,int iCol);
  74
+  const void * (*column_text16)(sqlite3_stmt*,int iCol);
  75
+  int  (*column_type)(sqlite3_stmt*,int iCol);
  76
+  sqlite3_value* (*column_value)(sqlite3_stmt*,int iCol);
  77
+  void * (*commit_hook)(sqlite3*,int(*)(void*),void*);
  78
+  int  (*complete)(const char*sql);
  79
+  int  (*complete16)(const void*sql);
  80
+  int  (*create_collation)(sqlite3*,const char*,int,void*,
  81
+                           int(*)(void*,int,const void*,int,const void*));
  82
+  int  (*create_collation16)(sqlite3*,const void*,int,void*,
  83
+                             int(*)(void*,int,const void*,int,const void*));
  84
+  int  (*create_function)(sqlite3*,const char*,int,int,void*,
  85
+                          void (*xFunc)(sqlite3_context*,int,sqlite3_value**),
  86
+                          void (*xStep)(sqlite3_context*,int,sqlite3_value**),
  87
+                          void (*xFinal)(sqlite3_context*));
  88
+  int  (*create_function16)(sqlite3*,const void*,int,int,void*,
  89
+                            void (*xFunc)(sqlite3_context*,int,sqlite3_value**),
  90
+                            void (*xStep)(sqlite3_context*,int,sqlite3_value**),
  91
+                            void (*xFinal)(sqlite3_context*));
  92
+  int (*create_module)(sqlite3*,const char*,const sqlite3_module*,void*);
  93
+  int  (*data_count)(sqlite3_stmt*pStmt);
  94
+  sqlite3 * (*db_handle)(sqlite3_stmt*);
  95
+  int (*declare_vtab)(sqlite3*,const char*);
  96
+  int  (*enable_shared_cache)(int);
  97
+  int  (*errcode)(sqlite3*db);
  98
+  const char * (*errmsg)(sqlite3*);
  99
+  const void * (*errmsg16)(sqlite3*);
  100
+  int  (*exec)(sqlite3*,const char*,sqlite3_callback,void*,char**);
  101
+  int  (*expired)(sqlite3_stmt*);
  102
+  int  (*finalize)(sqlite3_stmt*pStmt);
  103
+  void  (*free)(void*);
  104
+  void  (*free_table)(char**result);
  105
+  int  (*get_autocommit)(sqlite3*);
  106
+  void * (*get_auxdata)(sqlite3_context*,int);
  107
+  int  (*get_table)(sqlite3*,const char*,char***,int*,int*,char**);
  108
+  int  (*global_recover)(void);
  109
+  void  (*interruptx)(sqlite3*);
  110
+  sqlite_int64  (*last_insert_rowid)(sqlite3*);
  111
+  const char * (*libversion)(void);
  112
+  int  (*libversion_number)(void);
  113
+  void *(*malloc)(int);
  114
+  char * (*mprintf)(const char*,...);
  115
+  int  (*open)(const char*,sqlite3**);
  116
+  int  (*open16)(const void*,sqlite3**);
  117
+  int  (*prepare)(sqlite3*,const char*,int,sqlite3_stmt**,const char**);
  118
+  int  (*prepare16)(sqlite3*,const void*,int,sqlite3_stmt**,const void**);
  119
+  void * (*profile)(sqlite3*,void(*)(void*,const char*,sqlite_uint64),void*);
  120
+  void  (*progress_handler)(sqlite3*,int,int(*)(void*),void*);
  121
+  void *(*realloc)(void*,int);
  122
+  int  (*reset)(sqlite3_stmt*pStmt);
  123
+  void  (*result_blob)(sqlite3_context*,const void*,int,void(*)(void*));
  124
+  void  (*result_double)(sqlite3_context*,double);
  125
+  void  (*result_error)(sqlite3_context*,const char*,int);
  126
+  void  (*result_error16)(sqlite3_context*,const void*,int);
  127
+  void  (*result_int)(sqlite3_context*,int);
  128
+  void  (*result_int64)(sqlite3_context*,sqlite_int64);
  129
+  void  (*result_null)(sqlite3_context*);
  130
+  void  (*result_text)(sqlite3_context*,const char*,int,void(*)(void*));
  131
+  void  (*result_text16)(sqlite3_context*,const void*,int,void(*)(void*));
  132
+  void  (*result_text16be)(sqlite3_context*,const void*,int,void(*)(void*));
  133
+  void  (*result_text16le)(sqlite3_context*,const void*,int,void(*)(void*));
  134
+  void  (*result_value)(sqlite3_context*,sqlite3_value*);
  135
+  void * (*rollback_hook)(sqlite3*,void(*)(void*),void*);
  136
+  int  (*set_authorizer)(sqlite3*,int(*)(void*,int,const char*,const char*,
  137
+                         const char*,const char*),void*);
  138
+  void  (*set_auxdata)(sqlite3_context*,int,void*,void (*)(void*));
  139
+  char * (*snprintf)(int,char*,const char*,...);
  140
+  int  (*step)(sqlite3_stmt*);
  141
+  int  (*table_column_metadata)(sqlite3*,const char*,const char*,const char*,
  142
+                                char const**,char const**,int*,int*,int*);
  143
+  void  (*thread_cleanup)(void);
  144
+  int  (*total_changes)(sqlite3*);
  145
+  void * (*trace)(sqlite3*,void(*xTrace)(void*,const char*),void*);
  146
+  int  (*transfer_bindings)(sqlite3_stmt*,sqlite3_stmt*);
  147
+  void * (*update_hook)(sqlite3*,void(*)(void*,int ,char const*,char const*,
  148
+                                         sqlite_int64),void*);
  149
+  void * (*user_data)(sqlite3_context*);
  150
+  const void * (*value_blob)(sqlite3_value*);
  151
+  int  (*value_bytes)(sqlite3_value*);
  152
+  int  (*value_bytes16)(sqlite3_value*);
  153
+  double  (*value_double)(sqlite3_value*);
  154
+  int  (*value_int)(sqlite3_value*);
  155
+  sqlite_int64  (*value_int64)(sqlite3_value*);
  156
+  int  (*value_numeric_type)(sqlite3_value*);
  157
+  const unsigned char * (*value_text)(sqlite3_value*);
  158
+  const void * (*value_text16)(sqlite3_value*);
  159
+  const void * (*value_text16be)(sqlite3_value*);
  160
+  const void * (*value_text16le)(sqlite3_value*);
  161
+  int  (*value_type)(sqlite3_value*);
  162
+  char *(*vmprintf)(const char*,va_list);
  163
+  /* Added ??? */
  164
+  int (*overload_function)(sqlite3*, const char *zFuncName, int nArg);
  165
+  /* Added by 3.3.13 */
  166
+  int (*prepare_v2)(sqlite3*,const char*,int,sqlite3_stmt**,const char**);
  167
+  int (*prepare16_v2)(sqlite3*,const void*,int,sqlite3_stmt**,const void**);
  168
+  int (*clear_bindings)(sqlite3_stmt*);
  169
+  /* Added by 3.4.1 */
  170
+  int (*create_module_v2)(sqlite3*,const char*,const sqlite3_module*,void*,
  171
+                          void (*xDestroy)(void *));
  172
+  /* Added by 3.5.0 */
  173
+  int (*bind_zeroblob)(sqlite3_stmt*,int,int);
  174
+  int (*blob_bytes)(sqlite3_blob*);
  175
+  int (*blob_close)(sqlite3_blob*);
  176
+  int (*blob_open)(sqlite3*,const char*,const char*,const char*,sqlite3_int64,
  177
+                   int,sqlite3_blob**);
  178
+  int (*blob_read)(sqlite3_blob*,void*,int,int);
  179
+  int (*blob_write)(sqlite3_blob*,const void*,int,int);
  180
+  int (*create_collation_v2)(sqlite3*,const char*,int,void*,
  181
+                             int(*)(void*,int,const void*,int,const void*),
  182
+                             void(*)(void*));
  183
+  int (*file_control)(sqlite3*,const char*,int,void*);
  184
+  sqlite3_int64 (*memory_highwater)(int);
  185
+  sqlite3_int64 (*memory_used)(void);
  186
+  sqlite3_mutex *(*mutex_alloc)(int);
  187
+  void (*mutex_enter)(sqlite3_mutex*);
  188
+  void (*mutex_free)(sqlite3_mutex*);
  189
+  void (*mutex_leave)(sqlite3_mutex*);
  190
+  int (*mutex_try)(sqlite3_mutex*);
  191
+  int (*open_v2)(const char*,sqlite3**,int,const char*);
  192
+  int (*release_memory)(int);
  193
+  void (*result_error_nomem)(sqlite3_context*);
  194
+  void (*result_error_toobig)(sqlite3_context*);
  195
+  int (*sleep)(int);
  196
+  void (*soft_heap_limit)(int);
  197
+  sqlite3_vfs *(*vfs_find)(const char*);
  198
+  int (*vfs_register)(sqlite3_vfs*,int);
  199
+  int (*vfs_unregister)(sqlite3_vfs*);
  200
+  int (*xthreadsafe)(void);
  201
+  void (*result_zeroblob)(sqlite3_context*,int);
  202
+  void (*result_error_code)(sqlite3_context*,int);
  203
+  int (*test_control)(int, ...);
  204
+  void (*randomness)(int,void*);
  205
+  sqlite3 *(*context_db_handle)(sqlite3_context*);
  206
+  int (*extended_result_codes)(sqlite3*,int);
  207
+  int (*limit)(sqlite3*,int,int);
  208
+  sqlite3_stmt *(*next_stmt)(sqlite3*,sqlite3_stmt*);
  209
+  const char *(*sql)(sqlite3_stmt*);
  210
+  int (*status)(int,int*,int*,int);
  211
+  int (*backup_finish)(sqlite3_backup*);
  212
+  sqlite3_backup *(*backup_init)(sqlite3*,const char*,sqlite3*,const char*);
  213
+  int (*backup_pagecount)(sqlite3_backup*);
  214
+  int (*backup_remaining)(sqlite3_backup*);
  215
+  int (*backup_step)(sqlite3_backup*,int);
  216
+  const char *(*compileoption_get)(int);
  217
+  int (*compileoption_used)(const char*);
  218
+  int (*create_function_v2)(sqlite3*,const char*,int,int,void*,
  219
+                            void (*xFunc)(sqlite3_context*,int,sqlite3_value**),
  220
+                            void (*xStep)(sqlite3_context*,int,sqlite3_value**),
  221
+                            void (*xFinal)(sqlite3_context*),
  222
+                            void(*xDestroy)(void*));
  223
+  int (*db_config)(sqlite3*,int,...);
  224
+  sqlite3_mutex *(*db_mutex)(sqlite3*);
  225
+  int (*db_status)(sqlite3*,int,int*,int*,int);
  226
+  int (*extended_errcode)(sqlite3*);
  227
+  void (*log)(int,const char*,...);
  228
+  sqlite3_int64 (*soft_heap_limit64)(sqlite3_int64);
  229
+  const char *(*sourceid)(void);
  230
+  int (*stmt_status)(sqlite3_stmt*,int,int);
  231
+  int (*strnicmp)(const char*,const char*,int);
  232
+  int (*unlock_notify)(sqlite3*,void(*)(void**,int),void*);
  233
+  int (*wal_autocheckpoint)(sqlite3*,int);
  234
+  int (*wal_checkpoint)(sqlite3*,const char*);
  235
+  void *(*wal_hook)(sqlite3*,int(*)(void*,sqlite3*,const char*,int),void*);
  236
+  int (*blob_reopen)(sqlite3_blob*,sqlite3_int64);
  237
+  int (*vtab_config)(sqlite3*,int op,...);
  238
+  int (*vtab_on_conflict)(sqlite3*);
  239
+};
  240
+
  241
+/*
  242
+** The following macros redefine the API routines so that they are
  243
+** redirected throught the global sqlite3_api structure.
  244
+**
  245
+** This header file is also used by the loadext.c source file
  246
+** (part of the main SQLite library - not an extension) so that
  247
+** it can get access to the sqlite3_api_routines structure
  248
+** definition.  But the main library does not want to redefine
  249
+** the API.  So the redefinition macros are only valid if the
  250
+** SQLITE_CORE macros is undefined.
  251
+*/
  252
+#ifndef SQLITE_CORE
  253
+#define sqlite3_aggregate_context      sqlite3_api->aggregate_context
  254
+#ifndef SQLITE_OMIT_DEPRECATED
  255
+#define sqlite3_aggregate_count        sqlite3_api->aggregate_count
  256
+#endif
  257
+#define sqlite3_bind_blob              sqlite3_api->bind_blob
  258
+#define sqlite3_bind_double            sqlite3_api->bind_double
  259
+#define sqlite3_bind_int               sqlite3_api->bind_int
  260
+#define sqlite3_bind_int64             sqlite3_api->bind_int64
  261
+#define sqlite3_bind_null              sqlite3_api->bind_null
  262
+#define sqlite3_bind_parameter_count   sqlite3_api->bind_parameter_count
  263
+#define sqlite3_bind_parameter_index   sqlite3_api->bind_parameter_index
  264
+#define sqlite3_bind_parameter_name    sqlite3_api->bind_parameter_name
  265
+#define sqlite3_bind_text              sqlite3_api->bind_text
  266
+#define sqlite3_bind_text16            sqlite3_api->bind_text16
  267
+#define sqlite3_bind_value             sqlite3_api->bind_value
  268
+#define sqlite3_busy_handler           sqlite3_api->busy_handler
  269
+#define sqlite3_busy_timeout           sqlite3_api->busy_timeout
  270
+#define sqlite3_changes                sqlite3_api->changes
  271
+#define sqlite3_close                  sqlite3_api->close
  272
+#define sqlite3_collation_needed       sqlite3_api->collation_needed
  273
+#define sqlite3_collation_needed16     sqlite3_api->collation_needed16
  274
+#define sqlite3_column_blob            sqlite3_api->column_blob
  275
+#define sqlite3_column_bytes           sqlite3_api->column_bytes
  276
+#define sqlite3_column_bytes16         sqlite3_api->column_bytes16
  277
+#define sqlite3_column_count           sqlite3_api->column_count
  278
+#define sqlite3_column_database_name   sqlite3_api->column_database_name
  279
+#define sqlite3_column_database_name16 sqlite3_api->column_database_name16
  280
+#define sqlite3_column_decltype        sqlite3_api->column_decltype
  281
+#define sqlite3_column_decltype16      sqlite3_api->column_decltype16
  282
+#define sqlite3_column_double          sqlite3_api->column_double
  283
+#define sqlite3_column_int             sqlite3_api->column_int
  284
+#define sqlite3_column_int64           sqlite3_api->column_int64
  285
+#define sqlite3_column_name            sqlite3_api->column_name
  286
+#define sqlite3_column_name16          sqlite3_api->column_name16
  287
+#define sqlite3_column_origin_name     sqlite3_api->column_origin_name
  288
+#define sqlite3_column_origin_name16   sqlite3_api->column_origin_name16
  289
+#define sqlite3_column_table_name      sqlite3_api->column_table_name
  290
+#define sqlite3_column_table_name16    sqlite3_api->column_table_name16
  291
+#define sqlite3_column_text            sqlite3_api->column_text
  292
+#define sqlite3_column_text16          sqlite3_api->column_text16
  293
+#define sqlite3_column_type            sqlite3_api->column_type
  294
+#define sqlite3_column_value           sqlite3_api->column_value
  295
+#define sqlite3_commit_hook            sqlite3_api->commit_hook
  296
+#define sqlite3_complete               sqlite3_api->complete
  297
+#define sqlite3_complete16             sqlite3_api->complete16
  298
+#define sqlite3_create_collation       sqlite3_api->create_collation
  299
+#define sqlite3_create_collation16     sqlite3_api->create_collation16
  300
+#define sqlite3_create_function        sqlite3_api->create_function
  301
+#define sqlite3_create_function16      sqlite3_api->create_function16
  302
+#define sqlite3_create_module          sqlite3_api->create_module
  303
+#define sqlite3_create_module_v2       sqlite3_api->create_module_v2
  304
+#define sqlite3_data_count             sqlite3_api->data_count
  305
+#define sqlite3_db_handle              sqlite3_api->db_handle
  306
+#define sqlite3_declare_vtab           sqlite3_api->declare_vtab
  307
+#define sqlite3_enable_shared_cache    sqlite3_api->enable_shared_cache
  308
+#define sqlite3_errcode                sqlite3_api->errcode
  309
+#define sqlite3_errmsg                 sqlite3_api->errmsg
  310
+#define sqlite3_errmsg16               sqlite3_api->errmsg16
  311
+#define sqlite3_exec                   sqlite3_api->exec
  312
+#ifndef SQLITE_OMIT_DEPRECATED
  313
+#define sqlite3_expired                sqlite3_api->expired
  314
+#endif
  315
+#define sqlite3_finalize               sqlite3_api->finalize
  316
+#define sqlite3_free                   sqlite3_api->free
  317
+#define sqlite3_free_table             sqlite3_api->free_table
  318
+#define sqlite3_get_autocommit         sqlite3_api->get_autocommit
  319
+#define sqlite3_get_auxdata            sqlite3_api->get_auxdata
  320
+#define sqlite3_get_table              sqlite3_api->get_table
  321
+#ifndef SQLITE_OMIT_DEPRECATED
  322
+#define sqlite3_global_recover         sqlite3_api->global_recover
  323
+#endif
  324
+#define sqlite3_interrupt              sqlite3_api->interruptx
  325
+#define sqlite3_last_insert_rowid      sqlite3_api->last_insert_rowid
  326
+#define sqlite3_libversion             sqlite3_api->libversion
  327
+#define sqlite3_libversion_number      sqlite3_api->libversion_number
  328
+#define sqlite3_malloc                 sqlite3_api->malloc
  329
+#define sqlite3_mprintf                sqlite3_api->mprintf
  330
+#define sqlite3_open                   sqlite3_api->open
  331
+#define sqlite3_open16                 sqlite3_api->open16
  332
+#define sqlite3_prepare                sqlite3_api->prepare
  333
+#define sqlite3_prepare16              sqlite3_api->prepare16
  334
+#define sqlite3_prepare_v2             sqlite3_api->prepare_v2
  335
+#define sqlite3_prepare16_v2           sqlite3_api->prepare16_v2
  336
+#define sqlite3_profile                sqlite3_api->profile
  337
+#define sqlite3_progress_handler       sqlite3_api->progress_handler
  338
+#define sqlite3_realloc                sqlite3_api->realloc
  339
+#define sqlite3_reset                  sqlite3_api->reset
  340
+#define sqlite3_result_blob            sqlite3_api->result_blob
  341
+#define sqlite3_result_double          sqlite3_api->result_double
  342
+#define sqlite3_result_error           sqlite3_api->result_error
  343
+#define sqlite3_result_error16         sqlite3_api->result_error16
  344
+#define sqlite3_result_int             sqlite3_api->result_int
  345
+#define sqlite3_result_int64           sqlite3_api->result_int64
  346
+#define sqlite3_result_null            sqlite3_api->result_null
  347
+#define sqlite3_result_text            sqlite3_api->result_text
  348
+#define sqlite3_result_text16          sqlite3_api->result_text16
  349
+#define sqlite3_result_text16be        sqlite3_api->result_text16be
  350
+#define sqlite3_result_text16le        sqlite3_api->result_text16le
  351
+#define sqlite3_result_value           sqlite3_api->result_value
  352
+#define sqlite3_rollback_hook          sqlite3_api->rollback_hook
  353
+#define sqlite3_set_authorizer         sqlite3_api->set_authorizer
  354
+#define sqlite3_set_auxdata            sqlite3_api->set_auxdata
  355
+#define sqlite3_snprintf               sqlite3_api->snprintf
  356
+#define sqlite3_step                   sqlite3_api->step
  357
+#define sqlite3_table_column_metadata  sqlite3_api->table_column_metadata
  358
+#define sqlite3_thread_cleanup         sqlite3_api->thread_cleanup
  359
+#define sqlite3_total_changes          sqlite3_api->total_changes
  360
+#define sqlite3_trace                  sqlite3_api->trace
  361
+#ifndef SQLITE_OMIT_DEPRECATED
  362
+#define sqlite3_transfer_bindings      sqlite3_api->transfer_bindings
  363
+#endif
  364
+#define sqlite3_update_hook            sqlite3_api->update_hook
  365
+#define sqlite3_user_data              sqlite3_api->user_data
  366
+#define sqlite3_value_blob             sqlite3_api->value_blob
  367
+#define sqlite3_value_bytes            sqlite3_api->value_bytes
  368
+#define sqlite3_value_bytes16          sqlite3_api->value_bytes16
  369
+#define sqlite3_value_double           sqlite3_api->value_double
  370
+#define sqlite3_value_int              sqlite3_api->value_int
  371
+#define sqlite3_value_int64            sqlite3_api->value_int64
  372
+#define sqlite3_value_numeric_type     sqlite3_api->value_numeric_type
  373
+#define sqlite3_value_text             sqlite3_api->value_text
  374
+#define sqlite3_value_text16           sqlite3_api->value_text16
  375
+#define sqlite3_value_text16be         sqlite3_api->value_text16be
  376
+#define sqlite3_value_text16le         sqlite3_api->value_text16le
  377
+#define sqlite3_value_type             sqlite3_api->value_type
  378
+#define sqlite3_vmprintf               sqlite3_api->vmprintf
  379
+#define sqlite3_overload_function      sqlite3_api->overload_function
  380
+#define sqlite3_prepare_v2             sqlite3_api->prepare_v2
  381
+#define sqlite3_prepare16_v2           sqlite3_api->prepare16_v2
  382
+#define sqlite3_clear_bindings         sqlite3_api->clear_bindings
  383
+#define sqlite3_bind_zeroblob          sqlite3_api->bind_zeroblob
  384
+#define sqlite3_blob_bytes             sqlite3_api->blob_bytes
  385
+#define sqlite3_blob_close             sqlite3_api->blob_close
  386
+#define sqlite3_blob_open              sqlite3_api->blob_open
  387
+#define sqlite3_blob_read              sqlite3_api->blob_read
  388
+#define sqlite3_blob_write             sqlite3_api->blob_write
  389
+#define sqlite3_create_collation_v2    sqlite3_api->create_collation_v2
  390
+#define sqlite3_file_control           sqlite3_api->file_control
  391
+#define sqlite3_memory_highwater       sqlite3_api->memory_highwater
  392
+#define sqlite3_memory_used            sqlite3_api->memory_used
  393
+#define sqlite3_mutex_alloc            sqlite3_api->mutex_alloc
  394
+#define sqlite3_mutex_enter            sqlite3_api->mutex_enter
  395
+#define sqlite3_mutex_free             sqlite3_api->mutex_free
  396
+#define sqlite3_mutex_leave            sqlite3_api->mutex_leave
  397
+#define sqlite3_mutex_try              sqlite3_api->mutex_try
  398
+#define sqlite3_open_v2                sqlite3_api->open_v2
  399
+#define sqlite3_release_memory         sqlite3_api->release_memory
  400
+#define sqlite3_result_error_nomem     sqlite3_api->result_error_nomem
  401
+#define sqlite3_result_error_toobig    sqlite3_api->result_error_toobig
  402
+#define sqlite3_sleep                  sqlite3_api->sleep
  403
+#define sqlite3_soft_heap_limit        sqlite3_api->soft_heap_limit
  404
+#define sqlite3_vfs_find               sqlite3_api->vfs_find
  405
+#define sqlite3_vfs_register           sqlite3_api->vfs_register
  406
+#define sqlite3_vfs_unregister         sqlite3_api->vfs_unregister
  407
+#define sqlite3_threadsafe             sqlite3_api->xthreadsafe
  408
+#define sqlite3_result_zeroblob        sqlite3_api->result_zeroblob
  409
+#define sqlite3_result_error_code      sqlite3_api->result_error_code
  410
+#define sqlite3_test_control           sqlite3_api->test_control
  411
+#define sqlite3_randomness             sqlite3_api->randomness
  412
+#define sqlite3_context_db_handle      sqlite3_api->context_db_handle
  413
+#define sqlite3_extended_result_codes  sqlite3_api->extended_result_codes
  414
+#define sqlite3_limit                  sqlite3_api->limit
  415
+#define sqlite3_next_stmt              sqlite3_api->next_stmt
  416
+#define sqlite3_sql                    sqlite3_api->sql
  417
+#define sqlite3_status                 sqlite3_api->status
  418
+#define sqlite3_backup_finish          sqlite3_api->backup_finish
  419
+#define sqlite3_backup_init            sqlite3_api->backup_init
  420
+#define sqlite3_backup_pagecount       sqlite3_api->backup_pagecount
  421
+#define sqlite3_backup_remaining       sqlite3_api->backup_remaining
  422
+#define sqlite3_backup_step            sqlite3_api->backup_step
  423
+#define sqlite3_compileoption_get      sqlite3_api->compileoption_get
  424
+#define sqlite3_compileoption_used     sqlite3_api->compileoption_used
  425
+#define sqlite3_create_function_v2     sqlite3_api->create_function_v2
  426
+#define sqlite3_db_config              sqlite3_api->db_config
  427
+#define sqlite3_db_mutex               sqlite3_api->db_mutex
  428
+#define sqlite3_db_status              sqlite3_api->db_status
  429
+#define sqlite3_extended_errcode       sqlite3_api->extended_errcode
  430
+#define sqlite3_log                    sqlite3_api->log
  431
+#define sqlite3_soft_heap_limit64      sqlite3_api->soft_heap_limit64
  432
+#define sqlite3_sourceid               sqlite3_api->sourceid
  433
+#define sqlite3_stmt_status            sqlite3_api->stmt_status
  434
+#define sqlite3_strnicmp               sqlite3_api->strnicmp
  435
+#define sqlite3_unlock_notify          sqlite3_api->unlock_notify
  436
+#define sqlite3_wal_autocheckpoint     sqlite3_api->wal_autocheckpoint
  437
+#define sqlite3_wal_checkpoint         sqlite3_api->wal_checkpoint
  438
+#define sqlite3_wal_hook               sqlite3_api->wal_hook
  439
+#define sqlite3_blob_reopen            sqlite3_api->blob_reopen
  440
+#define sqlite3_vtab_config            sqlite3_api->vtab_config
  441
+#define sqlite3_vtab_on_conflict       sqlite3_api->vtab_on_conflict
  442
+#endif /* SQLITE_CORE */
  443
+
  444
+#define SQLITE_EXTENSION_INIT1     const sqlite3_api_routines *sqlite3_api = 0;
  445
+#define SQLITE_EXTENSION_INIT2(v)  sqlite3_api = v;
  446
+
  447
+#endif /* _SQLITE3EXT_H_ */

0 notes on commit 58cfe63

Please sign in to comment.
Something went wrong with that request. Please try again.