Clone
ixen <ixen@copyhandler.com>
committed
on 30 Aug 16
Updated googletest framework to newest version (CH-256)
LoggerImprovements + 5 more
ext/sqlite3/sqlite3ext.h (+10 -0)
250 250   const char *(*uri_parameter)(const char*,const char*);
251 251   char *(*vsnprintf)(int,char*,const char*,va_list);
252 252   int (*wal_checkpoint_v2)(sqlite3*,const char*,int,int*,int*);
253 253   /* Version 3.8.7 and later */
254 254   int (*auto_extension)(void(*)(void));
255 255   int (*bind_blob64)(sqlite3_stmt*,int,const void*,sqlite3_uint64,
256 256                      void(*)(void*));
257 257   int (*bind_text64)(sqlite3_stmt*,int,const char*,sqlite3_uint64,
258 258                       void(*)(void*),unsigned char);
259 259   int (*cancel_auto_extension)(void(*)(void));
260 260   int (*load_extension)(sqlite3*,const char*,const char*,char**);
261 261   void *(*malloc64)(sqlite3_uint64);
262 262   sqlite3_uint64 (*msize)(void*);
263 263   void *(*realloc64)(void*,sqlite3_uint64);
264 264   void (*reset_auto_extension)(void);
265 265   void (*result_blob64)(sqlite3_context*,const void*,sqlite3_uint64,
266 266                         void(*)(void*));
267 267   void (*result_text64)(sqlite3_context*,const char*,sqlite3_uint64,
268 268                          void(*)(void*), unsigned char);
269 269   int (*strglob)(const char*,const char*);
  270   /* Version 3.8.11 and later */
  271   sqlite3_value *(*value_dup)(const sqlite3_value*);
  272   void (*value_free)(sqlite3_value*);
  273   int (*result_zeroblob64)(sqlite3_context*,sqlite3_uint64);
  274   int (*bind_zeroblob64)(sqlite3_stmt*, int, sqlite3_uint64);
270 275 };
271 276
272 277 /*
273 278 ** The following macros redefine the API routines so that they are
274 279 ** redirected through the global sqlite3_api structure.
275 280 **
276 281 ** This header file is also used by the loadext.c source file
277 282 ** (part of the main SQLite library - not an extension) so that
278 283 ** it can get access to the sqlite3_api_routines structure
279 284 ** definition.  But the main library does not want to redefine
280 285 ** the API.  So the redefinition macros are only valid if the
281 286 ** SQLITE_CORE macros is undefined.
282 287 */
283 288 #ifndef SQLITE_CORE
284 289 #define sqlite3_aggregate_context      sqlite3_api->aggregate_context
285 290 #ifndef SQLITE_OMIT_DEPRECATED
286 291 #define sqlite3_aggregate_count        sqlite3_api->aggregate_count
287 292 #endif
288 293 #define sqlite3_bind_blob              sqlite3_api->bind_blob
289 294 #define sqlite3_bind_double            sqlite3_api->bind_double
 
480 485 #define sqlite3_stmt_readonly          sqlite3_api->stmt_readonly
481 486 #define sqlite3_stricmp                sqlite3_api->stricmp
482 487 #define sqlite3_uri_boolean            sqlite3_api->uri_boolean
483 488 #define sqlite3_uri_int64              sqlite3_api->uri_int64
484 489 #define sqlite3_uri_parameter          sqlite3_api->uri_parameter
485 490 #define sqlite3_uri_vsnprintf          sqlite3_api->vsnprintf
486 491 #define sqlite3_wal_checkpoint_v2      sqlite3_api->wal_checkpoint_v2
487 492 /* Version 3.8.7 and later */
488 493 #define sqlite3_auto_extension         sqlite3_api->auto_extension
489 494 #define sqlite3_bind_blob64            sqlite3_api->bind_blob64
490 495 #define sqlite3_bind_text64            sqlite3_api->bind_text64
491 496 #define sqlite3_cancel_auto_extension  sqlite3_api->cancel_auto_extension
492 497 #define sqlite3_load_extension         sqlite3_api->load_extension
493 498 #define sqlite3_malloc64               sqlite3_api->malloc64
494 499 #define sqlite3_msize                  sqlite3_api->msize
495 500 #define sqlite3_realloc64              sqlite3_api->realloc64
496 501 #define sqlite3_reset_auto_extension   sqlite3_api->reset_auto_extension
497 502 #define sqlite3_result_blob64          sqlite3_api->result_blob64
498 503 #define sqlite3_result_text64          sqlite3_api->result_text64
499 504 #define sqlite3_strglob                sqlite3_api->strglob
  505 /* Version 3.8.11 and later */
  506 #define sqlite3_value_dup              sqlite3_api->value_dup
  507 #define sqlite3_value_free             sqlite3_api->value_free
  508 #define sqlite3_result_zeroblob64      sqlite3_api->result_zeroblob64
  509 #define sqlite3_bind_zeroblob64        sqlite3_api->bind_zeroblob64
500 510 #endif /* SQLITE_CORE */
501 511
502 512 #ifndef SQLITE_CORE
503 513   /* This case when the file really is being compiled as a loadable
504 514   ** extension */
505 515 # define SQLITE_EXTENSION_INIT1     const sqlite3_api_routines *sqlite3_api=0;
506 516 # define SQLITE_EXTENSION_INIT2(v)  sqlite3_api=v;
507 517 # define SQLITE_EXTENSION_INIT3     \
508 518     extern const sqlite3_api_routines *sqlite3_api;
509 519 #else
510 520   /* This case when the file is being statically linked into the
511 521   ** application */
512 522 # define SQLITE_EXTENSION_INIT1     /*no-op*/
513 523 # define SQLITE_EXTENSION_INIT2(v)  (void)v; /* unused parameter */
514 524 # define SQLITE_EXTENSION_INIT3     /*no-op*/
515 525 #endif
516 526
517 527 #endif /* _SQLITE3EXT_H_ */