theSq3Lite 10.0
Loading...
Searching...
No Matches
Sq3Call_py.c File Reference

tag: nhi1-release-250425 More...

#include "LibSq3Lite_private_py.h"
#include "misc_check_py.h"
+ Include dependency graph for Sq3Call_py.c:

Go to the source code of this file.

Functions

Sq3Fupu_Sq3LiteExec_callback_call_ret pysq3lite_LiteExecCall (Sq3Fupu_Sq3LiteExec_callback_call_args)
 
Sq3LiteExecV2CB_ret pysq3lite_LiteExecV2Call (Sq3LiteExecV2CB_args)
 

Detailed Description

tag: nhi1-release-250425

Definition in file Sq3Call_py.c.

Function Documentation

◆ pysq3lite_LiteExecCall()

Definition at line 28 of file Sq3Call_py.c.

29{
31
32 // 1. setup environment
33 if (_Py_IsFinalizing()) return 1;
35
36 MkCallS *cbS = callV1;
37 MkRtSetup_RT(cbS->mkrt);
38
39 OT_OBJ_T resultO = NULL;
40 OT_OBJ_T valsO = PyList_New(num);
41 OT_OBJ_T colsO = PyList_New(num);
42 for (int i=0; i<num; i++) {
43 check_LNG(PyList_SetItem(valsO,i,STRN2VAL(vals[i]))) goto error_lng;
44 }
45 for (int i=0; i<num; i++) {
46 check_LNG(PyList_SetItem(colsO,i,STRN2VAL(cols[i]))) goto error_lng;
47 }
48
49 PyErr_Clear();
50
51 // call the function
52 resultO = PyObject_CallFunctionObjArgs(cbS->callable, valsO, colsO, NULL);
53
54 if (resultO == NULL) {
55 goto error_lng;
56 }
57
58end:
59 Py_CLEAR(valsO);
60 Py_CLEAR(colsO);
61 Py_CLEAR(resultO);
62 return ret;
63error_lng:
65error_mq: MK_UNUSED
67error_end: MK_UNUSED
68 ret=1;
69 goto end;
70}
#define OT_ERROR_LNG_2_META(m)
PyObject * OT_OBJ_T
#define check_LNG(PROC)
#define STRN2VAL(nat)
#define MkErrorStack_0E()
#define MK_UNUSED
#define MkRtSetup_RT(r)
#define Sq3Fupu_Sq3LiteExec_callback_call_check
#define Sq3Fupu_Sq3LiteExec_callback_call_ret
OT_OBJ_T callable

◆ pysq3lite_LiteExecV2Call()

Sq3LiteExecV2CB_ret pysq3lite_LiteExecV2Call ( Sq3LiteExecV2CB_args )

Definition at line 88 of file Sq3Call_py.c.

89{
91
92 // 1. setup environment
93 if (_Py_IsFinalizing()) return MK_ERROR;
94 MkCallS *cbS = callV2;
95
96 OT_OBJ_T resultO = NULL;
97 OT_OBJ_T valsO = OT_TMP_BFL_OBJ(vals);
98 OT_OBJ_T colsO = OT_TMP_BFL_OBJ(cols);
99
100 PyErr_Clear();
101
102 // call the function
103 resultO = PyObject_CallFunctionObjArgs(cbS->callable, valsO, colsO, NULL);
104
105 if (resultO == NULL) {
107 }
108
109 Py_CLEAR(valsO);
110 Py_CLEAR(colsO);
111 Py_CLEAR(resultO);
112 return MkErrorStack_0E_Check();
113}
#define OT_TMP_BFL_OBJ(val)
#define MkErrorStack_0E_Check()
MK_ERROR
#define Sq3Fupu_Sq3LiteExecV2CB_callback_call_check