theSq3Lite 10.0
Loading...
Searching...
No Matches
Sq3StmtC_py.c
Go to the documentation of this file.
1
9/* LABEL-START */
10
11#define META_FILE_NAME "Sq3StmtC_py.c"
12
14
15// PY class
16#define OT_CLASS (&NS(Sq3StmtCR))
17#define OT_CLASS_NAME "Sq3StmtC"
18
19#define OT_LNG2META(O) Sq3Stmt(VAL2MNG(O))
20
21#define OT_retObj_CONSTR(mng) OT_retObj_SET(NS(Sq3StmtC_CTOR)(MK_RT_CALL (PyTypeObject*)class,mng))
22
23#define OT_SETUP_hdl OT_SETUP_hdl_tmpl(Sq3StmtC)
24#define OT_SETUP_hdl__null_allow OT_SETUP_hdl_tmpl__null_allow(Sq3StmtC)
25#define OT_SETUP_hdl_constr MK_RT_UNUSED AllRtSetup_NULL; \
26 SQ3_STMT hdl = (SQ3_STMT) OT_CLASS;
27#define OT_SETUP_hdl_destr OT_SETUP_hdl_tmpl__null_allow(Sq3StmtC)
28#define OT_SETUP_hdl_static MK_RT_UNUSED AllRtSetup_NULL; \
29 __attribute__((unused)) MK_TYP hdl = Sq3StmtC##_TT;
30
31#define OT_SETUP_hdl_static_constr OT_SETUP_hdl_static
32
33#if !defined(SetupRtFromObj_X)
34 #define SetupRtFromObj_X(hdl) AllRtSetup_X(hdl)
35 #define SetupRtFromObj_XN(hdl) AllRtSetup_XN(hdl)
36#endif
37
38// MO class
39#undef Sq3StmtCTT
40#define Sq3StmtCTT SQ3(Sq3LiteThreadState).Sq3StmtCTT
41/* Sq3StmtC_MK_NULL defined in LibSq3Lite_py.h */
42
43__attribute__((unused)) mk_inline
44OT_OBJ_T NS(Sq3StmtC_CTOR) (MK_RT_ARGS OT_CLS_T type, SQ3_STMT hdl) {
45 return MK(AtomCreate)(MK_RT_CALL type,Sq3StmtC_X2obj(hdl));
46}
47
48// helper: mk_dbg_color_ln(MK_COLOR_YELLOW,"hdl<%p>, self<%p>", obj, self);
49
50// META: ObjNew feature: selfCreate will be called from "ObjNew->MkSelfNew" if MkObj need a SELF pointer
51static MK_PTR NS(Sq3StmtC_selfCreate) (MK_RT_ARGS MK_OBJ const obj, MK_PTR const env) {
52 return MK(AtomCreate) (MK_RT_CALL OT_CLASS,obj);
53}
54// META: called if MkObj must be destroyed and if the SELF is still alive → goal: destroy the SELF
55static void NS(Sq3StmtC_selfDelete) (MK_RT_ARGS MK_PTR self, MK_PTR const env) {
56 MK(AtomDeleteHard) (MK_RT_CALL OT_SELF);
57}
58// META: called to destroy link from SELF to META
59static void NS(Sq3StmtC_selfUnlink) (MK_RT_ARGS MK_PTR self, MK_PTR const env) {
60 MkObjectC_Obj *selfO = (MkObjectC_Obj*) self;
61 selfO->hdl = NULL;
62}
63
64// initialize the PY and MO class specific object
65#define ClassInit \
66 /* if not already done, initialize NEW META type */ \
67 if (Sq3StmtCTT == NULL) Sq3StmtCTT = Sq3StmtSTT; \
68 \
69 /* protect against double call */ \
70 if (Sq3StmtCTT->selfCreate == NS(Sq3StmtC_selfCreate)) return MK_OK; \
71 \
72 /* add "selfCreate" and "selfDelete" feature to the META-Class */ \
73 Sq3StmtCTT->selfCreate = NS(Sq3StmtC_selfCreate); \
74 Sq3StmtCTT->selfDelete = NS(Sq3StmtC_selfDelete); \
75 Sq3StmtCTT->selfUnlink = NS(Sq3StmtC_selfUnlink); \
76 \
77 if (!PyType_HasFeature(OT_CLASS,Py_TPFLAGS_READY)) { \
78 NS(Sq3StmtCR).tp_base = Sq3StmtC_base; \
79 OtErrorCheckLng (PyType_Ready(OT_CLASS)); \
80 } \
81 OtErrorCheckLng(PyModule_AddObjectRef(m, "Sq3StmtC", (PyObject *)OT_CLASS)); \
82 \
83 /* define the "NULL" object */ \
84 Sq3StmtC_MK_NULL = Py_NewRef(MK(AtomCreate) (MK_RT_CALL OT_CLASS, NULL /*obj*/));
85
86/* LABEL-END */
87
88#define META_CONTEXT_S MK_ERROR_DEFAULT
89
90// MARK_D
96
97// BEGIN-DOC - created by 'py_MqS.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
98
99// doc-key: Sq3StmtC,Sq3Stmt,sCo,func
100#define PrepareV2_doc "Sq3StmtC Sq3StmtC.PrepareV2(db:Sq3LiteC, zSql:string)"
101#define PrepareV3_doc "Sq3StmtC Sq3StmtC.PrepareV3(db:Sq3LiteC, zSql:string, ?prepFlags:Sq3PrepareEF=SQ3_PREPARE_NO?)"
102#define new_doc "Sq3StmtC Sq3StmtC.new(db:Sq3LiteC, zSql:string)"
103
104// doc-key: Sq3StmtC,Sq3Stmt,sc_,func
105#define GetNull_doc "Sq3StmtC Sq3StmtC.GetNull()"
106#define HandleResolve_doc "Sq3StmtC Sq3StmtC.HandleResolve(netHdl:MK_HDL)"
107#define Instances_doc "Sq3StmtC Sq3StmtC.Instances()"
108#define NextStmt_doc "Sq3StmtC Sq3StmtC.NextStmt(pDb:Sq3LiteC, ?pStmt:Sq3StmtC=None?)"
109
110// doc-key: Sq3StmtC,Sq3Stmt,oc_,func
111#define ColumnValue_doc "Sq3ValueC sq3stmt.ColumnValue(iCol:int32)"
112#define DbHandle_doc "Sq3LiteC sq3stmt.DbHandle()"
113#define Next_doc "Sq3StmtC stmt.Next()"
114#define Prev_doc "Sq3StmtC stmt.Prev()"
115
116// doc-key: Sq3StmtC,Sq3Stmt,om_,func
117#define BindBlob_doc "sq3stmt.BindBlob(pos:int32, blob:binary)"
118#define BindDouble_doc "sq3stmt.BindDouble(arg1:int32, arg2:double)"
119#define BindInt_doc "sq3stmt.BindInt(arg1:int32, arg2:int32)"
120#define BindInt64_doc "sq3stmt.BindInt64(arg1:int32, arg2:int64)"
121#define BindNull_doc "sq3stmt.BindNull(arg1:int32)"
122#define BindParameterCount_doc "sq3stmt.BindParameterCount()"
123#define BindParameterIndex_doc "sq3stmt.BindParameterIndex(zName:string)"
124#define BindParameterName_doc "string sq3stmt.BindParameterName(arg1:int32)"
125#define BindText_doc "sq3stmt.BindText(pos:int32, text:string)"
126#define BindValue_doc "sq3stmt.BindValue(arg1:int32, arg2:Sq3ValueC)"
127#define BindZeroblob_doc "sq3stmt.BindZeroblob(arg1:int32, n:int32)"
128#define BindZeroblob64_doc "sq3stmt.BindZeroblob64(arg1:int32, arg2:int64)"
129#define Busy_doc "sq3stmt.Busy()"
130#define ClearBindings_doc "sq3stmt.ClearBindings()"
131#define ColumnBlob_doc "binary sq3stmt.ColumnBlob(iCol:int32)"
132#define ColumnBytes_doc "int32 sq3stmt.ColumnBytes(iCol:int32)"
133#define ColumnCount_doc "int32 pStmt.ColumnCount()"
134#define ColumnDouble_doc "double sq3stmt.ColumnDouble(iCol:int32)"
135#define ColumnInt_doc "int32 sq3stmt.ColumnInt(iCol:int32)"
136#define ColumnInt64_doc "int64 sq3stmt.ColumnInt64(iCol:int32)"
137#define ColumnName_doc "string sq3stmt.ColumnName(N:int32)"
138#define ColumnText_doc "string sq3stmt.ColumnText(iCol:int32)"
139#define ColumnType_doc "Sq3TypeE sq3stmt.ColumnType(iCol:int32)"
140#define DataCount_doc "pStmt.DataCount()"
141#define ExpandedSql_doc "string pStmt.ExpandedSql()"
142#define Explain_doc "pStmt.Explain(eMode:int32)"
143#define Finalize_doc "pStmt.Finalize()"
144#define GetPzTail_doc "string sq3stmt.GetPzTail()"
145// skip class-overload: HandleGet → MkObjectHandleGet
146#define IsExplain_doc "pStmt.IsExplain()"
147// skip class-overload: Log → MkObjectLog
148#define Readonly_doc "pStmt.Readonly()"
149#define Reset_doc "pStmt.Reset()"
150#define Sql_doc "string pStmt.Sql()"
151#define Status_doc "sq3stmt.Status(op:Sq3StmtStatusE, resetFlg:bool)"
152
153// doc-key: Sq3StmtC,Sq3Stmt,omo,func
154#define Step_doc "Sq3ErrorE sq3stmt.Step()"
155
156// END-DOC - created by 'py_MqS.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
157
158// MARK_M
164
165// BEGIN-Sq3StmtC - created by 'py_MqC.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
166
170
171// doc-key: Sq3StmtC,Sq3StmtC-Bind,om_
172
174static OT_ProcRet NS(Sq3StmtC_BindBlob) (Sq3StmtC_ARGS) {
177 MK_I32 pos = 0;
179 MkBinaryR blob = {0};
182 MkErrorC_Check(hdl,Sq3StmtBindBlob (hdl, pos, blob));
184 goto end;
185 error:
187 end:
189}
190
192static OT_ProcRet NS(Sq3StmtC_BindDouble) (Sq3StmtC_ARGS) {
195 MK_I32 arg1 = 0;
197 MK_DBL arg2 = 0;
200 MkErrorC_Check(hdl,Sq3StmtBindDouble (hdl, arg1, arg2));
202 goto end;
203 error:
205 end:
207}
208
210static OT_ProcRet NS(Sq3StmtC_BindInt) (Sq3StmtC_ARGS) {
213 MK_I32 arg1 = 0;
215 MK_I32 arg2 = 0;
218 MkErrorC_Check(hdl,Sq3StmtBindInt (hdl, arg1, arg2));
220 goto end;
221 error:
223 end:
225}
226
228static OT_ProcRet NS(Sq3StmtC_BindInt64) (Sq3StmtC_ARGS) {
231 MK_I32 arg1 = 0;
233 MK_I64 arg2 = 0;
236 MkErrorC_Check(hdl,Sq3StmtBindInt64 (hdl, arg1, arg2));
238 goto end;
239 error:
241 end:
243}
244
246static OT_ProcRet NS(Sq3StmtC_BindNull) (Sq3StmtC_ARGS) {
249 MK_I32 arg1 = 0;
252 MkErrorC_Check(hdl,Sq3StmtBindNull (hdl, arg1));
254 goto end;
255 error:
257 end:
259}
260
262static OT_ProcRet NS(Sq3StmtC_BindParameterCount) (Sq3StmtC_ARGS) {
268 goto end;
269 error:
271 end:
273}
274
276static OT_ProcRet NS(Sq3StmtC_BindParameterIndex) (Sq3StmtC_ARGS) {
279 MK_STRN zName = 0;
284 goto end;
285 error:
287 end:
289}
290
292static OT_ProcRet NS(Sq3StmtC_BindParameterName) (Sq3StmtC_ARGS) {
295 MK_I32 arg1 = 0;
299 goto end;
300 error:
302 end:
304}
305
307static OT_ProcRet NS(Sq3StmtC_BindText) (Sq3StmtC_ARGS) {
310 MK_I32 pos = 0;
312 MkStringR text = {0};
315 MkErrorC_Check(hdl,Sq3StmtBindText (hdl, pos, text));
317 goto end;
318 error:
320 end:
322}
323
325static OT_ProcRet NS(Sq3StmtC_BindValue) (Sq3StmtC_ARGS) {
328 MK_I32 arg1 = 0;
330 SQ3_VALN arg2 = 0;
333 MkErrorC_Check(hdl,Sq3StmtBindValue (hdl, arg1, arg2));
335 goto end;
336 error:
338 end:
340}
341
343static OT_ProcRet NS(Sq3StmtC_BindZeroblob) (Sq3StmtC_ARGS) {
346 MK_I32 arg1 = 0;
348 MK_I32 n = 0;
351 MkErrorC_Check(hdl,Sq3StmtBindZeroblob (hdl, arg1, n));
353 goto end;
354 error:
356 end:
358}
359
361static OT_ProcRet NS(Sq3StmtC_BindZeroblob64) (Sq3StmtC_ARGS) {
364 MK_I32 arg1 = 0;
366 MK_I64 arg2 = 0;
369 MkErrorC_Check(hdl,Sq3StmtBindZeroblob64 (hdl, arg1, arg2));
371 goto end;
372 error:
374 end:
376}
377
379// Sq3StmtC_Bind_PY_API
380
384
385// doc-key: Sq3StmtC,Sq3StmtC-Class-Export,sc_
386
388static OT_ProcRet NS(Sq3StmtC_HandleResolve) (OtClass_ARGS) {
391 MK_HDL netHdl = 0;
394 SQ3_STMT retVal = Sq3StmtHandleResolve (netHdl);
395 OT_retObj_SET_STMT(retVal);
396 goto end;
397 error:
399 end:
401}
402
403// doc-key: Sq3StmtC,Sq3StmtC-Class-Export,om_
404
405// skip on class-overload: Sq3StmtHandleGet → MkObjectHandleGet
407static OT_ProcRet NS(Sq3StmtC_HandleGet) (Sq3StmtC_ARGS) {OT_ERROR_LNG_RETURN;}
408
410// Sq3StmtC_Class_PY_API
411
415
416// doc-key: Sq3StmtC,Sq3StmtC-Class-Introspection,oc_
417
419static OT_ProcRet NS(Sq3StmtC_Next) (Sq3StmtC_ARGS) {
423 SQ3_STMT retVal = Sq3StmtNext (hdl);
424 OT_retObj_SET_STMT(retVal);
425 goto end;
426 error:
428 end:
430}
431
433static OT_ProcRet NS(Sq3StmtC_Prev) (Sq3StmtC_ARGS) {
437 SQ3_STMT retVal = Sq3StmtPrev (hdl);
438 OT_retObj_SET_STMT(retVal);
439 goto end;
440 error:
442 end:
444}
445
446// doc-key: Sq3StmtC,Sq3StmtC-Class-Introspection,sc_
447
449static OT_ProcRet NS(Sq3StmtC_Instances) (OtClass_ARGS) {
453 SQ3_STMT retVal = Sq3StmtInstances ();
454 OT_retObj_SET_STMT(retVal);
455 goto end;
456 error:
458 end:
460}
461
463// Sq3StmtC_Class_PY_API
464
468
469// doc-key: Sq3StmtC,Sq3StmtC-Class-Misc,sc_
470
472static OT_ProcRet NS(Sq3StmtC_GetNull) (OtClass_ARGS) {
476 SQ3_STMT retVal = Sq3StmtGetNull ();
477 OT_retObj_SET_STMT(retVal);
478 goto end;
479 error:
481 end:
483}
484
486// Sq3StmtC_Class_PY_API
487
491
492// doc-key: Sq3StmtC,Sq3StmtC-Column,oc_
493
495static OT_ProcRet NS(Sq3StmtC_ColumnValue) (Sq3StmtC_ARGS) {
498 MK_I32 iCol = 0;
501 SQ3_VAL retVal = Sq3StmtColumnValue (hdl, iCol);
502 OT_retObj_SET_VAL(retVal);
503 goto end;
504 error:
506 end:
508}
509
510// doc-key: Sq3StmtC,Sq3StmtC-Column,om_
511
513static OT_ProcRet NS(Sq3StmtC_ColumnBlob) (Sq3StmtC_ARGS) {
516 MK_I32 iCol = 0;
519 MkBinaryR retVal = Sq3StmtColumnBlob (hdl, iCol);
521 goto end;
522 error:
524 end:
526}
527
529static OT_ProcRet NS(Sq3StmtC_ColumnBytes) (Sq3StmtC_ARGS) {
532 MK_I32 iCol = 0;
536 goto end;
537 error:
539 end:
541}
542
544static OT_ProcRet NS(Sq3StmtC_ColumnCount) (Sq3StmtC_ARGS) {
549 goto end;
550 error:
552 end:
554}
555
557static OT_ProcRet NS(Sq3StmtC_ColumnDouble) (Sq3StmtC_ARGS) {
560 MK_I32 iCol = 0;
564 goto end;
565 error:
567 end:
569}
570
572static OT_ProcRet NS(Sq3StmtC_ColumnInt) (Sq3StmtC_ARGS) {
575 MK_I32 iCol = 0;
579 goto end;
580 error:
582 end:
584}
585
587static OT_ProcRet NS(Sq3StmtC_ColumnInt64) (Sq3StmtC_ARGS) {
590 MK_I32 iCol = 0;
594 goto end;
595 error:
597 end:
599}
600
602static OT_ProcRet NS(Sq3StmtC_ColumnName) (Sq3StmtC_ARGS) {
605 MK_I32 N = 0;
609 goto end;
610 error:
612 end:
614}
615
617static OT_ProcRet NS(Sq3StmtC_ColumnText) (Sq3StmtC_ARGS) {
620 MK_I32 iCol = 0;
623 MkStringR retVal = Sq3StmtColumnText (hdl, iCol);
625 goto end;
626 error:
628 end:
630}
631
633static OT_ProcRet NS(Sq3StmtC_ColumnType) (Sq3StmtC_ARGS) {
636 MK_I32 iCol = 0;
640 goto end;
641 error:
643 end:
645}
646
648// Sq3StmtC_Column_PY_API
649
653
654// doc-key: Sq3StmtC,Sq3StmtC-Info,oc_
655
657static OT_ProcRet NS(Sq3StmtC_DbHandle) (Sq3StmtC_ARGS) {
661 SQ3_LITE retVal = Sq3StmtDbHandle (hdl);
662 OT_retObj_SET_LITE(retVal);
663 goto end;
664 error:
666 end:
668}
669
670// doc-key: Sq3StmtC,Sq3StmtC-Info,om_
671
673static OT_ProcRet NS(Sq3StmtC_Busy) (Sq3StmtC_ARGS) {
677 MkErrorC_Check(hdl,Sq3StmtBusy (hdl));
679 goto end;
680 error:
682 end:
684}
685
687static OT_ProcRet NS(Sq3StmtC_DataCount) (Sq3StmtC_ARGS) {
693 goto end;
694 error:
696 end:
698}
699
701static OT_ProcRet NS(Sq3StmtC_IsExplain) (Sq3StmtC_ARGS) {
707 goto end;
708 error:
710 end:
712}
713
714// skip on class-overload: Sq3StmtLog → MkObjectLog
717
719static OT_ProcRet NS(Sq3StmtC_Readonly) (Sq3StmtC_ARGS) {
725 goto end;
726 error:
728 end:
730}
731
733static OT_ProcRet NS(Sq3StmtC_Status) (Sq3StmtC_ARGS) {
736 enum Sq3StmtStatusE op = 0;
738 MK_BOOL resetFlg = 0;
741 MkErrorC_Check(hdl,Sq3StmtStatus (hdl, op, resetFlg));
743 goto end;
744 error:
746 end:
748}
749
751// Sq3StmtC_Info_PY_API
752
756
757// doc-key: Sq3StmtC,Sq3StmtC-Misc,sc_
758
760static OT_ProcRet NS(Sq3StmtC_NextStmt) (OtClass_ARGS) {
763 SQ3_LITE pDb = 0;
765 SQ3_STMT pStmt = NULL;
768 SQ3_STMT retVal = Sq3StmtNextStmt (pDb, pStmt);
769 OT_retObj_SET_STMT(retVal);
770 goto end;
771 error:
773 end:
775}
776
777// doc-key: Sq3StmtC,Sq3StmtC-Misc,om_
778
780static OT_ProcRet NS(Sq3StmtC_ClearBindings) (Sq3StmtC_ARGS) {
786 goto end;
787 error:
789 end:
791}
792
794static OT_ProcRet NS(Sq3StmtC_Explain) (Sq3StmtC_ARGS) {
797 MK_I32 eMode = 0;
800 MkErrorC_Check(hdl,Sq3StmtExplain (hdl, eMode));
802 goto end;
803 error:
805 end:
807}
808
810static OT_ProcRet NS(Sq3StmtC_Reset) (Sq3StmtC_ARGS) {
814 MkErrorC_Check(hdl,Sq3StmtReset (hdl));
816 goto end;
817 error:
819 end:
821}
822
823// doc-key: Sq3StmtC,Sq3StmtC-Misc,omo
824
826static OT_ProcRet NS(Sq3StmtC_Step) (Sq3StmtC_ARGS) {
830 enum Sq3ErrorE retCode;
831 MkErrorC_Check(hdl,Sq3StmtStep (hdl, &retCode));
832 OT_retObj_SET(OT_NEW_Sq3_enum_OBJ(ErrorE,retCode));
833 goto end;
834 error:
836 end:
838}
839
841// Sq3StmtC_Misc_PY_API
842
846
847// doc-key: Sq3StmtC,Sq3StmtC-Sql,om_
848
850static OT_ProcRet NS(Sq3StmtC_ExpandedSql) (Sq3StmtC_ARGS) {
855 goto end;
856 error:
858 end:
860}
861
863static OT_ProcRet NS(Sq3StmtC_GetPzTail) (Sq3StmtC_ARGS) {
868 goto end;
869 error:
871 end:
873}
874
876static OT_ProcRet NS(Sq3StmtC_Sql) (Sq3StmtC_ARGS) {
881 goto end;
882 error:
884 end:
886}
887
889// Sq3StmtC_Sql_PY_API
890
894
895// doc-key: Sq3StmtC,Sq3StmtC-TOR,sCo
896
898static OT_ProcRet NS(Sq3StmtC_PrepareV2) (OtClass_ARGS) {
901 SQ3_LITE db = 0;
903 MkStringR zSql = {0};
906 SQ3_STMT ppStmt;
907 MkErrorC_Check(db,Sq3StmtPrepareV2 (db, zSql, &ppStmt));
908 OT_CONSTRUCTOR_POST(ppStmt)
909 OT_retObj_SET_STMT(ppStmt);
910 goto end;
911 error:
913 end:
915}
916
918static OT_ProcRet NS(Sq3StmtC_PrepareV3) (OtClass_ARGS) {
921 SQ3_LITE db = 0;
923 MkStringR zSql = {0};
925 enum Sq3PrepareEF prepFlags = SQ3_PREPARE_NO;
928 SQ3_STMT ppStmt;
929 MkErrorC_Check(db,Sq3StmtPrepareV3 (db, zSql, prepFlags, &ppStmt));
930 OT_retObj_SET_STMT(ppStmt);
931 goto end;
932 error:
934 end:
936}
937
939static OT_ProcRet NS(Sq3StmtC_new) (CONSTR_ARGS) {
942 SQ3_LITE db = 0;
944 MkStringR zSql = {0};
946 SQ3_STMT ppStmt;
947 MkErrorC_Check(db,Sq3StmtPrepareV2 (db, zSql, &ppStmt));
948 OT_CONSTRUCTOR_POST(ppStmt)
949 OT_retObj_CONSTR(ppStmt);
950 goto end;
951 error:
953 end:
955}
956
957// doc-key: Sq3StmtC,Sq3StmtC-TOR,om_
958
960static OT_ProcRet NS(Sq3StmtC_Finalize) (Sq3StmtC_ARGS) {
966 goto end;
967 error:
969 end:
971}
972
974// Sq3StmtC_TOR_PY_API
975
976// END-Sq3StmtC - created by 'py_MqC.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
977
978// MARK_T
984
985static PyMethodDef Sq3StmtC_Methods[] = {
986
987 // BEGIN-CLASS - created by 'py_MqS.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
988
989 // doc-key: Sq3StmtC,Sq3Stmt,sCo
990 { "PrepareV2" , (PyCFunction) NS(Sq3StmtC_PrepareV2) , METH_VARARGS|METH_CLASS , PrepareV2_doc },
991 { "PrepareV3" , (PyCFunction) NS(Sq3StmtC_PrepareV3) , METH_VARARGS|METH_CLASS , PrepareV3_doc },
992
993 // doc-key: Sq3StmtC,Sq3Stmt,sc_
994 { "GetNull" , (PyCFunction) NS(Sq3StmtC_GetNull) , METH_NOARGS|METH_CLASS , GetNull_doc },
995 { "HandleResolve" , (PyCFunction) NS(Sq3StmtC_HandleResolve) , METH_O|METH_CLASS , HandleResolve_doc },
996 { "Instances" , (PyCFunction) NS(Sq3StmtC_Instances) , METH_NOARGS|METH_CLASS , Instances_doc },
997 { "NextStmt" , (PyCFunction) NS(Sq3StmtC_NextStmt) , METH_VARARGS|METH_CLASS , NextStmt_doc },
998
999 // END-CLASS - created by 'py_MqS.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
1000
1001 // BEGIN-OBJ - created by 'py_MqS.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
1002
1003 // doc-key: Sq3StmtC,Sq3Stmt,oc_
1004 { "ColumnValue" , (PyCFunction) NS(Sq3StmtC_ColumnValue) , METH_O , ColumnValue_doc },
1005 { "DbHandle" , (PyCFunction) NS(Sq3StmtC_DbHandle) , METH_NOARGS , DbHandle_doc },
1006 { "Next" , (PyCFunction) NS(Sq3StmtC_Next) , METH_NOARGS , Next_doc },
1007 { "Prev" , (PyCFunction) NS(Sq3StmtC_Prev) , METH_NOARGS , Prev_doc },
1008
1009 // doc-key: Sq3StmtC,Sq3Stmt,om_
1010 { "BindBlob" , (PyCFunction) NS(Sq3StmtC_BindBlob) , METH_VARARGS , BindBlob_doc },
1011 { "BindDouble" , (PyCFunction) NS(Sq3StmtC_BindDouble) , METH_VARARGS , BindDouble_doc },
1012 { "BindInt" , (PyCFunction) NS(Sq3StmtC_BindInt) , METH_VARARGS , BindInt_doc },
1013 { "BindInt64" , (PyCFunction) NS(Sq3StmtC_BindInt64) , METH_VARARGS , BindInt64_doc },
1014 { "BindNull" , (PyCFunction) NS(Sq3StmtC_BindNull) , METH_O , BindNull_doc },
1015 { "BindParameterCount" , (PyCFunction) NS(Sq3StmtC_BindParameterCount) , METH_NOARGS , BindParameterCount_doc },
1016 { "BindParameterIndex" , (PyCFunction) NS(Sq3StmtC_BindParameterIndex) , METH_O , BindParameterIndex_doc },
1017 { "BindParameterName" , (PyCFunction) NS(Sq3StmtC_BindParameterName) , METH_O , BindParameterName_doc },
1018 { "BindText" , (PyCFunction) NS(Sq3StmtC_BindText) , METH_VARARGS , BindText_doc },
1019 { "BindValue" , (PyCFunction) NS(Sq3StmtC_BindValue) , METH_VARARGS , BindValue_doc },
1020 { "BindZeroblob" , (PyCFunction) NS(Sq3StmtC_BindZeroblob) , METH_VARARGS , BindZeroblob_doc },
1021 { "BindZeroblob64" , (PyCFunction) NS(Sq3StmtC_BindZeroblob64) , METH_VARARGS , BindZeroblob64_doc },
1022 { "Busy" , (PyCFunction) NS(Sq3StmtC_Busy) , METH_NOARGS , Busy_doc },
1023 { "ClearBindings" , (PyCFunction) NS(Sq3StmtC_ClearBindings) , METH_NOARGS , ClearBindings_doc },
1024 { "ColumnBlob" , (PyCFunction) NS(Sq3StmtC_ColumnBlob) , METH_O , ColumnBlob_doc },
1025 { "ColumnBytes" , (PyCFunction) NS(Sq3StmtC_ColumnBytes) , METH_O , ColumnBytes_doc },
1026 { "ColumnCount" , (PyCFunction) NS(Sq3StmtC_ColumnCount) , METH_NOARGS , ColumnCount_doc },
1027 { "ColumnDouble" , (PyCFunction) NS(Sq3StmtC_ColumnDouble) , METH_O , ColumnDouble_doc },
1028 { "ColumnInt" , (PyCFunction) NS(Sq3StmtC_ColumnInt) , METH_O , ColumnInt_doc },
1029 { "ColumnInt64" , (PyCFunction) NS(Sq3StmtC_ColumnInt64) , METH_O , ColumnInt64_doc },
1030 { "ColumnName" , (PyCFunction) NS(Sq3StmtC_ColumnName) , METH_O , ColumnName_doc },
1031 { "ColumnText" , (PyCFunction) NS(Sq3StmtC_ColumnText) , METH_O , ColumnText_doc },
1032 { "ColumnType" , (PyCFunction) NS(Sq3StmtC_ColumnType) , METH_O , ColumnType_doc },
1033 { "DataCount" , (PyCFunction) NS(Sq3StmtC_DataCount) , METH_NOARGS , DataCount_doc },
1034 { "ExpandedSql" , (PyCFunction) NS(Sq3StmtC_ExpandedSql) , METH_NOARGS , ExpandedSql_doc },
1035 { "Explain" , (PyCFunction) NS(Sq3StmtC_Explain) , METH_O , Explain_doc },
1036 { "Finalize" , (PyCFunction) NS(Sq3StmtC_Finalize) , METH_NOARGS , Finalize_doc },
1037 { "GetPzTail" , (PyCFunction) NS(Sq3StmtC_GetPzTail) , METH_NOARGS , GetPzTail_doc },
1038 // skip class-overload: Sq3StmtHandleGet → HandleGet, NS(Sq3StmtC_HandleGet)
1039 { "IsExplain" , (PyCFunction) NS(Sq3StmtC_IsExplain) , METH_NOARGS , IsExplain_doc },
1040 // skip class-overload: Sq3StmtLog → Log, NS(Sq3StmtC_Log)
1041 { "Readonly" , (PyCFunction) NS(Sq3StmtC_Readonly) , METH_NOARGS , Readonly_doc },
1042 { "Reset" , (PyCFunction) NS(Sq3StmtC_Reset) , METH_NOARGS , Reset_doc },
1043 { "Sql" , (PyCFunction) NS(Sq3StmtC_Sql) , METH_NOARGS , Sql_doc },
1044 { "Status" , (PyCFunction) NS(Sq3StmtC_Status) , METH_VARARGS , Status_doc },
1045
1046 // doc-key: Sq3StmtC,Sq3Stmt,omo
1047 { "Step" , (PyCFunction) NS(Sq3StmtC_Step) , METH_NOARGS , Step_doc },
1048
1049 // END-OBJ - created by 'py_MqS.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
1050
1051 {NULL, NULL, 0, NULL} /* Sentinel */
1052};
1053
1059
1061 PyVarObject_HEAD_INIT(NULL, 0)
1062 .tp_name = "pymsgque.Sq3StmtC",
1063 .tp_doc = "PyMsgque Sq3StmtC Type",
1064 .tp_basicsize = sizeof(Sq3StmtC_Obj),
1065 .tp_itemsize = 0,
1066 .tp_new = (newfunc) NS(Sq3StmtC_new),
1067 .tp_flags = Py_TPFLAGS_DEFAULT,
1068 .tp_methods = Sq3StmtC_Methods,
1069 .tp_base = NULL
1070 };
1071
1072int NS(pSq3StmtC_Init) ( MK_RT_ARGS PyObject* m)
1073{
1074 ClassInit
1075
1076 return 0;
1077error:
1078 return -1;
1079}
1080
1081// vim: nowrap
#define OT_CHECK_bool(val)
#define OT_SELF
#define MK(n)
#define OT_SETUP_VARARGS(min, max, d)
#define OT_SETUP_NOARG(d)
#define OT_SETUP_ONEARG(d)
#define OT_ERROR_LNG_RETURN
#define OT_CHECK_NI4(val)
#define OT_CHECK_NI8(val)
#define OT_retObj_SET_Error
#define OT_CHECK_NF8(val)
#define OT_CONSTRUCTOR_POST(x)
#define OT_retObj_SET_DBL(nat)
#define OT_retObj_SET_I64(nat)
#define OT_CHECK_REQUIRED(val)
#define OT_retObj_SET_None
#define OT_retObj_SET_I32(nat)
PyTypeObject * OT_CLS_T
#define OT_GET__ME_REF_MkBinaryR(b)
#define OT_SETUP_CONSTRUCTOR_ARGS(...)
#define OT_retObj_RETURN
PyObject * OT_OBJ_T
#define OT_CHECK__ME_REF_MkStringR(val)
#define OT_CHECK__ME_REF_MkBinaryR(val)
#define OT_retObj_SET_STR(nat)
#define OT_CLASS_TYPE_REF
#define OT_CHECK_OPTIONAL(val)
#define OT_retObj_SET(val)
#define OT_CHECK_NOARGS
#define MkErrorC_Check(mng, PROC)
#define OT_ProcRet
#define OT_GET__ME_REF_MkStringR(b)
#define CONSTR_ARGS
#define OtClass_ARGS
#define OT_CHECK_STRN(val)
tag: nhi1-release-250425
#define Sq3StmtC_ARGS
#define OT_NEW_Sq3_enum_OBJ(typ, val)
#define OT_retObj_SET_LITE(nat)
#define NS(n)
#define OT_retObj_SET_VAL(nat)
#define OT_retObj_SET_STMT(nat)
struct Sq3StmtC_Obj Sq3StmtC_Obj
#define Instances_doc
#define DataCount_doc
#define ColumnType_doc
#define OT_SETUP_hdl_static_constr
Definition Sq3StmtC_py.c:31
#define DbHandle_doc
#define BindValue_doc
#define Reset_doc
#define Finalize_doc
#define ColumnDouble_doc
static PyMethodDef Sq3StmtC_Methods[]
#define OT_SETUP_hdl
Definition Sq3StmtC_py.c:23
#define IsExplain_doc
#define ClearBindings_doc
#define ColumnName_doc
#define OT_retObj_CONSTR(mng)
Definition Sq3StmtC_py.c:21
#define Step_doc
#define ColumnText_doc
#define BindParameterCount_doc
#define ColumnBytes_doc
#define GetPzTail_doc
#define OT_SETUP_hdl_destr
Definition Sq3StmtC_py.c:27
#define BindInt_doc
#define GetNull_doc
#define ColumnInt_doc
#define Next_doc
#define ColumnCount_doc
#define BindZeroblob64_doc
#define HandleResolve_doc
#define Prev_doc
#define BindParameterName_doc
#define OT_CLASS
Definition Sq3StmtC_py.c:16
#define BindNull_doc
#define OT_SETUP_hdl_static
Definition Sq3StmtC_py.c:28
#define OT_SETUP_hdl_constr
Definition Sq3StmtC_py.c:25
#define PrepareV2_doc
#define Status_doc
#define ColumnValue_doc
#define BindParameterIndex_doc
#define Explain_doc
#define new_doc
#define NextStmt_doc
#define PrepareV3_doc
#define Sql_doc
#define BindZeroblob_doc
#define BindInt64_doc
#define BindText_doc
#define ColumnInt64_doc
#define ExpandedSql_doc
#define ClassInit
Definition Sq3StmtC_py.c:65
#define Readonly_doc
#define Busy_doc
#define ColumnBlob_doc
#define BindDouble_doc
#define BindBlob_doc
#define mk_inline
#define MK_NULL_NO
#define MK_NULL_YES
#define MK_UNUSED
#define MK_DEPRECATED
MK_PTRB * MK_PTR
const MK_STRB * MK_STRN
signed long long MK_I64
bool MK_BOOL
double MK_DBL
int32_t MK_HDL
signed int MK_I32
#define MK_RT_CALL
#define MK_RT_ARGS
Sq3StmtStatusE
Status Parameters for prepared statements.
Sq3PrepareEF
Prepare Flags.
Sq3ErrorE
Result Codes.
@ SQ3_PREPARE_NO
static enum MkErrorE Sq3StmtBindDouble(SQ3_STMT sq3stmt, MK_I32 arg1, MK_DBL arg2)
Binding Values To Prepared Statements …
static enum MkErrorE Sq3StmtBindNull(SQ3_STMT sq3stmt, MK_I32 arg1)
Binding Values To Prepared Statements …
static MK_STRN Sq3StmtBindParameterName(SQ3_STMT sq3stmt, MK_I32 arg1)
Name Of A Host Parameter …
#define Sq3StmtBindText(...)
static enum MkErrorE Sq3StmtBindZeroblob64(SQ3_STMT sq3stmt, MK_I32 arg1, MK_I64 arg2)
Binding Values To Prepared Statements …
#define Sq3StmtBindBlob(...)
static enum MkErrorE Sq3StmtBindParameterCount(SQ3_STMT sq3stmt)
Number Of SQL Parameters …
static enum MkErrorE Sq3StmtBindInt64(SQ3_STMT sq3stmt, MK_I32 arg1, MK_I64 arg2)
Binding Values To Prepared Statements …
static enum MkErrorE Sq3StmtBindValue(SQ3_STMT sq3stmt, MK_I32 arg1, SQ3_VALN arg2)
Binding Values To Prepared Statements …
static enum MkErrorE Sq3StmtBindZeroblob(SQ3_STMT sq3stmt, MK_I32 arg1, MK_I32 n)
Binding Values To Prepared Statements …
static enum MkErrorE Sq3StmtBindParameterIndex(SQ3_STMT sq3stmt, MK_STRN zName)
Index Of A Parameter With A Given Name …
static enum MkErrorE Sq3StmtBindInt(SQ3_STMT sq3stmt, MK_I32 arg1, MK_I32 arg2)
Binding Values To Prepared Statements …
#define Sq3StmtHandleResolve(...)
static SQ3_STMT Sq3StmtPrev(SQ3_STMT const stmt)
get previous instance from linked-list of Sq3StmtS type
static SQ3_STMT Sq3StmtNext(SQ3_STMT const stmt)
get next instance from linked-list of Sq3StmtS type
#define Sq3StmtInstances()
static SQ3_STMT Sq3StmtGetNull(void)
Null-Slot - return a Sq3StmtC typed NULL instance …
#define Sq3StmtC_X2obj(x)
static enum Sq3TypeE Sq3StmtColumnType(SQ3_STMT sq3stmt, MK_I32 iCol)
Result Values From A Query …
static MkBinaryR Sq3StmtColumnBlob(SQ3_STMT sq3stmt, MK_I32 iCol)
Result a MkBinaryR Value From A Query.
static MK_DBL Sq3StmtColumnDouble(SQ3_STMT sq3stmt, MK_I32 iCol)
Result Values From A Query …
static MK_I64 Sq3StmtColumnInt64(SQ3_STMT sq3stmt, MK_I32 iCol)
Result Values From A Query …
static MkStringR Sq3StmtColumnText(SQ3_STMT sq3stmt, MK_I32 iCol)
Result a MkStringR Value From A Query.
static MK_I32 Sq3StmtColumnCount(SQ3_STMT pStmt)
Number Of Columns In A Result Set …
static MK_STRN Sq3StmtColumnName(SQ3_STMT sq3stmt, MK_I32 N)
Column Names In A Result Set …
static SQ3_VAL Sq3StmtColumnValue(SQ3_STMT sq3stmt, MK_I32 iCol)
Result Values From A Query …
static MK_I32 Sq3StmtColumnInt(SQ3_STMT sq3stmt, MK_I32 iCol)
Result Values From A Query …
static MK_I32 Sq3StmtColumnBytes(SQ3_STMT sq3stmt, MK_I32 iCol)
Result Values From A Query …
static enum MkErrorE Sq3StmtStatus(SQ3_STMT sq3stmt, enum Sq3StmtStatusE op, MK_BOOL resetFlg)
Prepared Statement Status …
static SQ3_LITE Sq3StmtDbHandle(SQ3_STMT sq3stmt)
Find The Database Handle Of A Prepared Statement …
static enum MkErrorE Sq3StmtDataCount(SQ3_STMT pStmt)
Number of columns in a result set …
static enum MkErrorE Sq3StmtIsExplain(SQ3_STMT pStmt)
Query The EXPLAIN Setting For A Prepared Statement …
static enum MkErrorE Sq3StmtReadonly(SQ3_STMT pStmt)
Determine If An SQL Statement Writes The Database …
static enum MkErrorE Sq3StmtBusy(SQ3_STMT sq3stmt)
Determine If A Prepared Statement Has Been Reset …
static enum MkErrorE Sq3StmtExplain(SQ3_STMT pStmt, MK_I32 eMode)
Change The EXPLAIN Setting For A Prepared Statement …
static enum MkErrorE Sq3StmtClearBindings(SQ3_STMT sq3stmt)
Reset All Bindings On A Prepared Statement …
static SQ3_STMT Sq3StmtNextStmt(SQ3_LITE pDb, SQ3_STMT pStmt)
Find the next prepared statement …
static enum MkErrorE Sq3StmtStep(SQ3_STMT sq3stmt, enum Sq3ErrorE *retCode)
Evaluate An SQL Statement …
static enum MkErrorE Sq3StmtReset(SQ3_STMT pStmt)
Reset A Prepared Statement Object …
static MK_STR Sq3StmtExpandedSql(SQ3_STMT pStmt)
Retrieving Statement SQL …
static MK_STRN Sq3StmtGetPzTail(SQ3_STMT sq3stmt)
return the non compiled sql-statement from Sq3StmtPrepareV2 and Sq3StmtPrepareV3 …
static MK_STRN Sq3StmtSql(SQ3_STMT pStmt)
Retrieving Statement SQL …
static enum MkErrorE Sq3StmtPrepareV2(SQ3_LITE db, MkStringR zSql, SQ3_STMT *ppStmt)
Compiling An SQL Statement …
static enum MkErrorE Sq3StmtFinalize(SQ3_STMT pStmt)
Destroy A Prepared Statement Object …
static enum MkErrorE Sq3StmtPrepareV3(SQ3_LITE db, MkStringR zSql, Sq3PrepareEF prepFlags, SQ3_STMT *ppStmt)
Compiling An SQL Statement …
#define OT_CHECK_NIH(val)
#define OT_CHECK_ENUM(ename, val)
#define OT_CHECK_VALN(val, nullB)
#define OT_CHECK_LITE(val, nullB)
#define OT_CHECK_STMT(val, nullB)
PyObject_HEAD MK_OBJ hdl
Struct to represent the data of the Sq3LiteC …
Struct to represent the data of the Sq3StmtC …
Struct to represent the data of the Sq3ValueC …