⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 odbc.py.c

📁 这个是内存数据库的客户端
💻 C
📖 第 1 页 / 共 5 页
字号:
/*************************************************************************//* The static type info list */static swig_type_info *swig_type_list = 0;static swig_type_info **swig_type_list_handle = &swig_type_list;  /* Register a type mapping with the type-checking */static swig_type_info *SWIG_TypeRegister(swig_type_info *ti) {  return SWIG_TypeRegisterTL(swig_type_list_handle, ti);}/* Search for a swig_type_info structure */static swig_type_info *SWIG_TypeQuery(const char *name) {  return SWIG_TypeQueryTL(*swig_type_list_handle, name);}/* Set the clientdata field for a type */static voidSWIG_TypeClientData(swig_type_info *ti, void *clientdata) {  SWIG_TypeClientDataTL(*swig_type_list_handle, ti, clientdata);}/* This function will propagate the clientdata field of type to* any new swig_type_info structures that have been added into the list* of equivalent types.  It is like calling* SWIG_TypeClientData(type, clientdata) a second time.*/static voidSWIG_PropagateClientData(swig_type_info *type) {  SWIG_PropagateClientDataTL(*swig_type_list_handle, type);}#ifdef __cplusplus}#endif/* ----------------------------------------------------------------------------- * SWIG API. Portion that goes into the runtime * ----------------------------------------------------------------------------- */#ifdef __cplusplusextern "C" {#endif/* ----------------------------------------------------------------------------- * for internal method declarations * ----------------------------------------------------------------------------- */#ifndef SWIGINTERN#define SWIGINTERN static #endif#ifndef SWIGINTERNSHORT#ifdef __cplusplus#define SWIGINTERNSHORT static inline #else /* C case */#define SWIGINTERNSHORT static #endif /* __cplusplus */#endif/*  Exception handling in wrappers*/#define SWIG_fail                goto fail#define SWIG_arg_fail(arg)       SWIG_Python_ArgFail(arg)#define SWIG_append_errmsg(msg)   SWIG_Python_AddErrMesg(msg,0)#define SWIG_preppend_errmsg(msg) SWIG_Python_AddErrMesg(msg,1)#define SWIG_type_error(type,obj) SWIG_Python_TypeError(type,obj)#define SWIG_null_ref(type)       SWIG_Python_NullRef(type)/*  Contract support*/#define SWIG_contract_assert(expr, msg) \ if (!(expr)) { PyErr_SetString(PyExc_RuntimeError, (char *) msg ); goto fail; } else/* ----------------------------------------------------------------------------- * Constant declarations * ----------------------------------------------------------------------------- *//* Constant Types */#define SWIG_PY_INT     1#define SWIG_PY_FLOAT   2#define SWIG_PY_STRING  3#define SWIG_PY_POINTER 4#define SWIG_PY_BINARY  5/* Constant information structure */typedef struct swig_const_info {    int type;    char *name;    long lvalue;    double dvalue;    void   *pvalue;    swig_type_info **ptype;} swig_const_info;/* ----------------------------------------------------------------------------- * Alloc. memory flags * ----------------------------------------------------------------------------- */#define SWIG_OLDOBJ  1#define SWIG_NEWOBJ  SWIG_OLDOBJ + 1#define SWIG_PYSTR   SWIG_NEWOBJ + 1#ifdef __cplusplus}#endif/*********************************************************************** * pyrun.swg * *     This file contains the runtime support for Python modules *     and includes code for managing global variables and pointer *     type checking. * * Author : David Beazley (beazley@cs.uchicago.edu) ************************************************************************//* Common SWIG API */#define SWIG_ConvertPtr(obj, pp, type, flags)    SWIG_Python_ConvertPtr(obj, pp, type, flags)#define SWIG_NewPointerObj(p, type, flags)       SWIG_Python_NewPointerObj(p, type, flags)#define SWIG_MustGetPtr(p, type, argnum, flags)  SWIG_Python_MustGetPtr(p, type, argnum, flags) /* Python-specific SWIG API */#define SWIG_ConvertPacked(obj, ptr, sz, ty, flags)   SWIG_Python_ConvertPacked(obj, ptr, sz, ty, flags)#define SWIG_NewPackedObj(ptr, sz, type)              SWIG_Python_NewPackedObj(ptr, sz, type)/* ----------------------------------------------------------------------------- * Pointer declarations * ----------------------------------------------------------------------------- *//*  Use SWIG_NO_COBJECT_TYPES to force the use of strings to represent  C/C++ pointers in the python side. Very useful for debugging, but  not always safe.*/#if !defined(SWIG_NO_COBJECT_TYPES) && !defined(SWIG_COBJECT_TYPES)#  define SWIG_COBJECT_TYPES#endif/* Flags for pointer conversion */#define SWIG_POINTER_EXCEPTION     0x1#define SWIG_POINTER_DISOWN        0x2#ifdef __cplusplusextern "C" {#endif/* ----------------------------------------------------------------------------- * Create a new pointer string  * ----------------------------------------------------------------------------- */#ifndef SWIG_BUFFER_SIZE#define SWIG_BUFFER_SIZE 1024#endif#if defined(SWIG_COBJECT_TYPES)#if !defined(SWIG_COBJECT_PYTHON)/* ----------------------------------------------------------------------------- * Implements a simple Swig Object type, and use it instead of PyCObject * ----------------------------------------------------------------------------- */typedef struct {  PyObject_HEAD  void *ptr;  const char *desc;} PySwigObject;/* Declarations for objects of type PySwigObject */SWIGRUNTIME intPySwigObject_print(PySwigObject *v, FILE *fp, int flags){  char result[SWIG_BUFFER_SIZE];  if (SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result))) {    fputs("<Swig Object at ", fp); fputs(result, fp); fputs(">", fp);    return 0;   } else {    return 1;   }}  SWIGRUNTIME PyObject *PySwigObject_repr(PySwigObject *v){  char result[SWIG_BUFFER_SIZE];  return SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result)) ?    PyString_FromFormat("<Swig Object at %s>", result) : 0;}SWIGRUNTIME PyObject *PySwigObject_str(PySwigObject *v){  char result[SWIG_BUFFER_SIZE];  return SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result)) ?    PyString_FromString(result) : 0;}SWIGRUNTIME PyObject *PySwigObject_long(PySwigObject *v){  return PyLong_FromUnsignedLong((unsigned long) v->ptr);}SWIGRUNTIME PyObject *PySwigObject_oct(PySwigObject *v){  char buf[100];  unsigned long x = (unsigned long)v->ptr;  if (x == 0)    strcpy(buf, "0");  else    PyOS_snprintf(buf, sizeof(buf), "0%lo", x);  return PyString_FromString(buf);}SWIGRUNTIME PyObject *PySwigObject_hex(PySwigObject *v){  char buf[100];  PyOS_snprintf(buf, sizeof(buf), "0x%lx", (unsigned long)v->ptr);  return PyString_FromString(buf);}SWIGRUNTIME intPySwigObject_compare(PySwigObject *v, PySwigObject *w){  int c = strcmp(v->desc, w->desc);  if (c) {    return c;  } else {    void *i = v->ptr;    void *j = w->ptr;    return (i < j) ? -1 : (i > j) ? 1 : 0;  }}SWIGRUNTIME voidPySwigObject_dealloc(PySwigObject *self){  PyObject_DEL(self);}SWIGRUNTIME PyTypeObject*PySwigObject_GetType() {  static char PySwigObject_Type__doc__[] =     "Swig object carries a C/C++ instance pointer";    static PyNumberMethods PySwigObject_as_number = {    (binaryfunc)0, /*nb_add*/    (binaryfunc)0, /*nb_subtract*/    (binaryfunc)0, /*nb_multiply*/    (binaryfunc)0, /*nb_divide*/    (binaryfunc)0, /*nb_remainder*/    (binaryfunc)0, /*nb_divmod*/    (ternaryfunc)0,/*nb_power*/    (unaryfunc)0,  /*nb_negative*/    (unaryfunc)0,  /*nb_positive*/    (unaryfunc)0,  /*nb_absolute*/    (inquiry)0,    /*nb_nonzero*/    0,		   /*nb_invert*/    0,		   /*nb_lshift*/    0,		   /*nb_rshift*/    0,		   /*nb_and*/    0,		   /*nb_xor*/    0,		   /*nb_or*/    (coercion)0,   /*nb_coerce*/    (unaryfunc)PySwigObject_long, /*nb_int*/    (unaryfunc)PySwigObject_long, /*nb_long*/    (unaryfunc)0,                 /*nb_float*/    (unaryfunc)PySwigObject_oct,  /*nb_oct*/    (unaryfunc)PySwigObject_hex,  /*nb_hex*/#if PY_VERSION_HEX >= 0x02000000    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_true_divide */ #endif  };  static int type_init = 0;    static PyTypeObject PySwigObject_Type;  if (!type_init) {    PyTypeObject tmp = {    PyObject_HEAD_INIT(&PyType_Type)    0,					/*ob_size*/    "PySwigObject",			/*tp_name*/    sizeof(PySwigObject),		/*tp_basicsize*/    0,					/*tp_itemsize*/    /* methods */    (destructor)PySwigObject_dealloc,	/*tp_dealloc*/    (printfunc)PySwigObject_print,	/*tp_print*/    (getattrfunc)0,			/*tp_getattr*/    (setattrfunc)0,			/*tp_setattr*/    (cmpfunc)PySwigObject_compare,	/*tp_compare*/    (reprfunc)PySwigObject_repr,	/*tp_repr*/    &PySwigObject_as_number,	        /*tp_as_number*/    0,					/*tp_as_sequence*/    0,					/*tp_as_mapping*/    (hashfunc)0,			/*tp_hash*/    (ternaryfunc)0,			/*tp_call*/    (reprfunc)PySwigObject_str,		/*tp_str*/    /* Space for future expansion */    0L,0L,0L,0L,    PySwigObject_Type__doc__, 	        /* Documentation string */#if PY_VERSION_HEX >= 0x02000000    0,                                  /* tp_traverse */    0,                                  /* tp_clear */#endif#if PY_VERSION_HEX >= 0x02010000    0,                                  /* tp_richcompare */    0,                                  /* tp_weaklistoffset */#endif#if PY_VERSION_HEX >= 0x02020000    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */#endif#if PY_VERSION_HEX >= 0x02030000    0,                                  /* tp_del */#endif#ifdef COUNT_ALLOCS    0,0,0,0                             /* tp_alloc -> tp_next */#endif    };    PySwigObject_Type = tmp;    type_init = 1;  }  return &PySwigObject_Type;}SWIGRUNTIME PyObject *PySwigObject_FromVoidPtrAndDesc(void *ptr, const char *desc){  PySwigObject *self = PyObject_NEW(PySwigObject, PySwigObject_GetType());  if (self == NULL) return NULL;  self->ptr = ptr;  self->desc = desc;  return (PyObject *)self;}SWIGRUNTIMEINLINE void *PySwigObject_AsVoidPtr(PyObject *self){  return ((PySwigObject *)self)->ptr;}SWIGRUNTIMEINLINE const char *PySwigObject_GetDesc(PyObject *self){  return ((PySwigObject *)self)->desc;}SWIGRUNTIMEINLINE intPySwigObject_Check(PyObject *op) {  return ((op)->ob_type == PySwigObject_GetType())     || (strcmp((op)->ob_type->tp_name,"PySwigObject") == 0);}/* ----------------------------------------------------------------------------- * Implements a simple Swig Packed type, and use it instead of string * ----------------------------------------------------------------------------- */typedef struct {  PyObject_HEAD  void *pack;  const char *desc;  size_t size;} PySwigPacked;SWIGRUNTIME intPySwigPacked_print(PySwigPacked *v, FILE *fp, int flags){  char result[SWIG_BUFFER_SIZE];  fputs("<Swig Packed ", fp);   if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) {    fputs("at ", fp);     fputs(result, fp);   }  fputs(v->desc,fp);   fputs(">", fp);  return 0; }  SWIGRUNTIME PyObject *PySwigPacked_repr(PySwigPacked *v){  char result[SWIG_BUFFER_SIZE];  if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) {    return PyString_FromFormat("<Swig Packed at %s%s>", result, v->desc);  } else {    return PyString_FromFormat("<Swig Packed %s>", v->desc);  }  }SWIGRUNTIME PyObject *PySwigPacked_str(PySwigPacked *v){  char result[SWIG_BUFFER_SIZE];  if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))){    return PyString_FromFormat("%s%s", result, v->desc);  } else {    return PyString_FromFormat("%s", v->desc);  }  }SWIGRUNTIME intPySwigPacked_compare(PySwigPacked *v, PySwigPacked *w){  int c = strcmp(v->desc, w->desc);  if (c) {    return c;  } else {    size_t i = v->size;    size_t j = w->size;    int s = (i < j) ? -1 : (i > j) ? 1 : 0;    return s ? s : strncmp((char *)v->pack, (char *)w->pack, 2*v->size);  }}SWIGRUNTIME voidPySwigPacked_dealloc(PySwigPacked *self){  free(self->pack);  PyObject_DEL(self);}SWIGRUNTIME PyTypeObject*PySwigPacked_GetType() {  static char PySwigPacked_Type__doc__[] =     "Swig object carries a C/C++ instance pointer";  static int type_init = 0;    static PyTypeObject PySwigPacked_Type;  if (!type_init) {    PyTypeObject tmp = {    PyObject_HEAD_INIT(&PyType_Type)    0,					/*ob_size*/    "PySwigPacked",			/*tp_name*/    sizeof(PySwigPacked),		/*tp_basicsize*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -