/xcc-python/xcc/xcc-python.c
C | 3367 lines | 2720 code | 414 blank | 233 comment | 467 complexity | 42e5c139a2cae04c5dd793c1a48fd9cf MD5 | raw file
Possible License(s): Apache-2.0
Large files files are truncated, but you can click here to view the full file
- /* ----------------------------------------------------------------------------
- * This file was automatically generated by SWIG (http://www.swig.org).
- * Version 1.3.24
- *
- * This file is not intended to be easily readable and contains a number of
- * coding conventions designed to improve portability and efficiency. Do not make
- * changes to this file unless you know what you are doing--modify the SWIG
- * interface file instead.
- * ----------------------------------------------------------------------------- */
- #define SWIGPYTHON
- #ifndef SWIG_TEMPLATE_DISAMBIGUATOR
- # if defined(__SUNPRO_CC)
- # define SWIG_TEMPLATE_DISAMBIGUATOR template
- # else
- # define SWIG_TEMPLATE_DISAMBIGUATOR
- # endif
- #endif
- #include <Python.h>
- /***********************************************************************
- * swigrun.swg
- *
- * This file contains generic CAPI SWIG runtime support for pointer
- * type checking.
- *
- ************************************************************************/
- /* This should only be incremented when either the layout of swig_type_info changes,
- or for whatever reason, the runtime changes incompatibly */
- #define SWIG_RUNTIME_VERSION "1"
- /* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */
- #ifdef SWIG_TYPE_TABLE
- #define SWIG_QUOTE_STRING(x) #x
- #define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x)
- #define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE)
- #else
- #define SWIG_TYPE_TABLE_NAME
- #endif
- #include <string.h>
- #ifndef SWIGINLINE
- #if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
- # define SWIGINLINE inline
- #else
- # define SWIGINLINE
- #endif
- #endif
- /*
- You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for
- creating a static or dynamic library from the swig runtime code.
- In 99.9% of the cases, swig just needs to declare them as 'static'.
-
- But only do this if is strictly necessary, ie, if you have problems
- with your compiler or so.
- */
- #ifndef SWIGRUNTIME
- #define SWIGRUNTIME static
- #endif
- #ifndef SWIGRUNTIMEINLINE
- #define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE
- #endif
- #ifdef __cplusplus
- extern "C" {
- #endif
- typedef void *(*swig_converter_func)(void *);
- typedef struct swig_type_info *(*swig_dycast_func)(void **);
- typedef struct swig_type_info {
- const char *name;
- swig_converter_func converter;
- const char *str;
- void *clientdata;
- swig_dycast_func dcast;
- struct swig_type_info *next;
- struct swig_type_info *prev;
- } swig_type_info;
- /*
- Compare two type names skipping the space characters, therefore
- "char*" == "char *" and "Class<int>" == "Class<int >", etc.
- Return 0 when the two name types are equivalent, as in
- strncmp, but skipping ' '.
- */
- SWIGRUNTIME int
- SWIG_TypeNameComp(const char *f1, const char *l1,
- const char *f2, const char *l2) {
- for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
- while ((*f1 == ' ') && (f1 != l1)) ++f1;
- while ((*f2 == ' ') && (f2 != l2)) ++f2;
- if (*f1 != *f2) return *f1 - *f2;
- }
- return (l1 - f1) - (l2 - f2);
- }
- /*
- Check type equivalence in a name list like <name1>|<name2>|...
- */
- SWIGRUNTIME int
- SWIG_TypeEquiv(const char *nb, const char *tb) {
- int equiv = 0;
- const char* te = tb + strlen(tb);
- const char* ne = nb;
- while (!equiv && *ne) {
- for (nb = ne; *ne; ++ne) {
- if (*ne == '|') break;
- }
- equiv = SWIG_TypeNameComp(nb, ne, tb, te) == 0;
- if (*ne) ++ne;
- }
- return equiv;
- }
- /*
- Register a type mapping with the type-checking
- */
- SWIGRUNTIME swig_type_info *
- SWIG_TypeRegisterTL(swig_type_info **tl, swig_type_info *ti) {
- swig_type_info *tc, *head, *ret, *next;
- /* Check to see if this type has already been registered */
- tc = *tl;
- while (tc) {
- /* check simple type equivalence */
- int typeequiv = (strcmp(tc->name, ti->name) == 0);
- /* check full type equivalence, resolving typedefs */
- if (!typeequiv) {
- /* only if tc is not a typedef (no '|' on it) */
- if (tc->str && ti->str && !strstr(tc->str,"|")) {
- typeequiv = SWIG_TypeEquiv(ti->str,tc->str);
- }
- }
- if (typeequiv) {
- /* Already exists in the table. Just add additional types to the list */
- if (ti->clientdata) tc->clientdata = ti->clientdata;
- head = tc;
- next = tc->next;
- goto l1;
- }
- tc = tc->prev;
- }
- head = ti;
- next = 0;
- /* Place in list */
- ti->prev = *tl;
- *tl = ti;
- /* Build linked lists */
- l1:
- ret = head;
- tc = ti + 1;
- /* Patch up the rest of the links */
- while (tc->name) {
- head->next = tc;
- tc->prev = head;
- head = tc;
- tc++;
- }
- if (next) next->prev = head;
- head->next = next;
- return ret;
- }
- /*
- Check the typename
- */
- SWIGRUNTIME swig_type_info *
- SWIG_TypeCheck(const char *c, swig_type_info *ty) {
- swig_type_info *s;
- if (!ty) return 0; /* Void pointer */
- s = ty->next; /* First element always just a name */
- do {
- if (strcmp(s->name,c) == 0) {
- if (s == ty->next) return s;
- /* Move s to the top of the linked list */
- s->prev->next = s->next;
- if (s->next) {
- s->next->prev = s->prev;
- }
- /* Insert s as second element in the list */
- s->next = ty->next;
- if (ty->next) ty->next->prev = s;
- ty->next = s;
- s->prev = ty;
- return s;
- }
- s = s->next;
- } while (s && (s != ty->next));
- return 0;
- }
- /*
- Cast a pointer up an inheritance hierarchy
- */
- SWIGRUNTIMEINLINE void *
- SWIG_TypeCast(swig_type_info *ty, void *ptr) {
- return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr);
- }
- /*
- Dynamic pointer casting. Down an inheritance hierarchy
- */
- SWIGRUNTIME swig_type_info *
- SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) {
- swig_type_info *lastty = ty;
- if (!ty || !ty->dcast) return ty;
- while (ty && (ty->dcast)) {
- ty = (*ty->dcast)(ptr);
- if (ty) lastty = ty;
- }
- return lastty;
- }
- /*
- Return the name associated with this type
- */
- SWIGRUNTIMEINLINE const char *
- SWIG_TypeName(const swig_type_info *ty) {
- return ty->name;
- }
- /*
- Return the pretty name associated with this type,
- that is an unmangled type name in a form presentable to the user.
- */
- SWIGRUNTIME const char *
- SWIG_TypePrettyName(const swig_type_info *type) {
- /* The "str" field contains the equivalent pretty names of the
- type, separated by vertical-bar characters. We choose
- to print the last name, as it is often (?) the most
- specific. */
- if (type->str != NULL) {
- const char *last_name = type->str;
- const char *s;
- for (s = type->str; *s; s++)
- if (*s == '|') last_name = s+1;
- return last_name;
- }
- else
- return type->name;
- }
- /*
- Search for a swig_type_info structure
- */
- SWIGRUNTIME swig_type_info *
- SWIG_TypeQueryTL(swig_type_info *tl, const char *name) {
- swig_type_info *ty = tl;
- while (ty) {
- if (ty->str && (SWIG_TypeEquiv(ty->str,name))) return ty;
- if (ty->name && (strcmp(name,ty->name) == 0)) return ty;
- ty = ty->prev;
- }
- return 0;
- }
- /*
- Set the clientdata field for a type
- */
- SWIGRUNTIME void
- SWIG_TypeClientDataTL(swig_type_info *tl, swig_type_info *ti, void *clientdata) {
- swig_type_info *tc, *equiv;
- if (ti->clientdata) return;
- /* if (ti->clientdata == clientdata) return; */
- ti->clientdata = clientdata;
- equiv = ti->next;
- while (equiv) {
- if (!equiv->converter) {
- tc = tl;
- while (tc) {
- if ((strcmp(tc->name, equiv->name) == 0))
- SWIG_TypeClientDataTL(tl,tc,clientdata);
- tc = tc->prev;
- }
- }
- equiv = equiv->next;
- }
- }
- /*
- Pack binary data into a string
- */
- SWIGRUNTIME char *
- SWIG_PackData(char *c, void *ptr, size_t sz) {
- static char hex[17] = "0123456789abcdef";
- unsigned char *u = (unsigned char *) ptr;
- const unsigned char *eu = u + sz;
- register unsigned char uu;
- for (; u != eu; ++u) {
- uu = *u;
- *(c++) = hex[(uu & 0xf0) >> 4];
- *(c++) = hex[uu & 0xf];
- }
- return c;
- }
- /*
- Unpack binary data from a string
- */
- SWIGRUNTIME const char *
- SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
- register unsigned char *u = (unsigned char *) ptr;
- register const unsigned char *eu = u + sz;
- for (; u != eu; ++u) {
- register int d = *(c++);
- register unsigned char uu = 0;
- if ((d >= '0') && (d <= '9'))
- uu = ((d - '0') << 4);
- else if ((d >= 'a') && (d <= 'f'))
- uu = ((d - ('a'-10)) << 4);
- else
- return (char *) 0;
- d = *(c++);
- if ((d >= '0') && (d <= '9'))
- uu |= (d - '0');
- else if ((d >= 'a') && (d <= 'f'))
- uu |= (d - ('a'-10));
- else
- return (char *) 0;
- *u = uu;
- }
- return c;
- }
- /*
- 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.
- */
- SWIGRUNTIME void
- SWIG_PropagateClientDataTL(swig_type_info *tl, swig_type_info *type) {
- swig_type_info *equiv = type->next;
- swig_type_info *tc;
- if (!type->clientdata) return;
- while (equiv) {
- if (!equiv->converter) {
- tc = tl;
- while (tc) {
- if ((strcmp(tc->name, equiv->name) == 0) && !tc->clientdata)
- SWIG_TypeClientDataTL(tl,tc, type->clientdata);
- tc = tc->prev;
- }
- }
- equiv = equiv->next;
- }
- }
- /*
- Pack 'void *' into a string buffer.
- */
- SWIGRUNTIME char *
- SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) {
- char *r = buff;
- if ((2*sizeof(void *) + 2) > bsz) return 0;
- *(r++) = '_';
- r = SWIG_PackData(r,&ptr,sizeof(void *));
- if (strlen(name) + 1 > (bsz - (r - buff))) return 0;
- strcpy(r,name);
- return buff;
- }
- SWIGRUNTIME const char *
- SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) {
- if (*c != '_') {
- if (strcmp(c,"NULL") == 0) {
- *ptr = (void *) 0;
- return name;
- } else {
- return 0;
- }
- }
- return SWIG_UnpackData(++c,ptr,sizeof(void *));
- }
- SWIGRUNTIME char *
- SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) {
- char *r = buff;
- size_t lname = (name ? strlen(name) : 0);
- if ((2*sz + 2 + lname) > bsz) return 0;
- *(r++) = '_';
- r = SWIG_PackData(r,ptr,sz);
- if (lname) {
- strncpy(r,name,lname+1);
- } else {
- *r = 0;
- }
- return buff;
- }
- SWIGRUNTIME const char *
- SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
- if (*c != '_') {
- if (strcmp(c,"NULL") == 0) {
- memset(ptr,0,sz);
- return name;
- } else {
- return 0;
- }
- }
- return SWIG_UnpackData(++c,ptr,sz);
- }
- #ifdef __cplusplus
- }
- #endif
- /***********************************************************************
- * common.swg
- *
- * This file contains generic SWIG runtime support for pointer
- * type checking as well as a few commonly used macros to control
- * external linkage.
- *
- * Author : David Beazley (beazley@cs.uchicago.edu)
- *
- * Copyright (c) 1999-2000, The University of Chicago
- *
- * This file may be freely redistributed without license or fee provided
- * this copyright message remains intact.
- ************************************************************************/
- #if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
- # if !defined(STATIC_LINKED)
- # define SWIGEXPORT(a) __declspec(dllexport) a
- # else
- # define SWIGEXPORT(a) a
- # endif
- #else
- # define SWIGEXPORT(a) a
- #endif
- #ifdef __cplusplus
- extern "C" {
- #endif
- /*************************************************************************/
- /* 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 void
- SWIG_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 void
- SWIG_PropagateClientData(swig_type_info *type) {
- SWIG_PropagateClientDataTL(*swig_type_list_handle, type);
- }
- #ifdef __cplusplus
- }
- #endif
- /* -----------------------------------------------------------------------------
- * SWIG API. Portion that goes into the runtime
- * ----------------------------------------------------------------------------- */
- #ifdef __cplusplus
- extern "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 __cplusplus
- extern "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 int
- PySwigObject_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 int
- PySwigObject_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 void
- PySwigObject_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 int
- PySwigObject_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 int
- PySwigPacked_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 int
- PySwigPacked_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 void
- PySwigPacked_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*/
- 0, /*tp_itemsize*/
- /* methods */
- (destructor)PySwigPacked_dealloc, /*tp_dealloc*/
- (printfunc)PySwigPacked_print, /*tp_print*/
- (getattrfunc)0, /*tp_getattr*/
- (setattrfunc)0, /*tp_setattr*/
- (cmpfunc)PySwigPacked_compare, /*tp_compare*/
- (reprfunc)PySwigPacked_repr, /*tp_repr*/
- 0, /*tp_as_number*/
- 0, /*tp_as_sequence*/
- 0, /*tp_as_mapping*/
- (hashfunc)0, /*tp_hash*/
- (ternaryfunc)0, /*tp_call*/
- (reprfunc)PySwigPacked_str, /*tp_str*/
- /* Space for future expansion */
- 0L,0L,0L,0L,
- PySwigPacked_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
- };
- PySwigPacked_Type = tmp;
- type_init = 1;
- }
-
-
- return &PySwigPacked_Type;
- }
- SWIGRUNTIME PyObject *
- PySwigPacked_FromDataAndDesc(void *ptr, size_t size, const char *desc)
- {
- PySwigPacked *self = PyObject_NEW(PySwigPacked, PySwigPacked_GetType());
- if (self == NULL) {
- return NULL;
- } else {
- void *pack = malloc(size);
- memcpy(pack, ptr, size);
- self->pack = pack;
- self->desc = desc;
- self->size = size;
- return (PyObject *) self;
- }
- }
- SWIGRUNTIMEINLINE const char *
- PySwigPacked_UnpackData(PyObject *obj, void *ptr, size_t size)
- {
- PySwigPacked *self = (PySwigPacked *)obj;
- if (self->size != size) return 0;
- memcpy(ptr, self->pack, size);
- return self->desc;
- }
- SWIGRUNTIMEINLINE const char *
- PySwigPacked_GetDesc(PyObject *self)
- {
- return ((PySwigPacked *)self)->desc;
- }
- SWIGRUNTIMEINLINE int
- PySwigPacked_Check(PyObject *op) {
- return ((op)->ob_type == PySwigPacked_GetType())
- || (strcmp((op)->ob_type->tp_name,"PySwigPacked") == 0);
- }
- #else
- /* -----------------------------------------------------------------------------
- * Use the old Python PyCObject instead of PySwigObject
- * ----------------------------------------------------------------------------- */
- #define PySwigObject_GetDesc(obj) PyCObject_GetDesc(obj)
- #define PySwigObject_Check(obj) PyCObject_Check(obj)
- #define PySwigObject_AsVoidPtr(obj) PyCObject_AsVoidPtr(obj)
- #define PySwigObject_FromVoidPtrAndDesc(p, d) PyCObject_FromVoidPtrAndDesc(p, d, NULL)
- #endif
- #endif
- /* -----------------------------------------------------------------------------
- * errors manipulation
- * ----------------------------------------------------------------------------- */
- SWIGRUNTIME void
- SWIG_Python_TypeError(const char *type, PyObject *obj)
- {
- if (type) {
- #if defined(SWIG_COBJECT_TYPES)
- if (PySwigObject_Check(obj)) {
- const char *otype = (const char *) PySwigObject_GetDesc(obj);
- if (otype) {
- PyErr_Format(PyExc_TypeError, "a '%s' is expected, 'PySwigObject(%s)' is received",
- type, otype);
- return;
- }
- } else
- #endif
- {
- const char *otype = (obj ? obj->ob_type->tp_name : 0);
- if (otype) {
- PyObject *str = PyObject_Str(obj);
- const char *cstr = str ? PyString_AsString(str) : 0;
- if (cstr) {
- PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s(%s)' is received",
- type, otype, cstr);
- } else {
- PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s' is received",
- type, otype);
- }
- Py_DECREF(str);
- return;
- }
- }
- PyErr_Format(PyExc_TypeError, "a '%s' is expected", type);
- } else {
- PyErr_Format(PyExc_TypeError, "unexpected type is received");
- }
- }
- SWIGRUNTIMEINLINE void
- SWIG_Python_NullRef(const char *type)
- {
- if (type) {
- PyErr_Format(PyExc_TypeError, "null reference of type '%s' was received",type);
- } else {
- PyErr_Format(PyExc_TypeError, "null reference was received");
- }
- }
- SWIGRUNTIME int
- SWIG_Python_AddErrMesg(const char* mesg, int infront)
- {
- if (PyErr_Occurred()) {
- PyObject *type = 0;
- PyObject *value = 0;
- PyObject *traceback = 0;
- PyErr_Fetch(&type, &value, &traceback);
- if (value) {
- PyObject *old_str = PyObject_Str(value);
- Py_XINCREF(type);
- PyErr_Clear();
- if (infront) {
- PyErr_Format(type, "%s %s", mesg, PyString_AsString(old_str));
- } else {
- PyErr_Format(type, "%s %s", PyString_AsString(old_str), mesg);
- }
- Py_DECREF(old_str);
- }
- return 1;
- } else {
- return 0;
- }
- }
- SWIGRUNTIME int
- SWIG_Python_ArgFail(int argnum)
- {
- if (PyErr_Occurred()) {
- /* add information about failing argument */
- char mesg[256];
- sprintf(mesg, "argument number %d:", argnum);
- return SWIG_Python_AddErrMesg(mesg, 1);
- } else {
- return 0;
- }
- }
- /* -----------------------------------------------------------------------------
- * pointers/data manipulation
- * ----------------------------------------------------------------------------- */
- /* Convert a pointer value */
- SWIGRUNTIME int
- SWIG_Python_ConvertPtr(PyObject *obj, void **ptr, swig_type_info *ty, int flags) {
- swig_type_info *tc;
- const char *c = 0;
- static PyObject *SWIG_this = 0;
- int newref = 0;
- PyObject *pyobj = 0;
- void *vptr;
-
- if (!obj) return 0;
- if (obj == Py_None) {
- *ptr = 0;
- return 0;
- }
- #ifdef SWIG_COBJECT_TYPES
- if (!(PySwigObject_Check(obj))) {
- if (!SWIG_this)
- SWIG_this = PyString_FromString("this");
- pyobj = obj;
- obj = PyObject_GetAttr(obj,SWIG_this);
- newref = 1;
- if (!obj) goto type_error;
- if (!PySwigObject_Check(obj)) {
- Py_DECREF(obj);
- goto type_error;
- }
- }
- vptr = PySwigObject_AsVoidPtr(obj);
- c = (const char *) PySwigObject_GetDesc(obj);
- if (newref) { Py_DECREF(obj); }
- goto type_check;
- #else
- if (!(PyString_Check(obj))) {
- if (!SWIG_this)
- SWIG_this = PyString_FromString("this");
- pyobj = obj;
- obj = PyObject_GetAttr(obj,SWIG_this);
- newref = 1;
- if (!obj) goto type_error;
- if (!PyString_Check(obj)) {
- Py_DECREF(obj);
- goto type_error;
- }
- }
- c = PyString_AS_STRING(obj);
- /* Pointer values must start with leading underscore */
- c = SWIG_UnpackVoidPtr(c, &vptr, ty->name);
- if (newref) { Py_DECREF(obj); }
- if (!c) goto type_error;
- #endif
- type_check:
- if (ty) {
- tc = SWIG_TypeCheck(c,ty);
- if (!tc) goto type_error;
- *ptr = SWIG_TypeCast(tc,vptr);
- } else {
- *ptr = vptr;
- }
- if ((pyobj) && (flags & SWIG_POINTER_DISOWN)) {
- PyObject_SetAttrString(pyobj,(char*)"thisown",Py_False);
- }
- return 0;
- type_error:
- PyErr_Clear();
- if (pyobj && !obj) {
- obj = pyobj;
- if (PyCFunction_Check(obj)) {
- /* here we get the method pointer for callbacks */
- char *doc = (((PyCFunctionObject *)obj) -> m_ml -> ml_doc);
- c = doc ? strstr(doc, "swig_ptr: ") : 0;
- if (c) {
- c = SWIG_UnpackVoidPtr(c + 10, &vptr, ty->name);
- if (!c) goto type_error;
- goto type_check;
- }
- }
- }
- if (flags & SWIG_POINTER_EXCEPTION) {
- if (ty) {
- SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
- } else {
- SWIG_Python_TypeError("C/C++ pointer", obj);
- }
- }
- return -1;
- }
- /* Convert a pointer value, signal an exception on a type mismatch */
- SWIGRUNTIME void *
- SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags) {
- void *result;
- if (SWIG_Python_ConvertPtr(obj, &result, ty, flags) == -1) {
- PyErr_Clear();
- if (flags & SWIG_POINTER_EXCEPTION) {
- SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
- SWIG_Python_ArgFail(argnum);
- }
- }
- return result;
- }
- /* Convert a packed value value */
- SWIGRUNTIME int
- SWIG_Python_ConvertPacked(PyObject *obj, void *ptr, size_t sz, swig_type_info *ty, int flags) {
- swig_type_info *tc;
- const char *c = 0;
- #if defined(SWIG_COBJECT_TYPES) && !defined(SWIG_COBJECT_PYTHON)
- c = PySwigPacked_UnpackData(obj, ptr, sz);
- #else
- if ((!obj) || (!PyString_Check(obj))) goto type_error;
- c = PyString_AS_STRING(obj);
- /* Pointer values must start with leading underscore */
- c = SWIG_UnpackDataName(c, ptr, sz, ty->name);
- #endif
- if (!c) goto type_error;
- if (ty) {
- tc = SWIG_TypeCheck(c,ty);
- if (!tc) goto type_error;
- }
- return 0;
- type_error:
- PyErr_Clear();
- if (flags & SWIG_POINTER_EXCEPTION) {
- if (ty) {
- SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
- } else {
- SWIG_Python_TypeError("C/C++ packed data", obj);
- }
- }
- return -1;
- }
- /* Create a new array object */
- SWIGRUNTIME PyObject *
- SWIG_Python_NewPointerObj(void *ptr, swig_type_info *type, int own) {
- PyObject *robj = 0;
- if (!ptr) {
- Py_INCREF(Py_None);
- return Py_None;
- }
- #ifdef SWIG_COBJECT_TYPES
- robj = PySwigObject_FromVoidPtrAndDesc((void *) ptr, (char *)type->name);
- #else
- {
- char result[SWIG_BUFFER_SIZE];
- robj = SWIG_PackVoidPtr(result, ptr, type->name, sizeof(result)) ?
- PyString_FromString(result) : 0;
- }
- #endif
- if (!robj || (robj == Py_None)) return robj;
- if (type->clientdata) {
- PyObject *inst;
- PyObject *args = Py_BuildValue((char*)"(O)", robj);
- Py_DECREF(robj);
- inst = PyObject_CallObject((PyObject *) type->clientdata, args);
- Py_DECREF(args);
- if (inst) {
- if (own) {
- PyObject_SetAttrString(inst,(char*)"thisown",Py_True);
- }
- robj = inst;
- }
- }
- return robj;
- }
- SWIGRUNTIME PyObject *
- SWIG_Python_NewPackedObj(void *ptr, size_t sz, swig_type_info *type) {
- PyObject *robj = 0;
- if (!ptr) {
- Py_INCREF(Py_None);
- return Py_None;
- }
- #if defined(SWIG_COBJECT_TYPES) && !defined(SWIG_COBJECT_PYTHON)
- robj = PySwigPacked_FromDataAndDesc((void *) ptr, sz, (char *)type->name);
- #else
- {
- char result[SWIG_BUFFER_SIZE];
- robj = SWIG_PackDataName(result, ptr, sz, type->name, sizeof(result)) ?
- PyString_FromString(result) : 0;
- }
- #endif
- return robj;
- }
- /* -----------------------------------------------------------------------------*
- * Get type list
- * -----------------------------------------------------------------------------*/
- #ifdef SWIG_LINK_RUNTIME
- void *SWIG_ReturnGlobalTypeList(void *);
- #endif
- SWIGRUNTIME swig_type_info **
- SWIG_Python_GetTypeListHandle() {
- static void *type_pointer = (void *)0;
- /* first check if module already created */
- if (!type_pointer) {
- #ifdef SWIG_LINK_RUNTIME
- type_pointer = SWIG_ReturnGlobalTypeList((void *)0);
- #else
- type_pointer = PyCObject_Import((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION,
- (char*)"type_pointer" SWIG_TYPE_TABLE_NAME);
- if (PyErr_Occurred()) {
- PyErr_Clear();
- type_pointer = (void *)0;
- }
- }
- #endif
- return (swig_type_info **) type_pointer;
- }
- /*
- Search for a swig_type_info structure
- */
- SWIGRUNTIMEINLINE swig_type_info *
- SWIG_Python_GetTypeList() {
- swig_type_info **tlh = SWIG_Python_GetTypeListHandle();
- return tlh ? *tlh : (swig_type_info*)0;
- }
- #define SWIG_Runtime_GetTypeList SWIG_Python_GetTypeList
- #ifdef __cplusplus
- }
- #endif
- /* -------- TYPES TABLE (BEGIN) -------- */
- #define SWIGTYPE_p_XCC_SESS swig_types[0]
- #define SWIGTYPE_p_XCC_REQ swig_types[1]
- #define SWIGTYPE_p_XCC_ITEM swig_types[2]
- #define SWIGTYPE_p_XCC_CONTENT swig_types[3]
- #define SWIGTYPE_p_char swig_types[4]
- #define SWIGTYPE_p_XCC_RES swig_types[5]
- #define SWIGTYPE_size_t swig_types[6]
- #define SWIGTYPE_ptrdiff_t swig_types[7]
- static swig_type_info *swig_types[9];
- /* -------- TYPES TABLE (END) -------- */
- /*-----------------------------------------------
- @(target):= _xcc.so
- ------------------------------------------------*/
- #define SWIG_init init_xcc
- #define SWIG_name "_xcc"
- #include <marklogic/xcc.h>
- static const char *_xcc_error_message = NULL;
- static XCC_ERROR_CODE _xcc_error_code = 0;
- void set_exception(const char *msg, XCC_ERROR_CODE error_code) {
- _xcc_error_message = msg;
- _xcc_error_code = error_code;
- }
- void clear_exception() {
- _xcc_error_code = 0;
- _xcc_error_message = NULL;
- }
- void throw_exception() {
- PyObject *e, *emod, *edict;
- if(!(emod = PyImport_ImportModule("xcc"))) return;
- if(!(edict = PyModule_GetDict(emod))) return;
- if(XCC_ERROR_XQUERY == _xcc_error_code) {
- if(!(e = PyDict_GetItemString(edict, "XQueryError"))) return;
- } else {
- if(!(e = PyDict_GetItemString(edict, "Error"))) return;
- }
- PyObject_SetAttrString(e, "code", PyInt_FromLong((long)_xcc_error_code));
- PyObject_SetAttrString(e, "message", PyString_FromString(_xcc_error_message));
- PyErr_SetObject(e, e);
- }
- #define XccError(num, msg) \
- set_exception(msg, num);
- #define XccErrorXQuery(error_xml) \
- set_exception(error_xml, XCC_ERROR_XQUERY);
- /*@/usr/share/swig1.3/python/pymacros.swg,66,SWIG_define@*/
- #define SWIG_From_int PyInt_FromLong
- /*@@*/
- /* returns SWIG_OLDOBJ if the input is a raw char*, SWIG_PYSTR if is a PyString */
- SWIGINTERN int
- SWIG_AsCharPtrAndSize(PyObject *obj, char** cptr, size_t* psize)
- {
- static swig_type_info* pchar_info = 0;
- char* vptr = 0;
- if (!pchar_info) pchar_info = SWIG_TypeQuery("char *");
- if (SWIG_ConvertPtr(obj, (void**)&vptr, pchar_info, 0) != -1) {
- if (cptr) *cptr = vptr;
- if (psize) *psize = vptr ? (strlen(vptr) + 1) : 0;
- return SWIG_OLDOBJ;
- } else {
- PyErr_Clear();
- if (PyString_Check(obj)) {
- if (cptr) {
- *cptr = PyString_AS_STRING(obj);
- if (psize) {
- *psize = PyString_GET_SIZE(obj) + 1;
- }
- }
- return SWIG_PYSTR;
- }
- }
- if (cptr) {
- SWIG_type_error("char *", obj);
- }
- return 0;
- }
- SWIGINTERNSHORT int
- SWIG_AsCharPtr(PyObject *obj, char **val)
- {
- if (SWIG_AsCharPtrAndSize(obj, val, (size_t*)(0))) {
- return 1;
- }
- if (val) {
- PyErr_Clear();
- SWIG_type_error("char *", obj);
- }
- return 0;
- }
- #include <limits.h>
- SWIGINTERN int
- SWIG_CheckLongInRange(long value, long min_value, long max_value,
- const char *errmsg)
- {
- if (value < min_value) {
- if (errmsg) {
- PyErr_Format(PyExc_OverflowError,
- "value %ld is less than '%s' minimum %ld",
- value, errmsg, min_value);
- }
- return 0;
- } else if (value > max_value) {
- if (errmsg) {
- PyErr_Format(PyExc_OverflowError,
- "value %ld is greater than '%s' maximum %ld",
- value, errmsg, max_value);
- }
- return 0;
- }
- return 1;
- }
- SWIGINTERN int
- SWIG_AsVal_long(PyObject * obj, long* val)
- {
- if (PyInt_Check(obj)) {
- if (val) *val = PyInt_AS_LONG(obj);
- return 1;
- }
- if (PyLong_Check(obj)) {
- long v = PyLong_AsLong(obj);
- if (!PyErr_Occurred()) {
- if (val) *val = v;
- return 1;
- } else {
- if (!val) PyErr_Clear();
- return 0;
- }
- }
- if (val) {
- SWIG_type_error("long", obj);
- }
- return 0;
- }
- #if INT_MAX != LONG_MAX
- SWIGINTERN int
- SWIG_AsVal_int(PyObject *obj, int *val)
- {
- const char* errmsg = val ? "int" : (char*)0;
- long v;
- if (SWIG_AsVal_long(obj, &v)) {
- if (SWIG_CheckLongInRange(v, INT_MIN,INT_MAX, errmsg)) {
- if (val) *val = (int)(v);
- return 1;
- } else {
- return 0;
- }
- } else {
- PyErr_Clear();
- }
- if (val) {
- SWIG_type_error(errmsg, obj);
- }
- return 0;
- }
- #else
- SWIGINTERNSHORT int
- SWIG_AsVal_int(PyObject *obj, int *val)
- {
- return SWIG_AsVal_long(obj,(long*)val);
- }
- #endif
- SWIGINTERNSHORT int
- SWIG_As_int(PyObject* obj)
- {
- int v;
- if (!SWIG_AsVal_int(obj, &v)) {
- /*
- this is needed to make valgrind/purify happier.
- */
- memset((void*)&v, 0, sizeof(int));
- }
- return v;
- }
-
- SWIGINTERNSHORT int
- SWIG_Check_int(PyObject* obj)
- {
- return SWIG_AsVal_int(obj, (int*)0);
- }
- static XCC_SESS *new_XCC_SESS(char const *user,char const *password,char const *host,char const *db,int port){
- XCC_SESS *session = xcc_new_session(user, password, host, db, port);
- if(!session) {
- XccError(XCC_ERROR_CONNECTION, "Failed to create new session");
- }
- return session;
- }
- static void delete_XCC_SESS(XCC_SESS *self){
- xcc_free_session(self);
- }
- static char const *XCC_SESS_server_info(XCC_SESS *self){
- const char *info = xcc_server_info(self);
- if(!info) return "";
- return info;
- }
- SWIGINTERN PyObject *
- SWIG_FromCharPtr(const char* cptr)
- {
- if (cptr) {
- size_t size = strlen(cptr);
- if (size > INT_MAX) {
- return SWIG_NewPointerObj((char*)(cptr),
- SWIG_TypeQuery("char *"), 0);
- } else {
- if (size != 0) {
- return PyString_FromStringAndSize(cptr, size);
- } else {
- return PyString_FromString(cptr);
- }
- }
- }
- Py_INCREF(Py_None);
- return Py_None;
- }
- static XCC_REQ *XCC_SESS_new_adhoc_query(XCC_SESS *self,char const *xquery){
- XCC_REQ *request = xcc_new_adhoc_query(self, xquery);
- if(!request) {
- XccError(xcc_errcode(self), xcc_error(self));
- }
- return request;
- }
- static XCC_REQ *XCC_SESS_new_module_invoke(XCC_SESS *self,char const *module_name){
- XCC_REQ *request = xcc_new_module_invoke(self, module_name);
- if(!request) {
- XccError(xcc_errcode(self), xcc_error(self));
- }
- return request;
- }
- static XCC_REQ *XCC_SESS_new_module_spawn(XCC_SESS *self,char const *module_name){
- XCC_REQ *request = xcc_new_module_spawn(self, module_name);
- if(!request) {
- XccError(xcc_errcode(self), xcc_error(self));
- }
- return request;
- }
- static XCC_CONTENT *XCC_SESS_new_content(XCC_SESS *self){
- XCC_CONTENT *content = xcc_new_content(self);
- if(!content) {
- XccError(xcc_errcode(self), xcc_error(self));
- }
- return content;
- }
- static XCC_RES *XCC_SESS_query(XCC_SESS *self,char const *xquery){
- XCC_RES *result = xcc_query(self, xquery);
- if(!result) {
- XccError(xcc_errcode(self), xcc_error(self));
- }
- return result;
- }
- static XCC_RES *XCC_SESS_invoke(XCC_SESS *self,char const *module){
- XCC_RES *result = xcc_invoke(self, module);
- if(!result) {
- XccError(xcc_errcode(self), xcc_error(self));
- }
- return result;
- }
- static XCC_RES *XCC_SESS_spawn(XCC_SESS *self,char const *module){
- XCC_RES *result = xcc_spawn(self, module);
- if(!result) {
- XccError(xcc_errcode(self), xcc_error(self));
- }
- return result;
- }
- static XCC_REQ *new_XCC_REQ(){
- XccError(XCC_ERROR_INVALID_ARG, "You can't create new Request objects. You must use methods from Session");
- return NULL;
- }
- static void delete_XCC_REQ(XCC_REQ *self){
- xcc_free_request(self);
- }
- static XCC_RES *XCC_REQ_submit(XCC_REQ *self){
- XCC_RES *result = xcc_submit_request(self);
- if(!result) {
- if(XCC_ERROR_XQUERY == xcc_req_errcode(self)) {
- XccErrorXQuery(xcc_req_error(self));
- } else {
- XccError(xcc_req_errcode(self), xcc_req_error(self));
- }
- }
- return result;
- }
- static void XCC_REQ_set_bufsize(XCC_REQ *self,int size){
- XCC_ERROR_CODE ret = xcc_request_setop(self, XCC_REQ_BUFSIZE, size);
- if(ret != XCC_OK) {
- XccError(ret, xcc_error_message(ret));
- }
- }
- static void XCC_REQ_set_timeout(XCC_REQ *self,int seconds){
- XCC_ERROR_CODE ret = xcc_request_setop(self, XCC_REQ_TIMEOUT, seconds);
- if(ret != XCC_OK) {
- XccError(ret, xcc_error_message(ret));
- }
- }
- static void XCC_REQ_set_dbname(XCC_REQ *self,char const *name){
- XCC_ERROR_CODE ret = xcc_request_setop(self, XCC_REQ_DBNAME, name);
- if(ret != XCC_OK) {
- XccError(ret, xcc_error_message(ret));
- }
- }
- static void XCC_REQ_set_dbid(XCC_REQ *self,char const *id){
- XCC_ERROR_CODE ret = xcc_request_setop(self, XCC_REQ_DBID, id);
- if(ret != XCC_OK) {
- XccError(ret, xcc_error_message(ret));
- }
- }
- static void XCC_REQ_set_timestamp(XCC_REQ *self,char const *stamp){
- XCC_ERROR_CODE ret = xcc_request_setop(self, XCC_REQ_TIMESTAMP, stamp);
- if(ret != XCC_OK) {
- XccError(ret, xcc_error_message(ret));
- }
- }
- static void XCC_REQ_set_name(XCC_REQ *self,char const *name){
- XCC_ERROR_CODE ret = xcc_request_setop(self, XCC_REQ_NAME, name);
- if(ret != XCC_OK) {
- XccError(ret, xcc_error_message(ret));
- }
- }
- static void XCC_REQ_set_variable(XCC_REQ *self,int schema_type,char const *ns,char const *name,char const *value){
- XCC_ERROR_CODE ret = xcc_setvar_generic(self, schema_type, ns, name, value);
- if(ret != XCC_OK) {
- XccError(ret, xcc_error_message(ret));
- }
- }
- static XCC_RES *new_XCC_RES(){
- XccError(XCC_ERROR_INVALID_ARG, "You can't create new Result objects. You must use call submit");
- return NULL;
- }
- static void delete_XCC_RES(XCC_RES *self){
- xcc_free_result(self);
- }
- static int XCC_RES_has_next(XCC_RES *self){
- return xcc_has_next(self);
- }
- static XCC_ITEM *XCC_RES_next_item(XCC_RES *self){
- return xcc_next_item(self);
- }
- static XCC_ITEM *new_XCC_ITEM(){
- XccError(XCC_ERROR_INVALID_ARG, "You can't create new Item objects. You must use call Result.next_item()");
- return NULL;
- }
- static void delete_XCC_ITEM(XCC_ITEM *self){
- xcc_free_item(self);
- }
- static char const *XCC_ITEM_to_string(XCC_ITEM *self){
- return xcc_as_string(self);
- }
- static double XCC_ITEM_to_double(XCC_ITEM *self){
- return xcc_as_double(self);
- }
- /*@/usr/share/swig1.3/python/pymacros.swg,66,SWIG_define@*/
- #define SWIG_From_double PyFloat_FromDouble
- /*@@*/
- static int XCC_ITEM_to_int(XCC_ITEM *self){
- return xcc_as_int(self);
- }
- static XCC_SCHEMA_TYPE XCC_ITEM_type(XCC_ITEM *self){
- return xcc_item_type(self);
- }
- static XCC_CONTENT *new_XCC_CONTENT(){
- XccError(XCC_ERROR_INVALID_ARG, "You can't create new Content objects. You must use methods from Sesion");
- return NULL;
- }
- static void delete_XCC_CONTENT(XCC_CONTENT *self){
- xcc_free_content(self);
- }
- static void XCC_CONTENT_clear_collections(XCC_CONTENT *self){
- xcc_clear_collections(self);
- }
- static void XCC_CONTENT_clear_permissions(XCC_CONTENT *self){
- xcc_clear_permissions(self);
- }
- static void XCC_CONTENT_add_collection(XCC_CONTENT *self,char const *col){
- XCC_ERROR_CODE ret = xcc_content_addcol(self, col);
- if(ret != XCC_OK) {
- XccError(ret, xcc_error_message(ret));
- }
- }
- static void XCC_CONTENT_add_permission(XCC_CONTENT *self,int capability,char const *role){
- XCC_ERROR_CODE ret = xcc_content_addperm(self, capability, role);
- if(ret != XCC_OK) {
- XccError(ret, xcc_error_message(ret));
- }
- }
- static xcc_off_t XCC_CONTENT_insert(XCC_CONTENT *self){
- xcc_off_t bytes = xcc_insert_content(self);
- if(!bytes) {
- XccError(xcc_content_errcode(self), xcc_content_error(self));
- }
- return bytes;
- }
- static void XCC_CONTENT_set_file_name(XCC_CONTENT *self,char const *fname){
- XCC_ERROR_CODE ret = xcc_content_setop(self, XCC_CONTENT_OPT_FILE, fname);
- if(ret != XCC_OK) {
- XccError(ret, xcc_error_message(ret));
- }
- }
- static void XCC_CONTENT_set_data(XCC_CONTENT *self,char const *str){
- XCC_ERROR_CODE ret = xcc_content_setop(self, XCC_CONTENT_OPT_DATA, str, -1L);
- if(ret != XCC_OK) {
- XccError(ret, xcc_error_message(ret));
- }
- }
- static void XCC_CONTENT_set_namespace(XCC_CONTENT *self,char const *ns){
- XCC_ERROR_CODE ret = xcc_content_setop(self, XCC_CONTENT_OPT_NS, ns);
- if(ret != XCC_OK) {
- XccError(ret, xcc_error_message(ret));
- }
- }
- static void XCC_CONTENT_set_uri(XCC_CONTENT *self,char const *uri){
- XCC_ERROR_CODE ret = xcc_content_setop(self, XCC_CONTENT_OPT_URI, uri);
- if(ret != XCC_OK) {
- XccError(ret, xcc_error_message(ret));
- }
- }
- static void XCC_CONTENT_set_timeout(XCC_CONTENT *self,int seconds){
- XCC_ERROR_CODE ret = xcc_content_setop(self, XCC_CONTENT_OPT_TIMEOUT, seconds);
- if(ret != XCC_OK) {
- XccError(ret, xcc_error_message(ret));
- }
- }
- static void XCC_CONTENT_set_format(XCC_CONTENT *self,int fmt){
- XCC_ERROR_CODE ret = xcc_content_setop(self, XCC_CONTENT_OPT_FORMAT, fmt);
- if(ret != XCC_OK) {
- XccError(ret, xcc_error_message(ret));
- }
- }
- static void XCC_CONTENT_set_repair(XCC_CONTENT *self,int rpr){
- XCC_ERROR_CODE ret = xcc_content_setop(self, XCC_CONTENT_OPT_REPAIR, rpr);
- if(ret != XCC_OK) {
- XccError(ret, xcc_error_message(ret));
- }
- }
- static void XCC_CONTENT_set_quality(XCC_CONTENT *self,int qlty){
- XCC_ERROR_CODE ret = xcc_content_setop(self, XCC_CONTENT_OPT_QUALITY, qlty);
- if(ret != XCC_OK) {
- XccError(ret, xcc_error_message(ret));
- }
- }
- #ifdef __cplusplus
- extern "C" {
- #endif
- static PyObject *_wrap_new_Session(PyObject *self, PyObject *args) {
- PyObject *resultobj;
- char *arg1 = (char *) 0 ;
- char *arg2 = (char *) 0 ;
- char *arg3 = (char *) 0 ;
- char *arg4 = (char *) 0 ;
- int arg5 ;
- XCC_SESS *result;
- PyObject * obj0 = 0 ;
- PyObject * obj1 = 0 ;
- PyObject * obj2 = 0 ;
- PyObject * obj3 = 0 ;
- PyObject * obj4 = 0 ;
-
- if(!PyArg_ParseTuple(args,(char *)"OOOOO:new_Session",&obj0,&obj1,&obj2,&obj3,&obj4)) goto fail;
- if (!SWIG_AsCharPtr(obj0, (char**)&arg1)) {
- SWIG_arg_fail(1);SWIG_fail;
- }
- if (!SWIG_AsCharPtr(obj1, (char**)&arg2)) {
- SWIG_arg_fail(2);SWIG_fail;
- }
- if (!SWIG_AsCharPtr(obj2,…
Large files files are truncated, but you can click here to view the full file