theSq3Lite 10.0 NHI1 - theKernel - theLink - theConfig - theSq3Lite - theCompiler - theBrain - theGuard
c - tcl - py - 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 "kernel_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// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
176
177/* BEGIN_SQ3_C_DECLS should be used at the beginning of your declarations,
178 so that C++ compilers don't mangle their names. Use END_SQ3_C_DECLS at
179 the end of C declarations. */
180
181#undef BEGIN_SQ3_C_DECLS
182#undef END_SQ3_C_DECLS
183#if defined(META_COMPILE_AS_CC)
184# define BEGIN_SQ3_C_DECLS namespace libsq3lite { using namespace libmkkernel;
185# define END_SQ3_C_DECLS }
186#elif defined(__cplusplus)
187# define BEGIN_SQ3_C_DECLS extern "C" {
188# define END_SQ3_C_DECLS }
189#else
190# define BEGIN_SQ3_C_DECLS /* empty */
191# define END_SQ3_C_DECLS /* empty */
192#endif
193
194// MARK_O
195#ifndef PARSE_C_HEADER_TO_META
197#endif
198
200
201// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
202
210
211# define SQ3_RT_ARGS_ONLY MK_RT_ARGS_ONLY
212# define SQ3_RT_ARGS MK_RT_ARGS
213# define SQ3_RT_CALL_ONLY MK_RT_CALL_ONLY
214# define SQ3_RT_CALL MK_RT_CALL
215# define SQ3_RT_CALL_NULL_ONLY MK_RT_CALL_NULL_ONLY
216# define SQ3_RT_CALL_NULL MK_RT_CALL_NULL
217# define SQ3_RT_REF MK_RT_REF
218# define SQ3_RT_PARSER_ONLY MK_RT_PARSER_ONLY
219# define SQ3_RT_PARSER MK_RT_PARSER
220# define SQ3_RT_PTR MK_RT_PTR
221
222# define Sq3RtSetup_O(o) MkRtSetup_O(o)
223# define Sq3RtSetup_X(x) MkRtSetup_X(x)
224# define Sq3RtSetup_XN(x) MkRtSetup_XN(x)
225# define Sq3RtSetup_ON(o) MkRtSetup_ON(o)
226# define Sq3RtSetup_NULL MkRtSetup_NULL
227# define Sq3RtSetup_NULL_RT MkRtSetup_NULL_RT
228
229# define Sq3ERROR_R(r) MkERROR_R(r)
230# define Sq3ERROR_RT MkERROR
231# define Sq3ERROR_O(o) MkERROR_O(o)
232# define Sq3ERROR_X(x) MkERROR_X(x)
233# define Sq3ERROR_XN(x) MkERROR_XN(x)
234# define Sq3ERROR MkERROR
235
237// Sq3RuntimeC_C_API
238
239// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
240
241// ==================================================================================
245
246// BEGIN-HEADER - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
247
248// If the source of libsq3lite is direct used in an external library
249// (without dynamic linking) and this library should *not* export
250// the symbol's of libsq3lite then the flag META_IGNORE_EXTERN have
251// to be set
252#undef SQ3_EXTERN
253#if defined(META_IGNORE_EXTERN)
254# define SQ3_EXTERN
255#elif defined(PIC)
256 // does we build a DLL ?
257# if defined(DLL_EXPORT)
258 // does we build the libmqmsgque library ?
259# if defined(SQ3_C_BUILD_DLL)
260# define SQ3_EXTERN __declspec(dllexport)
261# else
262# define SQ3_EXTERN __declspec(dllimport)
263# endif
264# else
265 // no DLL - architecture specific extern specifier
266# define SQ3_EXTERN __attribute__ ((visibility("default")))
267# endif
268#else
270# define SQ3_EXTERN
271#endif
272
273// external data lookup
274#undef SQ3_EXTERN_DATA
275#if defined(META_PRIVATE)
276# define SQ3_EXTERN_DATA extern
277#elif defined(META_IGNORE_EXTERN)
278# define SQ3_EXTERN_DATA extern
279#elif defined(PIC)
280 // does we build a DLL ?
281# if defined(DLL_EXPORT)
282 // does we build the libmqmsgque library ?
283# if defined(SQ3_C_BUILD_DLL)
284# define SQ3_EXTERN_DATA __declspec(dllexport)
285# else
286# define SQ3_EXTERN_DATA __declspec(dllimport)
287# endif
288# else
289 // no DLL - architecture specific extern specifier
290# define SQ3_EXTERN_DATA __attribute__ ((visibility("default"))) extern
291# endif
292#else
293# define SQ3_EXTERN_DATA extern
294#endif
295
296// END-HEADER - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
297
299// SQ3_Compiler_C_API
300
301/* ####################################################################### */
302/* ### ### */
303/* ### START api definition ### */
304/* ### ### */
305/* ####################################################################### */
306
307// #######################################################################
308// -----------------------------------------------------------------------
317__parser__push__(no-rpc,template-overload,doc-group=libsq3lite,doc-index=Setup);
318
323__parser__(no-inline)
324SQ3_EXTERN void MK_DECL Sq3Setup (void) __attribute__ ((constructor(1000)));
325
331__parser__(no-inline)
332SQ3_EXTERN void MK_DECL Sq3Cleanup (void) __attribute__ ((destructor(1000)));
333
335
337// Sq3Lite_Setup_C_API
338
339// ==================================================================================
342
343#define SQ3_SET_T(_cls,_hook,_nat) ({ \
344 /* _hook isn't used */ \
345 (_cls##_type) MkObjCreate(_cls##_TT,_nat,NULL); \
346})
347
349// Sq3Lite_Type_C_API
350
351// BEGIN-ShortDef - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
352
356 __parser__(type=ME_CCC_Sq3ValueC:"Sq3ValueC class handle":primary)
357 typedef struct Sq3ValueS * SQ3_VAL;
359 __parser__(type=ME_CCN_Sq3ValueC:"const - Sq3ValueC class handle":primary)
360 typedef const struct Sq3ValueS * SQ3_VALN;
362 __parser__(ignore)
363 typedef struct Sq3ValueS SQ3_VALR;
365// Sq3ValueC_Class_C_API
366
370 __parser__(type=ME_CCC_Sq3StmtC:"Sq3StmtC class handle":primary)
371 typedef struct Sq3StmtS * SQ3_STMT;
373 __parser__(type=ME_CCN_Sq3StmtC:"const - Sq3StmtC class handle":primary)
374 typedef const struct Sq3StmtS * SQ3_STMTN;
376 __parser__(ignore)
377 typedef struct Sq3StmtS SQ3_STMTR;
379// Sq3StmtC_Class_C_API
380
384 __parser__(type=ME_CCC_Sq3BlobC:"Sq3BlobC class handle":primary)
385 typedef struct Sq3BlobS * SQ3_BLOB;
387 __parser__(type=ME_CCN_Sq3BlobC:"const - Sq3BlobC class handle":primary)
388 typedef const struct Sq3BlobS * SQ3_BLOBN;
390 __parser__(ignore)
391 typedef struct Sq3BlobS SQ3_BLOBR;
393// Sq3BlobC_Class_C_API
394
398 __parser__(type=ME_CCC_Sq3FileC:"Sq3FileC class handle":primary)
399 typedef struct Sq3FileS * SQ3_FILE;
401 __parser__(type=ME_CCN_Sq3FileC:"const - Sq3FileC class handle":primary)
402 typedef const struct Sq3FileS * SQ3_FILEN;
404 __parser__(ignore)
405 typedef struct Sq3FileS SQ3_FILER;
407// Sq3FileC_Class_C_API
408
412 __parser__(type=ME_CCC_Sq3LiteC:"Sq3LiteC class handle":primary)
413 typedef struct Sq3LiteS * SQ3_LITE;
415 __parser__(type=ME_CCN_Sq3LiteC:"const - Sq3LiteC class handle":primary)
416 typedef const struct Sq3LiteS * SQ3_LITEN;
418 __parser__(ignore)
419 typedef struct Sq3LiteS SQ3_LITER;
421// Sq3LiteC_Class_C_API
422
423// END-ShortDef - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
424
425// =======================================================================
426
428
429 #include "Sq3Enum_sq3.h"
430
432
433// =======================================================================
434
450__parser__push__(doc-group=Error);
451
458 return ((ret) > SQ3_RESULT_OK && (ret) < SQ3_RESULT_ROW) ;
459}
460
467#define Sq3ErrorE_Check(sq3_hdl,PROC) \
468 if (unlikely(Sq3ErrorCheckI(PROC))) { \
469 Sq3LiteErrorToMQ(MkOBJ(sq3_hdl), __func__,__FILE__,__LINE__); \
470 goto error; \
471 } \
472
473#define Sq3ErrorE_Check_Package(PROC) \
474 if (unlikely(Sq3ErrorCheckI(PROC))) { \
475 Sq3LiteErrorToMQ(MK_ERROR_DEFAULT_NULL, __func__,__FILE__,__LINE__); \
476 goto error; \
477 }
478
479#define Sq3ErrorE_Check_Static(cls_hdl, PROC) \
480 if (unlikely(Sq3ErrorCheckI(PROC))) { \
481 Sq3LiteErrorToMQ(MkOBJ(cls_hdl), __func__,__FILE__,__LINE__); \
482 goto error; \
483 }
484
485#define Sq3ErrorE_Check_Ctor(__cls, __hdl, PROC) \
486 if (unlikely(Sq3ErrorCheckI(PROC))) { \
487 Sq3LiteErrorToMQ(__hdl?MkOBJ(__hdl):MkOBJ(__cls), __func__,__FILE__,__LINE__); \
488 goto error; \
489 }
490
491// fix non common name
492// example: (native code) config_error_t → (meta code) Sq3ErrorE
493// add new meta-name with: typedef config_error_t Sq3ErrorE;
494
495// ------------------------------------------------------------------
496// error
497
500__parser__(hide,overload-c-no,class=Sq3Lite)
503 MK_OBJN const obj,
504 MK_STRN const func __parser__(default=F#FUNC) ,
505 MK_STRN const file __parser__(default=F#FILE) ,
506 MK_I32 const line __parser__(default=F#LINE)
508
511// Sq3Lite_Error_C_API
512
513__parser__(hide)
515
524__parser__(hide,class=Sq3Lite,doc-group=Config)
526
527/* ####################################################################### */
528/* ### ### */
529/* ### D E C L A R A T I O N S ### */
530/* ### ### */
531/* ####################################################################### */
532
533#ifndef PARSE_C_HEADER_TO_META
534// BEGIN-Declaration - created by 'c_MqC.tcl -i NHI1_HOME/theSq3Lite/c/.libsq3lite.meta' - DO NOT change
535// -> erased
536// END-Declaration - created by 'c_MqC.tcl -i NHI1_HOME/theSq3Lite/c/.libsq3lite.meta' - DO NOT change
537#endif
538
540
541/* ####################################################################### */
542/* ### ### */
543/* ### I N C L U D E ### */
544/* ### ### */
545/* ####################################################################### */
546
547#ifndef META_DOXYGEN_SHOULD_SKIP_THIS
548
549 #ifdef PARSE_C_HEADER_TO_META
550 #include "sqlite3_modified.h"
551 #else
552 #include "sqlite3.h"
553 #endif
554
556
557__parser__(type=ME_PSN_SQ3_FILENAME:"constant string filename data-type":primary)
558typedef sqlite3_filename SQ3_FILENAME;
559
561
562 // BEGIN-Class-Include - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
563
564 #include "Sq3ValueC_sq3.h"
565 #include "Sq3StmtC_sq3.h"
566 #include "Sq3BlobC_sq3.h"
567 #include "Sq3FileC_sq3.h"
568 #include "Sq3LiteC_sq3.h"
569
570 // END-Class-Include - created by 'c_Class.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
571
572#endif
573
575
576/* ####################################################################### */
577/* ### ### */
578/* ### P A C K A G E - A P I ### */
579/* ### ### */
580/* ####################################################################### */
581
622// ===========================================================================
623__parser__global__(doc-force=Sq3Lite@Enum@local);
624
625// =========================================================================
626// BEGIN-Sq3Lite-fupu - created by 'c_Native.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
627
628#ifndef PARSE_C_HEADER_TO_META
629
630 // doc-key: Sq3Lite,Sq3Lite-Config,sm_
631
634 #define Sq3Fupu_Sq3LiteProgressHandler_X_ret MK_I32
635 #define Sq3Fupu_Sq3LiteProgressHandler_X_args MK_PTR P
638
641 #define Sq3Fupu_Sq3LiteSetAuthorizer_xAuth_ret MK_I32
642 #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
645#endif
646
647// END-Sq3Lite-fupu - created by 'c_Native.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
648
649// =========================================================================
650// BEGIN-Sq3Lite-inline - created by 'c_Native.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
651
652#ifndef PARSE_C_HEADER_TO_META
653
654 // doc-key: Sq3Lite,Sq3Lite-Config,sm_
655
658 MK_STRN __retVal__L = sqlite3_compileoption_get(N);
659 return __retVal__L;
660 }
661
666
669 struct sqlite3 * sq3lite_hdl = sq3lite->nat;
670 sqlite3_progress_handler(sq3lite_hdl, N, X, (MK_PTR)(P));
671 }
672
675 struct sqlite3 * sq3lite_hdl = sq3lite->nat;
676 return (enum Sq3AuthReturnE)sqlite3_set_authorizer(sq3lite_hdl, xAuth, (MK_PTR)(pUserData));
677 }
678
681 return sqlite3_memory_highwater(resetFlag);
682 }
683
686 return sqlite3_memory_used();
687 }
688
693
696 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_threadsafe();
698 return MK_OK;
699 error:
700 return MK_ERROR;
701 }
702#endif
703
704#ifndef PARSE_C_HEADER_TO_META
705
706 // doc-key: Sq3Lite,Sq3Lite-Info,sm_
707
710 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_complete(sql);
712 return MK_OK;
713 error:
714 return MK_ERROR;
715 }
716
719 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_keyword_check(arg0, arg1);
721 return MK_OK;
722 error:
723 return MK_ERROR;
724 }
725
728 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_keyword_count();
730 return MK_OK;
731 error:
732 return MK_ERROR;
733 }
734
735 // doc-key: Sq3Lite,Sq3Lite-Info,smo
736
739 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_keyword_name(num, kwd, kwdsz);
741 return MK_OK;
742 error:
743 return MK_ERROR;
744 }
745
747 mk_inline enum MkErrorE Sq3Status (enum Sq3StatusE op, MK_I32 *pCurrent, MK_I32 *pHighwater, MK_BOOL resetFlag) {
748 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_status(op, pCurrent, pHighwater, resetFlag);
750 return MK_OK;
751 error:
752 return MK_ERROR;
753 }
754
756 mk_inline enum MkErrorE Sq3Status64 (enum Sq3StatusE op, MK_I64 *pCurrent, MK_I64 *pHighwater, MK_BOOL resetFlag) {
757 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_status64(op, pCurrent, pHighwater, resetFlag);
759 return MK_OK;
760 error:
761 return MK_ERROR;
762 }
763#endif
764
765#ifndef PARSE_C_HEADER_TO_META
766
767 // doc-key: Sq3Lite,Sq3Lite-Internal-Alloc,sm_
768
771 sqlite3_free((MK_PTR)(N));
772 }
773
778
783
786 return (MK_I64)sqlite3_msize((MK_PTR)(N));
787 }
788
791 return (MK_PTR)sqlite3_realloc((MK_PTR)(arg0), N);
792 }
793
796 return (MK_PTR)sqlite3_realloc64((MK_PTR)(arg0), (MK_U64)N);
797 }
798#endif
799
800#ifndef PARSE_C_HEADER_TO_META
801
802 // doc-key: Sq3Lite,Sq3Lite-Internal-Memory,sm_
803
808
811 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_release_memory(N);
813 return MK_OK;
814 error:
815 return MK_ERROR;
816 }
817
822#endif
823
824#ifndef PARSE_C_HEADER_TO_META
825
826 // doc-key: Sq3Lite,Sq3Lite-Internal-String,sm_
827
830 return sqlite3_strglob(zGlob, zStr);
831 }
832
835 return sqlite3_stricmp(arg0, arg1);
836 }
837
840 return sqlite3_strlike(zGlob, zStr, (MK_U32)cEsc);
841 }
842
845 return sqlite3_strnicmp(arg0, arg1, arg2);
846 }
847#endif
848
849#ifndef PARSE_C_HEADER_TO_META
850
851 // doc-key: Sq3Lite,Sq3Lite-Setup-libsqlite3,sm_
852
855 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_initialize();
857 return MK_OK;
858 error:
859 return MK_ERROR;
860 }
861
864 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_os_end();
866 return MK_OK;
867 error:
868 return MK_ERROR;
869 }
870
873 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_os_init();
875 return MK_OK;
876 error:
877 return MK_ERROR;
878 }
879
882 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_shutdown();
884 return MK_OK;
885 error:
886 return MK_ERROR;
887 }
888#endif
889
890#ifndef PARSE_C_HEADER_TO_META
891
892 // doc-key: Sq3Lite,Sq3Lite-Version,sm_
893
896 MK_STRN __retVal__L = sqlite3_libversion();
897 return __retVal__L;
898 }
899
902 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_libversion_number();
904 return MK_OK;
905 error:
906 return MK_ERROR;
907 }
908
911 MK_STRN __retVal__L = sqlite3_sourceid();
912 return __retVal__L;
913 }
914#endif
915
916#ifndef PARSE_C_HEADER_TO_META
917
918 // doc-key: Sq3Lite,Sq3Lite-Vfs,sm_
919
921 mk_inline SQ3_FILENAME Sq3CreateFilename (MK_STRN zDatabase, MK_STRN zJournal, MK_STRN zWal, MK_I32 azParam_num, MK_STRN *azParam) {
922 SQ3_FILENAME __retVal__L = sqlite3_create_filename(zDatabase, zJournal, zWal, azParam_num, azParam);
923 return __retVal__L;
924 }
925
928 MK_STRN __retVal__L = sqlite3_filename_database(F);
929 return __retVal__L;
930 }
931
934 MK_STRN __retVal__L = sqlite3_filename_journal(F);
935 return __retVal__L;
936 }
937
940 MK_STRN __retVal__L = sqlite3_filename_wal(F);
941 return __retVal__L;
942 }
943
945 mk_inline void Sq3FreeFilename (SQ3_FILENAME arg0) {
947 }
948
950 mk_inline enum MkErrorE Sq3UriBoolean (SQ3_FILENAME z, MK_STRN zParam, MK_I32 bDefault) {
951 enum Sq3ErrorE errVal = (enum Sq3ErrorE)sqlite3_uri_boolean(z, zParam, bDefault);
953 return MK_OK;
954 error:
955 return MK_ERROR;
956 }
957
959 mk_inline MK_I64 Sq3UriInt64 (SQ3_FILENAME arg0, MK_STRN arg1, MK_I64 arg2) {
960 return sqlite3_uri_int64(arg0, arg1, arg2);
961 }
962
964 mk_inline MK_STRN Sq3UriKey (SQ3_FILENAME z, MK_I32 N) {
965 MK_STRN __retVal__L = sqlite3_uri_key(z, N);
966 return __retVal__L;
967 }
968
970 mk_inline MK_STRN Sq3UriParameter (SQ3_FILENAME z, MK_STRN zParam) {
971 MK_STRN __retVal__L = sqlite3_uri_parameter(z, zParam);
972 return __retVal__L;
973 }
974#endif
975
976// END-Sq3Lite-inline - created by 'c_Native.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
977
978/*****************************************************************************/
979/* */
980/* check */
981/* (macros used in typeS functions) */
982/*****************************************************************************/
983
984#define Sq3ErrorC_Check(hdl,PROC) \
985 if (unlikely(Sq3ErrorCheckI(PROC))) { \
986 OT_ERROR_SQ3_2_MQ(hdl); \
987 OT_ERROR_MQ_2_LNG(hdl); \
988 goto error; \
989 }
990
991#define OT_ERROR_SQ3_2_MQ(hdl) Sq3LiteErrorToMQ(MkOBJ(hdl), __func__,__FILE__,__LINE__);
992
995
1002__parser__(class=Package,doc-group=Info)
1004 assert(kwd_out != NULL);
1006 MkBufferCreateTLS_T(MkBuffer64C,buf,0);
1007 MK_STRN kwd ;
1008 MK_I32 kwdsz ;
1009 Sq3KeywordName_E(num,&kwd,&kwdsz);
1010 MkBufferSizeNew(buf,kwdsz+1);
1011 strncpy(bufR.super.buf.storage.first.S,kwd,(size_t)kwdsz);
1012 bufR.super.buf.storage.first.S[kwdsz] = '\0';
1013 *kwd_out = buf;
1014 return MK_OK;
1015error:
1017}
1018
1020
#define BEGIN_SQ3_C_DECLS
#define END_SQ3_C_DECLS
SQ3_EXTERN void Sq3SetupThreadCallback(Sq3SetupThreadF call)
Initialize a callback which is called at runtime-setup …
void(* Sq3SetupThreadF)(MK_RT_ARGS_ONLY)
Sq3BlobC_sq3.h - 26 Jun 2024 - aotto1968.
Sq3FileC_sq3.h - 26 Jun 2024 - aotto1968.
Sq3LiteC_sq3.h - 07 Aug 2024 - aotto1968.
Sq3StmtC_sq3.h - 27 Jul 2024 - aotto1968.
Sq3ValueC_sq3.h - 26 Jun 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
MK_ATTR_HDL
#define MkRtSetup_NULL
#define MK_RT_ARGS_ONLY
SQ3_LITE Sq3Lite(MK_MNG mng)
cast a unknown-object into an Sq3LiteS pointer or NULL if not possible
MkThreadLocal MK_TYP Sq3LiteC_TT
class as MkSuperTypeS-class-type …
#define SQ3_EXTERN
static library
#define Sq3Fupu_Sq3LiteSetAuthorizer_xAuth_args
void Sq3LiteProgressHandler(SQ3_LITE sq3lite, MK_I32 N, Sq3Fupu_Sq3LiteProgressHandler_X X, MK_PTR P)
Query Progress Callbacks …
void Sq3Randomness(MK_I32 N, MK_PTR P)
Pseudo-Random Number Generator …
#define Sq3Fupu_Sq3LiteProgressHandler_X_ret
MK_STRN Sq3CompileOptionGet(MK_I32 N)
Run-Time Library Compilation Options Diagnostics …
enum MkErrorE Sq3Threadsafe(void)
Test To See If The Library Is Threadsafe …
Sq3Fupu_Sq3LiteSetAuthorizer_xAuth_ret(* Sq3Fupu_Sq3LiteSetAuthorizer_xAuth)(Sq3Fupu_Sq3LiteSetAuthorizer_xAuth_args)
MK_I64 Sq3MemoryUsed(void)
Memory Allocator Statistics …
enum Sq3AuthReturnE Sq3LiteSetAuthorizer(SQ3_LITE sq3lite, Sq3Fupu_Sq3LiteSetAuthorizer_xAuth xAuth, MK_PTR pUserData)
Compile-Time Authorization Callbacks …
#define Sq3Fupu_Sq3LiteProgressHandler_X_args
#define Sq3Fupu_Sq3LiteSetAuthorizer_xAuth_ret
MK_I64 Sq3MemoryHighwater(MK_I32 resetFlag)
Memory Allocator Statistics …
Sq3Fupu_Sq3LiteProgressHandler_X_ret(* Sq3Fupu_Sq3LiteProgressHandler_X)(Sq3Fupu_Sq3LiteProgressHandler_X_args)
MK_BOOL Sq3CompileOptionUsed(MK_STRN zOptName)
Run-Time Library Compilation Options Diagnostics …
Sq3StatusE
Status Parameters.
Sq3AuthReturnE
Authorizer Return Codes.
Sq3ErrorE
Result Codes.
@ SQ3_RESULT_OK
@ SQ3_RESULT_ROW
#define Sq3ErrorE_Check_Package(PROC)
SQ3_EXTERN enum MkErrorE Sq3LiteErrorToMQ(MK_OBJN const obj, MK_STRN const func, MK_STRN const file, MK_I32 const line) MK_ATTR_HDL
if a libsq3lite funtion return a MkErrorE use this function to convert the libsq3lite-error into the ...
bool Sq3ErrorCheckI(enum Sq3ErrorE ret)
check if ret signal an error …
enum MkErrorE Sq3KeywordCheck(MK_STRN arg0, MK_I32 arg1)
SQL Keyword Checking …
enum MkErrorE Sq3KeywordName(MK_I32 num, MK_STRN *kwd, MK_I32 *kwdsz)
SQL Keyword Checking …
enum MkErrorE Sq3Status(enum Sq3StatusE op, MK_I32 *pCurrent, MK_I32 *pHighwater, MK_BOOL resetFlag)
SQLite Runtime Status …
enum MkErrorE Sq3Status64(enum Sq3StatusE op, MK_I64 *pCurrent, MK_I64 *pHighwater, MK_BOOL resetFlag)
SQLite Runtime Status …
enum MkErrorE Sq3KeywordCount(void)
SQL Keyword Checking …
#define Sq3KeywordName_E(...)
enum MkErrorE Sq3KeywordNameBUF(MK_I32 num, MK_BUF *kwd_out)
SQL Keyword Checking …
enum MkErrorE Sq3Complete(MK_STRN sql)
Determine If An SQL Statement Is Complete …
MK_PTR Sq3Malloc64(MK_I64 N)
Memory Allocation Subsystem …
MK_I64 Sq3Msize(MK_PTR N)
Memory Allocation Subsystem …
MK_PTR Sq3Malloc(MK_I32 N)
Memory Allocation Subsystem …
MK_PTR Sq3Realloc64(MK_PTR arg0, MK_I64 N)
Memory Allocation Subsystem …
MK_PTR Sq3Realloc(MK_PTR arg0, MK_I32 N)
Memory Allocation Subsystem …
void Sq3Free(MK_PTR N)
Memory Allocation Subsystem …
MK_I64 Sq3SoftHeapLimit64(MK_I64 N)
Impose A Limit On Heap Size …
enum MkErrorE Sq3ReleaseMemory(MK_I32 N)
Attempt To Free Heap Memory …
MK_I64 Sq3HardHeapLimit64(MK_I64 N)
Impose A Limit On Heap Size …
MK_I32 Sq3StrGlob(MK_STRN zGlob, MK_STRN zStr)
String Globbing …
MK_I32 Sq3StrIcmp(MK_STRN arg0, MK_STRN arg1)
String Comparison …
MK_I32 Sq3StrLike(MK_STRN zGlob, MK_STRN zStr, MK_I32 cEsc)
String LIKE Matching …
MK_I32 Sq3StrNicmp(MK_STRN arg0, MK_STRN arg1, MK_I32 arg2)
String Comparison …
SQ3_EXTERN void Sq3Setup(void)
setup libsq3lite internal memory …
SQ3_EXTERN void Sq3Cleanup(void)
cleanup libsq3lite internal memory …
enum MkErrorE Sq3Initialize(void)
Initialize The SQLite Library …
enum MkErrorE Sq3Shutdown(void)
Initialize The SQLite Library …
enum MkErrorE Sq3OsInit(void)
Initialize The SQLite Library …
enum MkErrorE Sq3OsEnd(void)
Initialize The SQLite Library …
enum MkErrorE Sq3LibversionNumber(void)
Run-Time Library Version Numbers …
MK_STRN Sq3Sourceid(void)
Run-Time Library Version Numbers …
MK_STRN Sq3Libversion(void)
Run-Time Library Version Numbers …
SQ3_FILENAME Sq3CreateFilename(MK_STRN zDatabase, MK_STRN zJournal, MK_STRN zWal, MK_I32 azParam_num, MK_STRN *azParam)
Create and Destroy VFS Filenames …
MK_STRN Sq3UriParameter(SQ3_FILENAME z, MK_STRN zParam)
Obtain Values For URI Parameters …
MK_STRN Sq3UriKey(SQ3_FILENAME z, MK_I32 N)
Obtain Values For URI Parameters …
MK_STRN Sq3FilenameDatabase(SQ3_FILENAME F)
Translate filenames …
MK_I64 Sq3UriInt64(SQ3_FILENAME arg0, MK_STRN arg1, MK_I64 arg2)
Obtain Values For URI Parameters …
enum MkErrorE Sq3UriBoolean(SQ3_FILENAME z, MK_STRN zParam, MK_I32 bDefault)
Obtain Values For URI Parameters …
void Sq3FreeFilename(SQ3_FILENAME arg0)
Create and Destroy VFS Filenames …
MK_STRN Sq3FilenameJournal(SQ3_FILENAME F)
Translate filenames …
MK_STRN Sq3FilenameWal(SQ3_FILENAME F)
Translate filenames …
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 - 07 Aug 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 …