theSq3Lite 10.0
Loading...
Searching...
No Matches
LibSq3Lite_sq3.h
Go to the documentation of this file.
1
9/* LABEL-NO */
10
11#pragma once
12
13#ifdef META_STATIC
14# include "private_mk.h"
15#else
16# include "LibMkKernel_mk.h"
17#endif
18
19#ifndef PARSE_C_HEADER_TO_META
20 #include <string.h>
21 #include "debug_mk.h"
22#endif
23
24__parser__(library=Sq3Lite@native@Sq3@SqLite3);
25
26// MARK_D ################################################################
27// -----------------------------------------------------------------------
28// documentation order
160
161// =========================================================================================
162// Makefile: CPPFLAGS definitions
163
164// define: META_STATIC
165// reference: META_STATIC from kernel_mk.h
166
167#ifdef META_STATIC
168# undef SQ3_C_BUILD_DLL
169# define SQ3_C_BUILD_DLL
170#endif
171
172#if META_HAS_THREAD
173# define SQ3_RT_ARGS_ONLY MK_RT mkrt
174# define SQ3_RT_ARGS SQ3_RT_ARGS_ONLY,
175# define SQ3_RT_CALL_ONLY mkrt
176# define SQ3_RT_CALL SQ3_RT_CALL_ONLY,
177#else
178# define SQ3_RT_ARGS_ONLY void
179# define SQ3_RT_ARGS
180# define SQ3_RT_CALL_ONLY
181# define SQ3_RT_CALL
182#endif
183
184// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
185
186/* BEGIN_SQ3_C_DECLS should be used at the beginning of your declarations,
187 so that C++ compilers don't mangle their names. Use END_SQ3_C_DECLS at
188 the end of C declarations. */
189
190#undef BEGIN_SQ3_C_DECLS
191#undef END_SQ3_C_DECLS
192#if defined(META_COMPILE_AS_CC)
193# define BEGIN_SQ3_C_DECLS namespace libsq3lite { using namespace libmkkernel;
194# define END_SQ3_C_DECLS }
195#elif defined(__cplusplus)
196# define BEGIN_SQ3_C_DECLS extern "C" {
197# define END_SQ3_C_DECLS }
198#else
199# define BEGIN_SQ3_C_DECLS /* empty */
200# define END_SQ3_C_DECLS /* empty */
201#endif
202
203// MARK_O
204#ifndef PARSE_C_HEADER_TO_META
206#endif
207
209
210// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
211
219
220// ".c" file
221# define SQ3_INSTANCE_HDL(x) MK_INSTANCE_HDL(x)
222
223# define SQ3_INSTANCE_RT_X(x) MK_INSTANCE_RT_X(x)
224# define SQ3_INSTANCE_RT_X_NULL(x) MK_INSTANCE_RT_X_NULL(x)
225# define SQ3_INSTANCE_RT_O(o) MK_INSTANCE_RT_O(o)
226# define SQ3_INSTANCE_RT_O_NULL(o) MK_INSTANCE_RT_O_NULL(o)
227# define SQ3_DESTRUCTOR_RT_X(c,x) MK_DESTRUCTOR_RT_X(c,x)
228# define SQ3_STATIC_RT MK_STATIC_RT
229
231// Sq3RuntimeC_C_API
232
233// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
234
235// ==================================================================================
239
240// BEGIN-HEADER - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
241
242// If the source of libsq3lite is direct used in an external library
243// (without dynamic linking) and this library should *not* export
244// the symbol's of libsq3lite then the flag META_IGNORE_EXTERN have
245// to be set
246#undef SQ3_EXTERN
247#if defined(META_IGNORE_EXTERN)
248# define SQ3_EXTERN
249#elif defined(PIC)
250 // does we build a DLL ?
251# if defined(DLL_EXPORT)
252 // does we build the libsq3lite library ?
253# if defined(SQ3_C_BUILD_DLL)
254# define SQ3_EXTERN __declspec(dllexport)
255# else
256# define SQ3_EXTERN __declspec(dllimport)
257# endif
258# else
259 // no DLL - architecture specific extern specifier
260# define SQ3_EXTERN __attribute__ ((visibility("default")))
261# endif
262#else
264# define SQ3_EXTERN
265#endif
266
267// external data lookup
268#undef SQ3_EXTERN_DATA
269#if defined(META_PRIVATE)
270# define SQ3_EXTERN_DATA extern
271#elif defined(META_IGNORE_EXTERN)
272# define SQ3_EXTERN_DATA extern
273#elif defined(PIC)
274 // does we build a DLL ?
275# if defined(DLL_EXPORT)
276 // does we build the libsq3lite library ?
277# if defined(SQ3_C_BUILD_DLL)
278# define SQ3_EXTERN_DATA __declspec(dllexport)
279# else
280# define SQ3_EXTERN_DATA __declspec(dllimport)
281# endif
282# else
283 // no DLL - architecture specific extern specifier
284# define SQ3_EXTERN_DATA __attribute__ ((visibility("default"))) extern
285# endif
286#else
287# define SQ3_EXTERN_DATA extern
288#endif
289
290// END-HEADER - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
291
293// SQ3_Compiler_C_API
294
295/* ####################################################################### */
296/* ### ### */
297/* ### START api definition ### */
298/* ### ### */
299/* ####################################################################### */
300
301// #######################################################################
302// -----------------------------------------------------------------------
311__parser__push__(no-rpc,template-overload,doc-group=libsq3lite,doc-index=Setup);
312
316__parser__(no-inline)
317SQ3_EXTERN void MK_DECL Sq3Setup (void) __attribute__ ((constructor(1000))) MK_ATTR_STATIC ;
318
322__parser__(no-inline)
323SQ3_EXTERN void MK_DECL Sq3Cleanup (void) __attribute__ ((destructor(1000))) MK_ATTR_STATIC ;
324
326
328// Sq3Lite_Setup_C_API
329
330// ==================================================================================
333
334#define SQ3_SET_T(_cls,_hook,_nat) ({ \
335 /* _hook isn't used */ \
336 (_cls##_type) MkObjCreate(_cls##_TT,_nat,NULL); \
337})
338
340// Sq3Lite_Type_C_API
341
342// BEGIN-ShortDef - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
343
347 __parser__(type=ME_CCC_Sq3ValueC:"Sq3ValueC class handle":primary)
348 typedef struct Sq3ValueS * SQ3_VAL;
350 __parser__(type=ME_CCN_Sq3ValueC:"const - Sq3ValueC class handle":primary)
351 typedef const struct Sq3ValueS * SQ3_VALN;
353 __parser__(ignore)
354 typedef struct Sq3ValueS SQ3_VALR;
356// Sq3ValueC_Class_C_API
357
361 __parser__(type=ME_CCC_Sq3StmtC:"Sq3StmtC class handle":primary)
362 typedef struct Sq3StmtS * SQ3_STMT;
364 __parser__(type=ME_CCN_Sq3StmtC:"const - Sq3StmtC class handle":primary)
365 typedef const struct Sq3StmtS * SQ3_STMTN;
367 __parser__(ignore)
368 typedef struct Sq3StmtS SQ3_STMTR;
370// Sq3StmtC_Class_C_API
371
375 __parser__(type=ME_CCC_Sq3BlobC:"Sq3BlobC class handle":primary)
376 typedef struct Sq3BlobS * SQ3_BLOB;
378 __parser__(type=ME_CCN_Sq3BlobC:"const - Sq3BlobC class handle":primary)
379 typedef const struct Sq3BlobS * SQ3_BLOBN;
381 __parser__(ignore)
382 typedef struct Sq3BlobS SQ3_BLOBR;
384// Sq3BlobC_Class_C_API
385
389 __parser__(type=ME_CCC_Sq3FileC:"Sq3FileC class handle":primary)
390 typedef struct Sq3FileS * SQ3_FILE;
392 __parser__(type=ME_CCN_Sq3FileC:"const - Sq3FileC class handle":primary)
393 typedef const struct Sq3FileS * SQ3_FILEN;
395 __parser__(ignore)
396 typedef struct Sq3FileS SQ3_FILER;
398// Sq3FileC_Class_C_API
399
403 __parser__(type=ME_CCC_Sq3LiteC:"Sq3LiteC class handle":primary)
404 typedef struct Sq3LiteS * SQ3_LITE;
406 __parser__(type=ME_CCN_Sq3LiteC:"const - Sq3LiteC class handle":primary)
407 typedef const struct Sq3LiteS * SQ3_LITEN;
409 __parser__(ignore)
410 typedef struct Sq3LiteS SQ3_LITER;
412// Sq3LiteC_Class_C_API
413
414// END-ShortDef - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
415
416// =======================================================================
417
419
420 #include "Sq3Enum_sq3.h"
421
423
424// =======================================================================
425
441__parser__push__(doc-group=Error);
442
450 return ((ret) > SQ3_RESULT_OK && (ret) < SQ3_RESULT_ROW) ;
451}
452
459#define Sq3ErrorE_Check(sq3_hdl,PROC) \
460 if (unlikely(Sq3ErrorCheckI(PROC))) { \
461 Sq3LiteErrorToMQ(MkOBJ(sq3_hdl), __func__,__FILE__,__LINE__); \
462 goto error; \
463 } \
464
465#define Sq3ErrorE_Check_Package(PROC) \
466 if (unlikely(Sq3ErrorCheckI(PROC))) { \
467 Sq3LiteErrorToMQ(MK_ERROR_DEFAULT_NULL, __func__,__FILE__,__LINE__); \
468 goto error; \
469 }
470
471#define Sq3ErrorE_Check_Static(cls_hdl, PROC) \
472 if (unlikely(Sq3ErrorCheckI(PROC))) { \
473 Sq3LiteErrorToMQ(MkOBJ(cls_hdl), __func__,__FILE__,__LINE__); \
474 goto error; \
475 }
476
477#define Sq3ErrorE_Check_Ctor(__cls, __hdl, PROC) \
478 if (unlikely(Sq3ErrorCheckI(PROC))) { \
479 Sq3LiteErrorToMQ(__hdl?MkOBJ(__hdl):MkOBJ(__cls), __func__,__FILE__,__LINE__); \
480 goto error; \
481 }
482
483// fix non common name
484// example: (native code) config_error_t → (meta code) Sq3ErrorE
485// add new meta-name with: typedef config_error_t Sq3ErrorE;
486
487// ------------------------------------------------------------------
488// error
489
492__parser__(hide,overload-c-no,class=Sq3Lite)
495 MK_OBJN const obj,
496 MK_STRN const func __parser__(default=F#FUNC) ,
497 MK_STRN const file __parser__(default=F#FILE) ,
498 MK_I32 const line __parser__(default=F#LINE)
500
503// Sq3Lite_Error_C_API
504
505__parser__(hide)
507
516__parser__(hide,class=Sq3Lite,doc-group=Config)
518
519/* ####################################################################### */
520/* ### ### */
521/* ### D E C L A R A T I O N S ### */
522/* ### ### */
523/* ####################################################################### */
524
525#ifndef PARSE_C_HEADER_TO_META
526// BEGIN-Declaration - created by 'c_MqC.tcl -i NHI1_HOME/theSq3Lite/c/.libsq3lite.meta' - DO NOT change
527// -> erased
528// END-Declaration - created by 'c_MqC.tcl -i NHI1_HOME/theSq3Lite/c/.libsq3lite.meta' - DO NOT change
529#endif
530
532
533/* ####################################################################### */
534/* ### ### */
535/* ### I N C L U D E ### */
536/* ### ### */
537/* ####################################################################### */
538
539#ifndef META_DOXYGEN_SHOULD_SKIP_THIS
540
541 #ifdef PARSE_C_HEADER_TO_META
542 #include "sqlite3_modified.h"
543 #else
544 #include "sqlite3.h"
545 #endif
546
548
549__parser__(type=ME_PSN_SQ3_FILENAME:"constant string filename data-type":primary)
550typedef sqlite3_filename SQ3_FILENAME;
551
553
554 // BEGIN-Class-Include - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
555
556 #include "Sq3ValueC_sq3.h"
557 #include "Sq3StmtC_sq3.h"
558 #include "Sq3BlobC_sq3.h"
559 #include "Sq3FileC_sq3.h"
560 #include "Sq3LiteC_sq3.h"
561
562 // END-Class-Include - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
563
564#endif
565
567
568/* ####################################################################### */
569/* ### ### */
570/* ### P A C K A G E - A P I ### */
571/* ### ### */
572/* ####################################################################### */
573
614// ===========================================================================
615__parser__global__(doc-force=Sq3Lite@Enum@local);
616
617// =========================================================================
618// BEGIN-Sq3Lite-fupu - created by 'c_Native.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
619
620#ifndef PARSE_C_HEADER_TO_META
621
622 // doc-key: Sq3Lite,Sq3Lite-Config,sm_
623
626 #define Sq3Fupu_Sq3LiteProgressHandler_X_ret MK_I32
627 #define Sq3Fupu_Sq3LiteProgressHandler_X_args MK_PTR P
630
633 #define Sq3Fupu_Sq3LiteSetAuthorizer_xAuth_ret MK_I32
634 #define Sq3Fupu_Sq3LiteSetAuthorizer_xAuth_args MK_PTR pUserData, MK_I32 auth_action_code, MK_STRN arg2, MK_STRN arg3, MK_STRN arg4, MK_STRN arg5
637#endif
638
639// END-Sq3Lite-fupu - created by 'c_Native.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
640
641// =========================================================================
642// BEGIN-Sq3Lite-inline - created by 'c_Native.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
643
644#ifndef PARSE_C_HEADER_TO_META
645
646 // doc-key: Sq3Lite,Sq3Lite-Config,sm_
647
650 MK_STRN __retVal__L = sqlite3_compileoption_get(N);
651 return __retVal__L;
652 }
653
658
661 struct sqlite3 * sq3lite_hdl = sq3lite->nat;
662 sqlite3_progress_handler(sq3lite_hdl, N, X, (MK_PTR)(P));
663 }
664
667 struct sqlite3 * sq3lite_hdl = sq3lite->nat;
668 return (enum Sq3AuthReturnE)sqlite3_set_authorizer(sq3lite_hdl, xAuth, (MK_PTR)(pUserData));
669 }
670
673 return sqlite3_memory_highwater(resetFlag);
674 }
675
678 return sqlite3_memory_used();
679 }
680
685
688 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_threadsafe();
690 return MK_OK;
691 error:
692 return MK_ERROR;
693 }
694#endif
695
696#ifndef PARSE_C_HEADER_TO_META
697
698 // doc-key: Sq3Lite,Sq3Lite-Info,sm_
699
702 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_complete(sql);
704 return MK_OK;
705 error:
706 return MK_ERROR;
707 }
708
711 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_keyword_check(arg0, arg1);
713 return MK_OK;
714 error:
715 return MK_ERROR;
716 }
717
720 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_keyword_count();
722 return MK_OK;
723 error:
724 return MK_ERROR;
725 }
726
727 // doc-key: Sq3Lite,Sq3Lite-Info,smo
728
731 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_keyword_name(num, kwd, kwdsz);
733 return MK_OK;
734 error:
735 return MK_ERROR;
736 }
737
739 mk_inline enum MkErrorE Sq3Status (enum Sq3StatusE op, MK_I32 *pCurrent, MK_I32 *pHighwater, MK_BOOL resetFlag) {
740 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_status(op, pCurrent, pHighwater, resetFlag);
742 return MK_OK;
743 error:
744 return MK_ERROR;
745 }
746
748 mk_inline enum MkErrorE Sq3Status64 (enum Sq3StatusE op, MK_I64 *pCurrent, MK_I64 *pHighwater, MK_BOOL resetFlag) {
749 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_status64(op, pCurrent, pHighwater, resetFlag);
751 return MK_OK;
752 error:
753 return MK_ERROR;
754 }
755#endif
756
757#ifndef PARSE_C_HEADER_TO_META
758
759 // doc-key: Sq3Lite,Sq3Lite-Internal-Alloc,sm_
760
763 sqlite3_free((MK_PTR)(N));
764 }
765
770
775
778 return (MK_I64)sqlite3_msize((MK_PTR)(N));
779 }
780
783 return (MK_PTR)sqlite3_realloc((MK_PTR)(arg0), N);
784 }
785
788 return (MK_PTR)sqlite3_realloc64((MK_PTR)(arg0), (MK_U64)N);
789 }
790#endif
791
792#ifndef PARSE_C_HEADER_TO_META
793
794 // doc-key: Sq3Lite,Sq3Lite-Internal-Memory,sm_
795
800
803 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_release_memory(N);
805 return MK_OK;
806 error:
807 return MK_ERROR;
808 }
809
814#endif
815
816#ifndef PARSE_C_HEADER_TO_META
817
818 // doc-key: Sq3Lite,Sq3Lite-Internal-String,sm_
819
822 return sqlite3_strglob(zGlob, zStr);
823 }
824
827 return sqlite3_stricmp(arg0, arg1);
828 }
829
832 return sqlite3_strlike(zGlob, zStr, (MK_U32)cEsc);
833 }
834
837 return sqlite3_strnicmp(arg0, arg1, arg2);
838 }
839#endif
840
841#ifndef PARSE_C_HEADER_TO_META
842
843 // doc-key: Sq3Lite,Sq3Lite-Setup-libsqlite3,sm_
844
847 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_initialize();
849 return MK_OK;
850 error:
851 return MK_ERROR;
852 }
853
856 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_os_end();
858 return MK_OK;
859 error:
860 return MK_ERROR;
861 }
862
865 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_os_init();
867 return MK_OK;
868 error:
869 return MK_ERROR;
870 }
871
874 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_shutdown();
876 return MK_OK;
877 error:
878 return MK_ERROR;
879 }
880#endif
881
882#ifndef PARSE_C_HEADER_TO_META
883
884 // doc-key: Sq3Lite,Sq3Lite-Version,sm_
885
888 MK_STRN __retVal__L = sqlite3_libversion();
889 return __retVal__L;
890 }
891
894 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_libversion_number();
896 return MK_OK;
897 error:
898 return MK_ERROR;
899 }
900
903 MK_STRN __retVal__L = sqlite3_sourceid();
904 return __retVal__L;
905 }
906#endif
907
908#ifndef PARSE_C_HEADER_TO_META
909
910 // doc-key: Sq3Lite,Sq3Lite-Vfs,sm_
911
913 mk_inline SQ3_FILENAME Sq3CreateFilename (MK_STRN zDatabase, MK_STRN zJournal, MK_STRN zWal, MK_I32 azParam_num, MK_STRN *azParam) {
914 SQ3_FILENAME __retVal__L = sqlite3_create_filename(zDatabase, zJournal, zWal, azParam_num, azParam);
915 return __retVal__L;
916 }
917
920 MK_STRN __retVal__L = sqlite3_filename_database(F);
921 return __retVal__L;
922 }
923
926 MK_STRN __retVal__L = sqlite3_filename_journal(F);
927 return __retVal__L;
928 }
929
932 MK_STRN __retVal__L = sqlite3_filename_wal(F);
933 return __retVal__L;
934 }
935
937 mk_inline void Sq3FreeFilename (SQ3_FILENAME arg0) {
939 }
940
942 mk_inline enum MkErrorE Sq3UriBoolean (SQ3_FILENAME z, MK_STRN zParam, MK_I32 bDefault) {
943 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_uri_boolean(z, zParam, bDefault);
945 return MK_OK;
946 error:
947 return MK_ERROR;
948 }
949
951 mk_inline MK_I64 Sq3UriInt64 (SQ3_FILENAME arg0, MK_STRN arg1, MK_I64 arg2) {
952 return sqlite3_uri_int64(arg0, arg1, arg2);
953 }
954
956 mk_inline MK_STRN Sq3UriKey (SQ3_FILENAME z, MK_I32 N) {
957 MK_STRN __retVal__L = sqlite3_uri_key(z, N);
958 return __retVal__L;
959 }
960
962 mk_inline MK_STRN Sq3UriParameter (SQ3_FILENAME z, MK_STRN zParam) {
963 MK_STRN __retVal__L = sqlite3_uri_parameter(z, zParam);
964 return __retVal__L;
965 }
966#endif
967
968// END-Sq3Lite-inline - created by 'c_Native.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
969
970/*****************************************************************************/
971/* */
972/* check */
973/* (macros used in typeS functions) */
974/*****************************************************************************/
975
976#define Sq3ErrorC_Check(hdl,PROC) \
977 if (unlikely(Sq3ErrorCheckI(PROC))) { \
978 OT_ERROR_SQ3_2_MQ(hdl); \
979 OT_ERROR_META_2_LNG(hdl); \
980 goto error; \
981 }
982
983#define OT_ERROR_SQ3_2_MQ(hdl) Sq3LiteErrorToMQ(MkOBJ(hdl), __func__,__FILE__,__LINE__);
984
987
995__parser__(class=Package,doc-group=Info)
999 MK_I32 num,
1000 MK_BUF *kwd_out
1001) {
1002 assert(kwd_out != NULL);
1004
1005 MkBufferCreateTLS_T(MkBuffer64C,buf,0);
1006 MK_STRN kwd ;
1007 MK_I32 kwdsz ;
1008 Sq3KeywordName_E(num,&kwd,&kwdsz);
1009 MkBufferSizeNew(buf,kwdsz+1);
1010 strncpy(bufR.super.buf.storage.first.S,kwd,(size_t)kwdsz);
1011 bufR.super.buf.storage.first.S[kwdsz] = '\0';
1012 *kwd_out = buf;
1013 return MK_OK;
1014error:
1016}
1017
1019
#define BEGIN_SQ3_C_DECLS
void(* Sq3SetupThreadF)(MK_RT mkrt)
void Sq3SetupThreadCallback(Sq3SetupThreadF call)
Initialize a callback which is called at runtime-setup …
#define END_SQ3_C_DECLS
tag: nhi1-release-250425
tag: nhi1-release-250425
tag: nhi1-release-250425
tag: nhi1-release-250425
tag: nhi1-release-250425
#define MkBufferSizeNew(...)
#define MkBufferCreateTLS_T(cls, name, size)
#define MkErrorStack_1X(...)
#define MK_DECL
#define mk_inline
MkErrorE
MK_ERROR
MK_OK
#define __parser__global__(...)
#define __parser__pop__
#define __parser__push__(...)
#define __parser__(...)
JNIEXPORT void JNICALL Setup(JNIEnv *env, jclass class)
MK_PTRB * MK_PTR
const MK_STRB * MK_STRN
unsigned long long MK_U64
signed long long MK_I64
bool MK_BOOL
unsigned int MK_U32
signed int MK_I32
#define MK_ATTR_STATIC
#define MK_ATTR_INSTANCE
#define MK_PARSER_RT
#define MK_RT_ARGS_ONLY
__thread MK_TYP Sq3LiteC_TT
class as MkTypeDefS-class-type …
static SQ3_LITE Sq3Lite(MK_MNG mng)
cast a unknown-object into an Sq3LiteS pointer or NULL if not possible
#define SQ3_EXTERN
static library
#define Sq3Fupu_Sq3LiteSetAuthorizer_xAuth_args
static MK_I64 Sq3MemoryHighwater(MK_I32 resetFlag)
Memory Allocator Statistics …
static MK_BOOL Sq3CompileOptionUsed(MK_STRN zOptName)
Run-Time Library Compilation Options Diagnostics …
static MK_STRN Sq3CompileOptionGet(MK_I32 N)
Run-Time Library Compilation Options Diagnostics …
#define Sq3Fupu_Sq3LiteProgressHandler_X_ret
static enum Sq3AuthReturnE Sq3LiteSetAuthorizer(SQ3_LITE sq3lite, Sq3Fupu_Sq3LiteSetAuthorizer_xAuth xAuth, MK_PTR pUserData)
Compile-Time Authorization Callbacks …
Sq3Fupu_Sq3LiteSetAuthorizer_xAuth_ret(* Sq3Fupu_Sq3LiteSetAuthorizer_xAuth)(Sq3Fupu_Sq3LiteSetAuthorizer_xAuth_args)
static void Sq3Randomness(MK_I32 N, MK_PTR P)
Pseudo-Random Number Generator …
static enum MkErrorE Sq3Threadsafe(void)
Test To See If The Library Is Threadsafe …
#define Sq3Fupu_Sq3LiteProgressHandler_X_args
#define Sq3Fupu_Sq3LiteSetAuthorizer_xAuth_ret
static MK_I64 Sq3MemoryUsed(void)
Memory Allocator Statistics …
Sq3Fupu_Sq3LiteProgressHandler_X_ret(* Sq3Fupu_Sq3LiteProgressHandler_X)(Sq3Fupu_Sq3LiteProgressHandler_X_args)
static void Sq3LiteProgressHandler(SQ3_LITE sq3lite, MK_I32 N, Sq3Fupu_Sq3LiteProgressHandler_X X, MK_PTR P)
Query Progress Callbacks …
Sq3StatusE
Status Parameters.
Sq3AuthReturnE
Authorizer Return Codes.
Sq3ErrorE
Result Codes.
@ SQ3_RESULT_OK
@ SQ3_RESULT_ROW
static bool Sq3ErrorCheckI(enum Sq3ErrorE ret)
check if ret signal an error …
#define Sq3ErrorE_Check_Package(PROC)
enum MkErrorE Sq3LiteErrorToMQ(MK_OBJN const obj, MK_STRN const func, MK_STRN const file, MK_I32 const line)
if a jvsq3lite funtion return a MkErrorE use this function to convert the libsq3lite-error into the l...
static enum MkErrorE Sq3Complete(MK_STRN sql)
Determine If An SQL Statement Is Complete …
static enum MkErrorE Sq3Status64(enum Sq3StatusE op, MK_I64 *pCurrent, MK_I64 *pHighwater, MK_BOOL resetFlag)
SQLite Runtime Status …
static enum MkErrorE Sq3KeywordCount(void)
SQL Keyword Checking …
static enum MkErrorE Sq3KeywordCheck(MK_STRN arg0, MK_I32 arg1)
SQL Keyword Checking …
static enum MkErrorE Sq3KeywordNameBUF_RT(MK_RT mkrt, MK_I32 num, MK_BUF *kwd_out)
SQL Keyword Checking …
static enum MkErrorE Sq3Status(enum Sq3StatusE op, MK_I32 *pCurrent, MK_I32 *pHighwater, MK_BOOL resetFlag)
SQLite Runtime Status …
#define Sq3KeywordName_E(...)
static enum MkErrorE Sq3KeywordName(MK_I32 num, MK_STRN *kwd, MK_I32 *kwdsz)
SQL Keyword Checking …
static MK_PTR Sq3Realloc64(MK_PTR arg0, MK_I64 N)
Memory Allocation Subsystem …
static void Sq3Free(MK_PTR N)
Memory Allocation Subsystem …
static MK_I64 Sq3Msize(MK_PTR N)
Memory Allocation Subsystem …
static MK_PTR Sq3Malloc64(MK_I64 N)
Memory Allocation Subsystem …
static MK_PTR Sq3Malloc(MK_I32 N)
Memory Allocation Subsystem …
static MK_PTR Sq3Realloc(MK_PTR arg0, MK_I32 N)
Memory Allocation Subsystem …
static MK_I64 Sq3HardHeapLimit64(MK_I64 N)
Impose A Limit On Heap Size …
static enum MkErrorE Sq3ReleaseMemory(MK_I32 N)
Attempt To Free Heap Memory …
static MK_I64 Sq3SoftHeapLimit64(MK_I64 N)
Impose A Limit On Heap Size …
static MK_I32 Sq3StrGlob(MK_STRN zGlob, MK_STRN zStr)
String Globbing …
static MK_I32 Sq3StrLike(MK_STRN zGlob, MK_STRN zStr, MK_I32 cEsc)
String LIKE Matching …
static MK_I32 Sq3StrIcmp(MK_STRN arg0, MK_STRN arg1)
String Comparison …
static MK_I32 Sq3StrNicmp(MK_STRN arg0, MK_STRN arg1, MK_I32 arg2)
String Comparison …
void Sq3Cleanup(void)
cleanup jvsq3lite internal memory …
void Sq3Setup(void)
setup jvsq3lite internal memory …
static enum MkErrorE Sq3Shutdown(void)
Initialize The SQLite Library …
static enum MkErrorE Sq3Initialize(void)
Initialize The SQLite Library …
static enum MkErrorE Sq3OsInit(void)
Initialize The SQLite Library …
static enum MkErrorE Sq3OsEnd(void)
Initialize The SQLite Library …
static MK_STRN Sq3Libversion(void)
Run-Time Library Version Numbers …
static enum MkErrorE Sq3LibversionNumber(void)
Run-Time Library Version Numbers …
static MK_STRN Sq3Sourceid(void)
Run-Time Library Version Numbers …
static MK_STRN Sq3FilenameWal(SQ3_FILENAME F)
Translate filenames …
static void Sq3FreeFilename(SQ3_FILENAME arg0)
Create and Destroy VFS Filenames …
static MK_STRN Sq3UriKey(SQ3_FILENAME z, MK_I32 N)
Obtain Values For URI Parameters …
static MK_I64 Sq3UriInt64(SQ3_FILENAME arg0, MK_STRN arg1, MK_I64 arg2)
Obtain Values For URI Parameters …
static SQ3_FILENAME Sq3CreateFilename(MK_STRN zDatabase, MK_STRN zJournal, MK_STRN zWal, MK_I32 azParam_num, MK_STRN *azParam)
Create and Destroy VFS Filenames …
static MK_STRN Sq3FilenameDatabase(SQ3_FILENAME F)
Translate filenames …
static MK_STRN Sq3FilenameJournal(SQ3_FILENAME F)
Translate filenames …
static MK_STRN Sq3UriParameter(SQ3_FILENAME z, MK_STRN zParam)
Obtain Values For URI Parameters …
static enum MkErrorE Sq3UriBoolean(SQ3_FILENAME z, MK_STRN zParam, MK_I32 bDefault)
Obtain Values For URI Parameters …
#define SQ3_STATIC_RT
SQLITE_API void * sqlite3_malloc64(sqlite3_uint64)
SQLITE_API const char * sqlite3_uri_parameter(sqlite3_filename z, const char *zParam)
SQLITE_API int sqlite3_keyword_check(const char *, int)
struct sqlite3 sqlite3
SQLITE_API int sqlite3_strglob(const char *zGlob, const char *zStr)
SQLITE_API int sqlite3_os_end(void)
SQLITE_API int sqlite3_status64(int op, sqlite3_int64 *pCurrent, sqlite3_int64 *pHighwater, int resetFlag)
SQLITE_API int sqlite3_strlike(const char *zGlob, const char *zStr, unsigned int cEsc)
SQLITE_API const char * sqlite3_compileoption_get(int N)
SQLITE_API const char * sqlite3_sourceid(void)
SQLITE_API void * sqlite3_realloc64(void *, sqlite3_uint64)
SQLITE_API void sqlite3_free_filename(sqlite3_filename)
const char * sqlite3_filename
SQLITE_API int sqlite3_strnicmp(const char *, const char *, int)
SQLITE_API sqlite3_uint64 sqlite3_msize(void *)
SQLITE_API const char * sqlite3_libversion(void)
SQLITE_API int sqlite3_compileoption_used(const char *zOptName)
SQLITE_API sqlite3_int64 sqlite3_memory_highwater(int resetFlag)
SQLITE_API void sqlite3_free(void *)
SQLITE_API const char * sqlite3_filename_journal(sqlite3_filename)
SQLITE_API int sqlite3_set_authorizer(sqlite3 *, int(*xAuth)(void *, int, const char *, const char *, const char *, const char *), void *pUserData)
SQLITE_API void sqlite3_progress_handler(sqlite3 *, int, int(*)(void *), void *)
SQLITE_API const char * sqlite3_filename_database(sqlite3_filename)
SQLITE_API const char * sqlite3_filename_wal(sqlite3_filename)
SQLITE_API void * sqlite3_realloc(void *, int)
SQLITE_API int sqlite3_libversion_number(void)
SQLITE_API int sqlite3_keyword_name(int, const char **, int *)
SQLITE_API int sqlite3_release_memory(int)
SQLITE_API sqlite3_filename sqlite3_create_filename(const char *zDatabase, const char *zJournal, const char *zWal, int nParam, const char **azParam)
SQLITE_API int sqlite3_complete(const char *sql)
SQLITE_API sqlite3_int64 sqlite3_hard_heap_limit64(sqlite3_int64 N)
SQLITE_API void sqlite3_randomness(int N, void *P)
SQLITE_API const char * sqlite3_uri_key(sqlite3_filename z, int N)
SQLITE_API int sqlite3_stricmp(const char *, const char *)
SQLITE_API int sqlite3_initialize(void)
SQLITE_API int sqlite3_threadsafe(void)
SQLITE_API sqlite3_int64 sqlite3_soft_heap_limit64(sqlite3_int64 N)
SQLITE_API sqlite3_int64 sqlite3_memory_used(void)
SQLITE_API int sqlite3_status(int op, int *pCurrent, int *pHighwater, int resetFlag)
SQLITE_API void * sqlite3_malloc(int)
SQLITE_API int sqlite3_keyword_count(void)
SQLITE_API int sqlite3_os_init(void)
SQLITE_API int sqlite3_shutdown(void)
SQLITE_API int sqlite3_uri_boolean(sqlite3_filename z, const char *zParam, int bDefault)
SQLITE_API sqlite3_int64 sqlite3_uri_int64(sqlite3_filename, const char *, sqlite3_int64)
tag: nhi1-release-250425
Struct to represent the data of the Sq3BlobC …
Struct to represent the data of the Sq3FileC …
Struct to represent the data of the Sq3LiteC …
sqlite3 * nat
internal - link between Sq3LiteS and native library
Struct to represent the data of the Sq3StmtC …
Struct to represent the data of the Sq3ValueC …