theSq3Lite 10.0 NHI1 - theKernel - theLink - theConfig - theSq3Lite - theCompiler - theBrain - theGuard - theLib
c - tcl - atl - cs - py - rb - jv - cc
Loading...
Searching...
No Matches
LibSq3Lite_sq3.h
Go to the documentation of this file.
1
12/* LABEL-NO */
13
14#pragma once
15
16#ifdef META_STATIC
17# include "private_mk.h"
18#else
19# include "LibMkKernel_mk.h"
20#endif
21
22#ifndef PARSE_C_HEADER_TO_META
23 #include <string.h>
24 #include "debug_mk.h"
25#endif
26
27__parser__(library=Sq3Lite@native@Sq3@SqLite3);
28
29// MARK_D ################################################################
30// -----------------------------------------------------------------------
31// documentation order
163
164// =========================================================================================
165// Makefile: CPPFLAGS definitions
166
167// define: META_STATIC
168// reference: META_STATIC from kernel_mk.h
169
170#ifdef META_STATIC
171# undef SQ3_C_BUILD_DLL
172# define SQ3_C_BUILD_DLL
173#endif
174
175#if META_HAS_THREAD
176# define SQ3_RT_ARGS_ONLY MK_RT mkrt
177# define SQ3_RT_ARGS SQ3_RT_ARGS_ONLY,
178# define SQ3_RT_CALL_ONLY mkrt
179# define SQ3_RT_CALL SQ3_RT_CALL_ONLY,
180#else
181# define SQ3_RT_ARGS_ONLY void
182# define SQ3_RT_ARGS
183# define SQ3_RT_CALL_ONLY
184# define SQ3_RT_CALL
185#endif
186
187// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
188
189/* BEGIN_SQ3_C_DECLS should be used at the beginning of your declarations,
190 so that C++ compilers don't mangle their names. Use END_SQ3_C_DECLS at
191 the end of C declarations. */
192
193#undef BEGIN_SQ3_C_DECLS
194#undef END_SQ3_C_DECLS
195#if defined(META_COMPILE_AS_CC)
196# define BEGIN_SQ3_C_DECLS namespace libsq3lite { using namespace libmkkernel;
197# define END_SQ3_C_DECLS }
198#elif defined(__cplusplus)
199# define BEGIN_SQ3_C_DECLS extern "C" {
200# define END_SQ3_C_DECLS }
201#else
202# define BEGIN_SQ3_C_DECLS /* empty */
203# define END_SQ3_C_DECLS /* empty */
204#endif
205
206// MARK_O
207#ifndef PARSE_C_HEADER_TO_META
209#endif
210
212
213// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
214
222
223// ".c" file
224# define SQ3_INSTANCE_HDL(x) MK_INSTANCE_HDL(x)
225
226# define SQ3_INSTANCE_RT_X(x) MK_INSTANCE_RT_X(x)
227# define SQ3_INSTANCE_RT_X_NULL(x) MK_INSTANCE_RT_X_NULL(x)
228# define SQ3_INSTANCE_RT_O(o) MK_INSTANCE_RT_O(o)
229# define SQ3_INSTANCE_RT_O_NULL(o) MK_INSTANCE_RT_O_NULL(o)
230# define SQ3_DESTRUCTOR_RT_X(c,x) MK_DESTRUCTOR_RT_X(c,x)
231# define SQ3_STATIC_RT MK_STATIC_RT
232
234// Sq3RuntimeC_C_API
235
236// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
237
238// ==================================================================================
242
243// BEGIN-HEADER - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
244
245// If the source of libsq3lite is direct used in an external library
246// (without dynamic linking) and this library should *not* export
247// the symbol's of libsq3lite then the flag META_IGNORE_EXTERN have
248// to be set
249#undef SQ3_EXTERN
250#if defined(META_IGNORE_EXTERN)
251# define SQ3_EXTERN
252#elif defined(PIC)
253 // does we build a DLL ?
254# if defined(DLL_EXPORT)
255 // does we build the libsq3lite library ?
256# if defined(SQ3_C_BUILD_DLL)
257# define SQ3_EXTERN __declspec(dllexport)
258# else
259# define SQ3_EXTERN __declspec(dllimport)
260# endif
261# else
262 // no DLL - architecture specific extern specifier
263# define SQ3_EXTERN __attribute__ ((visibility("default")))
264# endif
265#else
267# define SQ3_EXTERN
268#endif
269
270// external data lookup
271#undef SQ3_EXTERN_DATA
272#if defined(META_PRIVATE)
273# define SQ3_EXTERN_DATA extern
274#elif defined(META_IGNORE_EXTERN)
275# define SQ3_EXTERN_DATA extern
276#elif defined(PIC)
277 // does we build a DLL ?
278# if defined(DLL_EXPORT)
279 // does we build the libsq3lite library ?
280# if defined(SQ3_C_BUILD_DLL)
281# define SQ3_EXTERN_DATA __declspec(dllexport)
282# else
283# define SQ3_EXTERN_DATA __declspec(dllimport)
284# endif
285# else
286 // no DLL - architecture specific extern specifier
287# define SQ3_EXTERN_DATA __attribute__ ((visibility("default"))) extern
288# endif
289#else
290# define SQ3_EXTERN_DATA extern
291#endif
292
293// END-HEADER - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
294
296// SQ3_Compiler_C_API
297
298/* ####################################################################### */
299/* ### ### */
300/* ### START api definition ### */
301/* ### ### */
302/* ####################################################################### */
303
304// #######################################################################
305// -----------------------------------------------------------------------
314__parser__push__(no-rpc,template-overload,doc-group=libsq3lite,doc-index=Setup);
315
319__parser__(no-inline)
320SQ3_EXTERN void MK_DECL Sq3Setup (void) __attribute__ ((constructor(1000))) MK_ATTR_STATIC ;
321
325__parser__(no-inline)
326SQ3_EXTERN void MK_DECL Sq3Cleanup (void) __attribute__ ((destructor(1000))) MK_ATTR_STATIC ;
327
329
331// Sq3Lite_Setup_C_API
332
333// ==================================================================================
336
337#define SQ3_SET_T(_cls,_hook,_nat) ({ \
338 /* _hook isn't used */ \
339 (_cls##_type) MkObjCreate(_cls##_TT,_nat,NULL); \
340})
341
343// Sq3Lite_Type_C_API
344
345// BEGIN-ShortDef - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
346
350 __parser__(type=ME_CCC_Sq3ValueC:"Sq3ValueC class handle":primary)
351 typedef struct Sq3ValueS * SQ3_VAL;
353 __parser__(type=ME_CCN_Sq3ValueC:"const - Sq3ValueC class handle":primary)
354 typedef const struct Sq3ValueS * SQ3_VALN;
356 __parser__(ignore)
357 typedef struct Sq3ValueS SQ3_VALR;
359// Sq3ValueC_Class_C_API
360
364 __parser__(type=ME_CCC_Sq3StmtC:"Sq3StmtC class handle":primary)
365 typedef struct Sq3StmtS * SQ3_STMT;
367 __parser__(type=ME_CCN_Sq3StmtC:"const - Sq3StmtC class handle":primary)
368 typedef const struct Sq3StmtS * SQ3_STMTN;
370 __parser__(ignore)
371 typedef struct Sq3StmtS SQ3_STMTR;
373// Sq3StmtC_Class_C_API
374
378 __parser__(type=ME_CCC_Sq3BlobC:"Sq3BlobC class handle":primary)
379 typedef struct Sq3BlobS * SQ3_BLOB;
381 __parser__(type=ME_CCN_Sq3BlobC:"const - Sq3BlobC class handle":primary)
382 typedef const struct Sq3BlobS * SQ3_BLOBN;
384 __parser__(ignore)
385 typedef struct Sq3BlobS SQ3_BLOBR;
387// Sq3BlobC_Class_C_API
388
392 __parser__(type=ME_CCC_Sq3FileC:"Sq3FileC class handle":primary)
393 typedef struct Sq3FileS * SQ3_FILE;
395 __parser__(type=ME_CCN_Sq3FileC:"const - Sq3FileC class handle":primary)
396 typedef const struct Sq3FileS * SQ3_FILEN;
398 __parser__(ignore)
399 typedef struct Sq3FileS SQ3_FILER;
401// Sq3FileC_Class_C_API
402
406 __parser__(type=ME_CCC_Sq3LiteC:"Sq3LiteC class handle":primary)
407 typedef struct Sq3LiteS * SQ3_LITE;
409 __parser__(type=ME_CCN_Sq3LiteC:"const - Sq3LiteC class handle":primary)
410 typedef const struct Sq3LiteS * SQ3_LITEN;
412 __parser__(ignore)
413 typedef struct Sq3LiteS SQ3_LITER;
415// Sq3LiteC_Class_C_API
416
417// END-ShortDef - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
418
419// =======================================================================
420
422
423 #include "Sq3Enum_sq3.h"
424
426
427// =======================================================================
428
444__parser__push__(doc-group=Error);
445
453 return ((ret) > SQ3_RESULT_OK && (ret) < SQ3_RESULT_ROW) ;
454}
455
462#define Sq3ErrorE_Check(sq3_hdl,PROC) \
463 if (unlikely(Sq3ErrorCheckI(PROC))) { \
464 Sq3LiteErrorToMQ(MkOBJ(sq3_hdl), __func__,__FILE__,__LINE__); \
465 goto error; \
466 } \
467
468#define Sq3ErrorE_Check_Package(PROC) \
469 if (unlikely(Sq3ErrorCheckI(PROC))) { \
470 Sq3LiteErrorToMQ(MK_ERROR_DEFAULT_NULL, __func__,__FILE__,__LINE__); \
471 goto error; \
472 }
473
474#define Sq3ErrorE_Check_Static(cls_hdl, PROC) \
475 if (unlikely(Sq3ErrorCheckI(PROC))) { \
476 Sq3LiteErrorToMQ(MkOBJ(cls_hdl), __func__,__FILE__,__LINE__); \
477 goto error; \
478 }
479
480#define Sq3ErrorE_Check_Ctor(__cls, __hdl, PROC) \
481 if (unlikely(Sq3ErrorCheckI(PROC))) { \
482 Sq3LiteErrorToMQ(__hdl?MkOBJ(__hdl):MkOBJ(__cls), __func__,__FILE__,__LINE__); \
483 goto error; \
484 }
485
486// fix non common name
487// example: (native code) config_error_t → (meta code) Sq3ErrorE
488// add new meta-name with: typedef config_error_t Sq3ErrorE;
489
490// ------------------------------------------------------------------
491// error
492
495__parser__(hide,overload-c-no,class=Sq3Lite)
498 MK_OBJN const obj,
499 MK_STRN const func __parser__(default=F#FUNC) ,
500 MK_STRN const file __parser__(default=F#FILE) ,
501 MK_I32 const line __parser__(default=F#LINE)
503
506// Sq3Lite_Error_C_API
507
508__parser__(hide)
510
519__parser__(hide,class=Sq3Lite,doc-group=Config)
521
522/* ####################################################################### */
523/* ### ### */
524/* ### D E C L A R A T I O N S ### */
525/* ### ### */
526/* ####################################################################### */
527
528#ifndef PARSE_C_HEADER_TO_META
529// BEGIN-Declaration - created by 'c_MqC.tcl -i NHI1_HOME/theSq3Lite/c/.libsq3lite.meta' - DO NOT change
530// -> erased
531// END-Declaration - created by 'c_MqC.tcl -i NHI1_HOME/theSq3Lite/c/.libsq3lite.meta' - DO NOT change
532#endif
533
535
536/* ####################################################################### */
537/* ### ### */
538/* ### I N C L U D E ### */
539/* ### ### */
540/* ####################################################################### */
541
542#ifndef META_DOXYGEN_SHOULD_SKIP_THIS
543
544 #ifdef PARSE_C_HEADER_TO_META
545 #include "sqlite3_modified.h"
546 #else
547 #include "sqlite3.h"
548 #endif
549
551
552__parser__(type=ME_PSN_SQ3_FILENAME:"constant string filename data-type":primary)
553typedef sqlite3_filename SQ3_FILENAME;
554
556
557 // BEGIN-Class-Include - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
558
559 #include "Sq3ValueC_sq3.h"
560 #include "Sq3StmtC_sq3.h"
561 #include "Sq3BlobC_sq3.h"
562 #include "Sq3FileC_sq3.h"
563 #include "Sq3LiteC_sq3.h"
564
565 // END-Class-Include - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
566
567#endif
568
570
571/* ####################################################################### */
572/* ### ### */
573/* ### P A C K A G E - A P I ### */
574/* ### ### */
575/* ####################################################################### */
576
617// ===========================================================================
618__parser__global__(doc-force=Sq3Lite@Enum@local);
619
620// =========================================================================
621// BEGIN-Sq3Lite-fupu - created by 'c_Native.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
622
623#ifndef PARSE_C_HEADER_TO_META
624
625 // doc-key: Sq3Lite,Sq3Lite-Config,sm_
626
629 #define Sq3Fupu_Sq3LiteProgressHandler_X_ret MK_I32
630 #define Sq3Fupu_Sq3LiteProgressHandler_X_args MK_PTR P
633
636 #define Sq3Fupu_Sq3LiteSetAuthorizer_xAuth_ret MK_I32
637 #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
640#endif
641
642// END-Sq3Lite-fupu - created by 'c_Native.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
643
644// =========================================================================
645// BEGIN-Sq3Lite-inline - created by 'c_Native.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
646
647#ifndef PARSE_C_HEADER_TO_META
648
649 // doc-key: Sq3Lite,Sq3Lite-Config,sm_
650
653 MK_STRN __retVal__L = sqlite3_compileoption_get(N);
654 return __retVal__L;
655 }
656
661
664 struct sqlite3 * sq3lite_hdl = sq3lite->nat;
665 sqlite3_progress_handler(sq3lite_hdl, N, X, (MK_PTR)(P));
666 }
667
670 struct sqlite3 * sq3lite_hdl = sq3lite->nat;
671 return (enum Sq3AuthReturnE)sqlite3_set_authorizer(sq3lite_hdl, xAuth, (MK_PTR)(pUserData));
672 }
673
676 return sqlite3_memory_highwater(resetFlag);
677 }
678
681 return sqlite3_memory_used();
682 }
683
688
691 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_threadsafe();
693 return MK_OK;
694 error:
695 return MK_ERROR;
696 }
697#endif
698
699#ifndef PARSE_C_HEADER_TO_META
700
701 // doc-key: Sq3Lite,Sq3Lite-Info,sm_
702
705 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_complete(sql);
707 return MK_OK;
708 error:
709 return MK_ERROR;
710 }
711
714 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_keyword_check(arg0, arg1);
716 return MK_OK;
717 error:
718 return MK_ERROR;
719 }
720
723 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_keyword_count();
725 return MK_OK;
726 error:
727 return MK_ERROR;
728 }
729
730 // doc-key: Sq3Lite,Sq3Lite-Info,smo
731
734 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_keyword_name(num, kwd, kwdsz);
736 return MK_OK;
737 error:
738 return MK_ERROR;
739 }
740
742 mk_inline enum MkErrorE Sq3Status (enum Sq3StatusE op, MK_I32 *pCurrent, MK_I32 *pHighwater, MK_BOOL resetFlag) {
743 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_status(op, pCurrent, pHighwater, resetFlag);
745 return MK_OK;
746 error:
747 return MK_ERROR;
748 }
749
751 mk_inline enum MkErrorE Sq3Status64 (enum Sq3StatusE op, MK_I64 *pCurrent, MK_I64 *pHighwater, MK_BOOL resetFlag) {
752 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_status64(op, pCurrent, pHighwater, resetFlag);
754 return MK_OK;
755 error:
756 return MK_ERROR;
757 }
758#endif
759
760#ifndef PARSE_C_HEADER_TO_META
761
762 // doc-key: Sq3Lite,Sq3Lite-Internal-Alloc,sm_
763
766 sqlite3_free((MK_PTR)(N));
767 }
768
773
778
781 return (MK_I64)sqlite3_msize((MK_PTR)(N));
782 }
783
786 return (MK_PTR)sqlite3_realloc((MK_PTR)(arg0), N);
787 }
788
791 return (MK_PTR)sqlite3_realloc64((MK_PTR)(arg0), (MK_U64)N);
792 }
793#endif
794
795#ifndef PARSE_C_HEADER_TO_META
796
797 // doc-key: Sq3Lite,Sq3Lite-Internal-Memory,sm_
798
803
806 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_release_memory(N);
808 return MK_OK;
809 error:
810 return MK_ERROR;
811 }
812
817#endif
818
819#ifndef PARSE_C_HEADER_TO_META
820
821 // doc-key: Sq3Lite,Sq3Lite-Internal-String,sm_
822
825 return sqlite3_strglob(zGlob, zStr);
826 }
827
830 return sqlite3_stricmp(arg0, arg1);
831 }
832
835 return sqlite3_strlike(zGlob, zStr, (MK_U32)cEsc);
836 }
837
840 return sqlite3_strnicmp(arg0, arg1, arg2);
841 }
842#endif
843
844#ifndef PARSE_C_HEADER_TO_META
845
846 // doc-key: Sq3Lite,Sq3Lite-Setup-libsqlite3,sm_
847
850 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_initialize();
852 return MK_OK;
853 error:
854 return MK_ERROR;
855 }
856
859 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_os_end();
861 return MK_OK;
862 error:
863 return MK_ERROR;
864 }
865
868 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_os_init();
870 return MK_OK;
871 error:
872 return MK_ERROR;
873 }
874
877 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_shutdown();
879 return MK_OK;
880 error:
881 return MK_ERROR;
882 }
883#endif
884
885#ifndef PARSE_C_HEADER_TO_META
886
887 // doc-key: Sq3Lite,Sq3Lite-Version,sm_
888
891 MK_STRN __retVal__L = sqlite3_libversion();
892 return __retVal__L;
893 }
894
897 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_libversion_number();
899 return MK_OK;
900 error:
901 return MK_ERROR;
902 }
903
906 MK_STRN __retVal__L = sqlite3_sourceid();
907 return __retVal__L;
908 }
909#endif
910
911#ifndef PARSE_C_HEADER_TO_META
912
913 // doc-key: Sq3Lite,Sq3Lite-Vfs,sm_
914
916 mk_inline SQ3_FILENAME Sq3CreateFilename (MK_STRN zDatabase, MK_STRN zJournal, MK_STRN zWal, MK_I32 azParam_num, MK_STRN *azParam) {
917 SQ3_FILENAME __retVal__L = sqlite3_create_filename(zDatabase, zJournal, zWal, azParam_num, azParam);
918 return __retVal__L;
919 }
920
923 MK_STRN __retVal__L = sqlite3_filename_database(F);
924 return __retVal__L;
925 }
926
929 MK_STRN __retVal__L = sqlite3_filename_journal(F);
930 return __retVal__L;
931 }
932
935 MK_STRN __retVal__L = sqlite3_filename_wal(F);
936 return __retVal__L;
937 }
938
940 mk_inline void Sq3FreeFilename (SQ3_FILENAME arg0) {
942 }
943
945 mk_inline enum MkErrorE Sq3UriBoolean (SQ3_FILENAME z, MK_STRN zParam, MK_I32 bDefault) {
946 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_uri_boolean(z, zParam, bDefault);
948 return MK_OK;
949 error:
950 return MK_ERROR;
951 }
952
954 mk_inline MK_I64 Sq3UriInt64 (SQ3_FILENAME arg0, MK_STRN arg1, MK_I64 arg2) {
955 return sqlite3_uri_int64(arg0, arg1, arg2);
956 }
957
959 mk_inline MK_STRN Sq3UriKey (SQ3_FILENAME z, MK_I32 N) {
960 MK_STRN __retVal__L = sqlite3_uri_key(z, N);
961 return __retVal__L;
962 }
963
965 mk_inline MK_STRN Sq3UriParameter (SQ3_FILENAME z, MK_STRN zParam) {
966 MK_STRN __retVal__L = sqlite3_uri_parameter(z, zParam);
967 return __retVal__L;
968 }
969#endif
970
971// END-Sq3Lite-inline - created by 'c_Native.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
972
973/*****************************************************************************/
974/* */
975/* check */
976/* (macros used in typeS functions) */
977/*****************************************************************************/
978
979#define Sq3ErrorC_Check(hdl,PROC) \
980 if (unlikely(Sq3ErrorCheckI(PROC))) { \
981 OT_ERROR_SQ3_2_MQ(hdl); \
982 OT_ERROR_META_2_LNG(hdl); \
983 goto error; \
984 }
985
986#define OT_ERROR_SQ3_2_MQ(hdl) Sq3LiteErrorToMQ(MkOBJ(hdl), __func__,__FILE__,__LINE__);
987
990
998__parser__(class=Package,doc-group=Info)
1002 MK_I32 num,
1003 MK_BUF *kwd_out
1004) {
1005 assert(kwd_out != NULL);
1007
1008 MkBufferCreateTLS_T(MkBuffer64C,buf,0);
1009 MK_STRN kwd ;
1010 MK_I32 kwdsz ;
1011 Sq3KeywordName_E(num,&kwd,&kwdsz);
1012 MkBufferSizeNew(buf,kwdsz+1);
1013 strncpy(bufR.super.buf.storage.first.S,kwd,(size_t)kwdsz);
1014 bufR.super.buf.storage.first.S[kwdsz] = '\0';
1015 *kwd_out = buf;
1016 return MK_OK;
1017error:
1019}
1020
1022
#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
Sq3BlobC_sq3.h - 12 Dec 2024 - aotto1968.
Sq3FileC_sq3.h - 12 Dec 2024 - aotto1968.
Sq3LiteC_sq3.h - 23 Dec 2024 - aotto1968.
Sq3StmtC_sq3.h - 30 Dec 2024 - aotto1968.
Sq3ValueC_sq3.h - 12 Dec 2024 - aotto1968.
#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__(...)
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 libsq3lite funtion return a MkErrorE use this function to convert the libsq3lite-error into the ...
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 libsq3lite internal memory …
void Sq3Setup(void)
setup libsq3lite 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)
sqlite3_overload_sq3.h - 23 Dec 2024 - aotto1968
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 …