16#define SWIG_PYTHON_DIRECTOR_NO_VTABLE
21template<
typename T>
class SwigValueWrapper {
22 struct SwigMovePointer {
24 SwigMovePointer(T *p) : ptr(p) { }
25 ~SwigMovePointer() {
delete ptr; }
26 SwigMovePointer& operator=(SwigMovePointer& rhs) { T* oldptr = ptr; ptr = 0;
delete oldptr; ptr = rhs.ptr; rhs.ptr = 0;
return *
this; }
28 SwigValueWrapper& operator=(
const SwigValueWrapper<T>& rhs);
29 SwigValueWrapper(
const SwigValueWrapper<T>& rhs);
31 SwigValueWrapper() : pointer(0) { }
32 SwigValueWrapper& operator=(
const T& t) { SwigMovePointer tmp(
new T(t)); pointer = tmp;
return *
this; }
33 operator T&()
const {
return *pointer.ptr; }
34 T *operator&() {
return pointer.ptr; }
37template <
typename T> T SwigValueInit() {
48#ifndef SWIGTEMPLATEDISAMBIGUATOR
49# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
50# define SWIGTEMPLATEDISAMBIGUATOR template
51# elif defined(__HP_aCC)
54# define SWIGTEMPLATEDISAMBIGUATOR template
56# define SWIGTEMPLATEDISAMBIGUATOR
62# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
63# define SWIGINLINE inline
72# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
73# define SWIGUNUSED __attribute__ ((__unused__))
78# define SWIGUNUSED __attribute__ ((__unused__))
84#ifndef SWIG_MSC_UNSUPPRESS_4505
86# pragma warning(disable : 4505)
92# define SWIGUNUSEDPARM(p)
94# define SWIGUNUSEDPARM(p) p SWIGUNUSED
100# define SWIGINTERN static SWIGUNUSED
104#ifndef SWIGINTERNINLINE
105# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
110# if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
111# ifndef GCC_HASCLASSVISIBILITY
112# define GCC_HASCLASSVISIBILITY
118# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
119# if defined(STATIC_LINKED)
122# define SWIGEXPORT __declspec(dllexport)
125# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
126# define SWIGEXPORT __attribute__ ((visibility("default")))
135# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
136# define SWIGSTDCALL __stdcall
143#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
144# define _CRT_SECURE_NO_DEPRECATE
148#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
149# define _SCL_SECURE_NO_DEPRECATE
153#if defined(__APPLE__) && !defined(__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES)
154# define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES 0
162#ifdef __INTEL_COMPILER
163# pragma warning disable 592
167#if defined(__GNUC__) && defined(_WIN32) && !defined(SWIG_PYTHON_NO_HYPOT_WORKAROUND)
172#if defined(_DEBUG) && defined(SWIG_PYTHON_INTERPRETER_NO_DEBUG)
190#define SWIG_RUNTIME_VERSION "4"
193#ifdef SWIG_TYPE_TABLE
194# define SWIG_QUOTE_STRING(x) #x
195# define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x)
196# define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE)
198# define SWIG_TYPE_TABLE_NAME
211# define SWIGRUNTIME SWIGINTERN
214#ifndef SWIGRUNTIMEINLINE
215# define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE
219#ifndef SWIG_BUFFER_SIZE
220# define SWIG_BUFFER_SIZE 1024
224#define SWIG_POINTER_DISOWN 0x1
225#define SWIG_CAST_NEW_MEMORY 0x2
226#define SWIG_POINTER_NO_NULL 0x4
229#define SWIG_POINTER_OWN 0x1
312#define SWIG_ERROR (-1)
313#define SWIG_IsOK(r) (r >= 0)
314#define SWIG_ArgError(r) ((r != SWIG_ERROR) ? r : SWIG_TypeError)
317#define SWIG_CASTRANKLIMIT (1 << 8)
319#define SWIG_NEWOBJMASK (SWIG_CASTRANKLIMIT << 1)
321#define SWIG_TMPOBJMASK (SWIG_NEWOBJMASK << 1)
323#define SWIG_BADOBJ (SWIG_ERROR)
324#define SWIG_OLDOBJ (SWIG_OK)
325#define SWIG_NEWOBJ (SWIG_OK | SWIG_NEWOBJMASK)
326#define SWIG_TMPOBJ (SWIG_OK | SWIG_TMPOBJMASK)
328#define SWIG_AddNewMask(r) (SWIG_IsOK(r) ? (r | SWIG_NEWOBJMASK) : r)
329#define SWIG_DelNewMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_NEWOBJMASK) : r)
330#define SWIG_IsNewObj(r) (SWIG_IsOK(r) && (r & SWIG_NEWOBJMASK))
331#define SWIG_AddTmpMask(r) (SWIG_IsOK(r) ? (r | SWIG_TMPOBJMASK) : r)
332#define SWIG_DelTmpMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_TMPOBJMASK) : r)
333#define SWIG_IsTmpObj(r) (SWIG_IsOK(r) && (r & SWIG_TMPOBJMASK))
336#if defined(SWIG_CASTRANK_MODE)
337# ifndef SWIG_TypeRank
338# define SWIG_TypeRank unsigned long
340# ifndef SWIG_MAXCASTRANK
341# define SWIG_MAXCASTRANK (2)
343# define SWIG_CASTRANKMASK ((SWIG_CASTRANKLIMIT) -1)
344# define SWIG_CastRank(r) (r & SWIG_CASTRANKMASK)
349 return SWIG_IsOK(r) ? SWIG_CastRank(r) + 1 : 0;
352# define SWIG_AddCast(r) (r)
353# define SWIG_CheckState(r) (SWIG_IsOK(r) ? 1 : 0)
363typedef void *(*swig_converter_func)(
void *,
int *);
405 const char *f2,
const char *l2) {
406 for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
407 while ((*f1 ==
' ') && (f1 != l1)) ++f1;
408 while ((*f2 ==
' ') && (f2 != l2)) ++f2;
409 if (*f1 != *f2)
return (*f1 > *f2) ? 1 : -1;
411 return (
int)((l1 - f1) - (l2 - f2));
421 const char* te = tb + strlen(tb);
423 while (equiv != 0 && *ne) {
424 for (nb = ne; *ne; ++ne) {
425 if (*ne ==
'|')
break;
450 if (strcmp(iter->
type->
name, c) == 0) {
451 if (iter == ty->
cast)
477 if (iter->
type == from) {
478 if (iter == ty->
cast)
510 if (!ty || !ty->
dcast)
return ty;
511 while (ty && (ty->
dcast)) {
512 ty = (*ty->
dcast)(ptr);
536 if (!type)
return NULL;
537 if (type->
str != NULL) {
538 const char *last_name = type->
str;
540 for (s = type->
str; *s; s++)
541 if (*s ==
'|') last_name = s+1;
589 size_t r = iter->
size - 1;
592 size_t i = (l + r) >> 1;
593 const char *iname = iter->
types[i]->
name;
595 int compare = strcmp(
name, iname);
597 return iter->
types[i];
598 }
else if (compare < 0) {
604 }
else if (compare > 0) {
613 }
while (iter !=
end);
640 for (; i < iter->
size; ++i) {
642 return iter->
types[i];
645 }
while (iter !=
end);
657 static const char hex[17] =
"0123456789abcdef";
658 const unsigned char *u = (
unsigned char *) ptr;
659 const unsigned char *eu = u + sz;
660 for (; u != eu; ++u) {
661 unsigned char uu = *u;
662 *(c++) = hex[(uu & 0xf0) >> 4];
663 *(c++) = hex[uu & 0xf];
673 unsigned char *u = (
unsigned char *) ptr;
674 const unsigned char *eu = u + sz;
675 for (; u != eu; ++u) {
678 if ((d >=
'0') && (d <=
'9'))
679 uu = (
unsigned char)((d -
'0') << 4);
680 else if ((d >=
'a') && (d <=
'f'))
681 uu = (
unsigned char)((d - (
'a'-10)) << 4);
685 if ((d >=
'0') && (d <=
'9'))
686 uu |= (
unsigned char)(d -
'0');
687 else if ((d >=
'a') && (d <=
'f'))
688 uu |= (
unsigned char)(d - (
'a'-10));
702 if ((2*
sizeof(
void *) + 2) > bsz)
return 0;
705 if (strlen(
name) + 1 > (bsz - (r - buff)))
return 0;
713 if (strcmp(c,
"NULL") == 0) {
726 size_t lname = (
name ? strlen(
name) : 0);
727 if ((2*sz + 2 + lname) > bsz)
return 0;
731 strncpy(r,
name,lname+1);
741 if (strcmp(c,
"NULL") == 0) {
756#define SWIG_UnknownError -1
757#define SWIG_IOError -2
758#define SWIG_RuntimeError -3
759#define SWIG_IndexError -4
760#define SWIG_TypeError -5
761#define SWIG_DivisionByZero -6
762#define SWIG_OverflowError -7
763#define SWIG_SyntaxError -8
764#define SWIG_ValueError -9
765#define SWIG_SystemError -10
766#define SWIG_AttributeError -11
767#define SWIG_MemoryError -12
768#define SWIG_NullReferenceError -13
773#if PY_VERSION_HEX >= 0x03000000
775#define PyClass_Check(obj) PyObject_IsInstance(obj, (PyObject *)&PyType_Type)
776#define PyInt_Check(x) PyLong_Check(x)
777#define PyInt_AsLong(x) PyLong_AsLong(x)
778#define PyInt_FromLong(x) PyLong_FromLong(x)
779#define PyInt_FromSize_t(x) PyLong_FromSize_t(x)
780#define PyString_Check(name) PyBytes_Check(name)
781#define PyString_FromString(x) PyUnicode_FromString(x)
782#define PyString_Format(fmt, args) PyUnicode_Format(fmt, args)
783#define PyString_AsString(str) PyBytes_AsString(str)
784#define PyString_Size(str) PyBytes_Size(str)
785#define PyString_InternFromString(key) PyUnicode_InternFromString(key)
786#define Py_TPFLAGS_HAVE_CLASS Py_TPFLAGS_BASETYPE
787#define PyString_AS_STRING(x) PyUnicode_AS_STRING(x)
788#define _PyLong_FromSsize_t(x) PyLong_FromSsize_t(x)
793# define Py_TYPE(op) ((op)->ob_type)
798#if PY_VERSION_HEX >= 0x03000000
799# define SWIG_Python_str_FromFormat PyUnicode_FromFormat
801# define SWIG_Python_str_FromFormat PyString_FromFormat
811#if PY_VERSION_HEX >= 0x03030000
812 return (
char *)PyUnicode_AsUTF8(str);
813#elif PY_VERSION_HEX >= 0x03000000
815 str = PyUnicode_AsUTF8String(str);
819 if (PyBytes_AsStringAndSize(str, &cstr, &len) != -1) {
820 newstr = (
char *)
malloc(len+1);
822 memcpy(newstr, cstr, len+1);
828 return PyString_AsString(str);
832#if PY_VERSION_HEX >= 0x03030000 || PY_VERSION_HEX < 0x03000000
833# define SWIG_Python_str_DelForPy3(x)
835# define SWIG_Python_str_DelForPy3(x) free( (void*) (x) )
842#if PY_VERSION_HEX >= 0x03000000
843 return PyUnicode_FromString(c);
845 return PyString_FromString(c);
850# define PyObject_DEL PyObject_Del
855# define SWIGPY_USE_CAPSULE
856# define SWIGPY_CAPSULE_NAME ("swig_runtime_data" SWIG_RUNTIME_VERSION ".type_pointer_capsule" SWIG_TYPE_TABLE_NAME)
858#if PY_VERSION_HEX < 0x03020000
859#define PyDescr_TYPE(x) (((PyDescrObject *)(x))->d_type)
860#define PyDescr_NAME(x) (((PyDescrObject *)(x))->d_name)
861#define Py_hash_t long
873 type = PyExc_MemoryError;
876 type = PyExc_IOError;
879 type = PyExc_RuntimeError;
882 type = PyExc_IndexError;
885 type = PyExc_TypeError;
888 type = PyExc_ZeroDivisionError;
891 type = PyExc_OverflowError;
894 type = PyExc_SyntaxError;
897 type = PyExc_ValueError;
900 type = PyExc_SystemError;
903 type = PyExc_AttributeError;
906 type = PyExc_RuntimeError;
917 PyObject *traceback = 0;
919 if (PyErr_Occurred())
920 PyErr_Fetch(&type, &
value, &traceback);
922 PyObject *old_str = PyObject_Str(
value);
927 PyErr_Format(type,
"%s %s", tmp, mesg);
929 PyErr_Format(type,
"%s", mesg);
934 PyErr_SetString(PyExc_RuntimeError, mesg);
944 error = PyErr_Occurred();
945 return error && PyErr_GivenExceptionMatches(error, PyExc_TypeError);
954 PyObject *type = NULL, *
value = NULL, *traceback = NULL;
955 PyErr_Fetch(&type, &
value, &traceback);
956#if PY_VERSION_HEX >= 0x03000000
957 newvalue = PyUnicode_FromFormat(
"%S\nAdditional information:\n%s",
value,
message);
959 newvalue = PyString_FromFormat(
"%s\nAdditional information:\n%s", PyString_AsString(
value),
message);
962 PyErr_Restore(type, newvalue, traceback);
965 PyErr_SetString(PyExc_TypeError,
message);
969#if defined(SWIG_PYTHON_NO_THREADS)
970# if defined(SWIG_PYTHON_THREADS)
971# undef SWIG_PYTHON_THREADS
974#if defined(SWIG_PYTHON_THREADS)
975# if !defined(SWIG_PYTHON_USE_GIL) && !defined(SWIG_PYTHON_NO_USE_GIL)
976# define SWIG_PYTHON_USE_GIL
978# if defined(SWIG_PYTHON_USE_GIL)
979# ifndef SWIG_PYTHON_INITIALIZE_THREADS
980# define SWIG_PYTHON_INITIALIZE_THREADS PyEval_InitThreads()
983 class SWIG_Python_Thread_Block {
985 PyGILState_STATE state;
987 void end() {
if (
status) { PyGILState_Release(state);
status =
false;} }
988 SWIG_Python_Thread_Block() :
status(true), state(PyGILState_Ensure()) {}
989 ~SWIG_Python_Thread_Block() {
end(); }
991 class SWIG_Python_Thread_Allow {
995 void end() {
if (
status) { PyEval_RestoreThread(save);
status =
false; }}
996 SWIG_Python_Thread_Allow() :
status(true), save(PyEval_SaveThread()) {}
997 ~SWIG_Python_Thread_Allow() {
end(); }
999# define SWIG_PYTHON_THREAD_BEGIN_BLOCK SWIG_Python_Thread_Block _swig_thread_block
1000# define SWIG_PYTHON_THREAD_END_BLOCK _swig_thread_block.end()
1001# define SWIG_PYTHON_THREAD_BEGIN_ALLOW SWIG_Python_Thread_Allow _swig_thread_allow
1002# define SWIG_PYTHON_THREAD_END_ALLOW _swig_thread_allow.end()
1004# define SWIG_PYTHON_THREAD_BEGIN_BLOCK PyGILState_STATE _swig_thread_block = PyGILState_Ensure()
1005# define SWIG_PYTHON_THREAD_END_BLOCK PyGILState_Release(_swig_thread_block)
1006# define SWIG_PYTHON_THREAD_BEGIN_ALLOW PyThreadState *_swig_thread_allow = PyEval_SaveThread()
1007# define SWIG_PYTHON_THREAD_END_ALLOW PyEval_RestoreThread(_swig_thread_allow)
1010# if !defined(SWIG_PYTHON_INITIALIZE_THREADS)
1011# define SWIG_PYTHON_INITIALIZE_THREADS
1013# if !defined(SWIG_PYTHON_THREAD_BEGIN_BLOCK)
1014# define SWIG_PYTHON_THREAD_BEGIN_BLOCK
1016# if !defined(SWIG_PYTHON_THREAD_END_BLOCK)
1017# define SWIG_PYTHON_THREAD_END_BLOCK
1019# if !defined(SWIG_PYTHON_THREAD_BEGIN_ALLOW)
1020# define SWIG_PYTHON_THREAD_BEGIN_ALLOW
1022# if !defined(SWIG_PYTHON_THREAD_END_ALLOW)
1023# define SWIG_PYTHON_THREAD_END_ALLOW
1027# define SWIG_PYTHON_INITIALIZE_THREADS
1028# define SWIG_PYTHON_THREAD_BEGIN_BLOCK
1029# define SWIG_PYTHON_THREAD_END_BLOCK
1030# define SWIG_PYTHON_THREAD_BEGIN_ALLOW
1031# define SWIG_PYTHON_THREAD_END_ALLOW
1047#define SWIG_PY_POINTER 4
1048#define SWIG_PY_BINARY 5
1074#if PY_VERSION_HEX < 0x02070000
1075# error "This version of SWIG only supports Python >= 2.7"
1078#if PY_VERSION_HEX >= 0x03000000 && PY_VERSION_HEX < 0x03020000
1079# error "This version of SWIG only supports Python 3 >= 3.2"
1085#define SWIG_Python_ConvertPtr(obj, pptr, type, flags) SWIG_Python_ConvertPtrAndOwn(obj, pptr, type, flags, 0)
1086#define SWIG_ConvertPtr(obj, pptr, type, flags) SWIG_Python_ConvertPtr(obj, pptr, type, flags)
1087#define SWIG_ConvertPtrAndOwn(obj,pptr,type,flags,own) SWIG_Python_ConvertPtrAndOwn(obj, pptr, type, flags, own)
1089#ifdef SWIGPYTHON_BUILTIN
1090#define SWIG_NewPointerObj(ptr, type, flags) SWIG_Python_NewPointerObj(self, ptr, type, flags)
1092#define SWIG_NewPointerObj(ptr, type, flags) SWIG_Python_NewPointerObj(NULL, ptr, type, flags)
1095#define SWIG_InternalNewPointerObj(ptr, type, flags) SWIG_Python_NewPointerObj(NULL, ptr, type, flags)
1097#define SWIG_CheckImplicit(ty) SWIG_Python_CheckImplicit(ty)
1098#define SWIG_AcquirePtr(ptr, src) SWIG_Python_AcquirePtr(ptr, src)
1099#define swig_owntype int
1102#define SWIG_ConvertPacked(obj, ptr, sz, ty) SWIG_Python_ConvertPacked(obj, ptr, sz, ty)
1103#define SWIG_NewPackedObj(ptr, sz, type) SWIG_Python_NewPackedObj(ptr, sz, type)
1106#define SWIG_ConvertInstance(obj, pptr, type, flags) SWIG_ConvertPtr(obj, pptr, type, flags)
1107#define SWIG_NewInstanceObj(ptr, type, flags) SWIG_NewPointerObj(ptr, type, flags)
1110#define SWIG_ConvertFunctionPtr(obj, pptr, type) SWIG_Python_ConvertFunctionPtr(obj, pptr, type)
1111#define SWIG_NewFunctionPtrObj(ptr, type) SWIG_Python_NewPointerObj(NULL, ptr, type, 0)
1114#define SWIG_ConvertMember(obj, ptr, sz, ty) SWIG_Python_ConvertPacked(obj, ptr, sz, ty)
1115#define SWIG_NewMemberObj(ptr, sz, type) SWIG_Python_NewPackedObj(ptr, sz, type)
1120#define SWIG_GetModule(clientdata) SWIG_Python_GetModule(clientdata)
1121#define SWIG_SetModule(clientdata, pointer) SWIG_Python_SetModule(pointer)
1122#define SWIG_NewClientData(obj) SwigPyClientData_New(obj)
1124#define SWIG_SetErrorObj SWIG_Python_SetErrorObj
1125#define SWIG_SetErrorMsg SWIG_Python_SetErrorMsg
1126#define SWIG_ErrorType(code) SWIG_Python_ErrorType(code)
1127#define SWIG_Error(code, msg) SWIG_Python_SetErrorMsg(SWIG_ErrorType(code), msg)
1128#define SWIG_fail goto fail
1138 PyErr_SetObject(errtype, obj);
1146 PyErr_SetString(errtype, msg);
1150#define SWIG_Python_Raise(obj, type, desc) SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(desc), obj)
1154#if defined(SWIGPYTHON_BUILTIN)
1157SwigPyBuiltin_AddPublicSymbol(PyObject *seq,
const char *key) {
1158 PyObject *s = PyString_InternFromString(key);
1159 PyList_Append(seq, s);
1165 PyDict_SetItemString(d,
name, obj);
1167 if (public_interface)
1168 SwigPyBuiltin_AddPublicSymbol(public_interface,
name);
1175 PyDict_SetItemString(d,
name, obj);
1187 }
else if (result == Py_None) {
1191 if (!PyList_Check(result)) {
1192 PyObject *o2 = result;
1193 result = PyList_New(1);
1194 PyList_SetItem(result, 0, o2);
1196 PyList_Append(result,obj);
1211 PyErr_Format(PyExc_TypeError,
"%s expected %s%d arguments, got none",
1216 if (!PyTuple_Check(args)) {
1217 if (min <= 1 && max >= 1) {
1220 for (i = 1; i <
max; ++i) {
1225 PyErr_SetString(PyExc_SystemError,
"UnpackTuple() argument list is not a tuple");
1228 Py_ssize_t l = PyTuple_GET_SIZE(args);
1230 PyErr_Format(PyExc_TypeError,
"%s expected %s%d arguments, got %d",
1233 }
else if (l >
max) {
1234 PyErr_Format(PyExc_TypeError,
"%s expected %s%d arguments, got %d",
1239 for (i = 0; i < l; ++i) {
1240 objs[i] = PyTuple_GET_ITEM(args, i);
1242 for (; l <
max; ++l) {
1254 assert(PyDict_Check(kwargs));
1255 if (PyDict_Size(kwargs) > 0) {
1256 PyErr_Format(PyExc_TypeError,
"%s() does not take keyword arguments",
name);
1264#define SWIG_Python_CallFunctor(functor, obj) PyObject_CallFunctionObjArgs(functor, obj, NULL);
1271#define SWIG_STATIC_POINTER(var) var
1273#define SWIG_STATIC_POINTER(var) var = 0; if (!var) var
1281#define SWIG_POINTER_NOSHADOW (SWIG_POINTER_OWN << 1)
1282#define SWIG_POINTER_NEW (SWIG_POINTER_NOSHADOW | SWIG_POINTER_OWN)
1284#define SWIG_POINTER_IMPLICIT_CONV (SWIG_POINTER_DISOWN << 1)
1286#define SWIG_BUILTIN_TP_INIT (SWIG_POINTER_OWN << 2)
1287#define SWIG_BUILTIN_INIT (SWIG_BUILTIN_TP_INIT | SWIG_POINTER_OWN)
1298 PyObject *none = Py_None;
1321 PyErr_SetString(PyExc_TypeError,
"Implicit conversion is prohibited for explicit constructors.");
1328 PyObject *klass = data ? data->
klass : 0;
1329 return (klass ? klass : PyExc_RuntimeError);
1342 Py_INCREF(data->
klass);
1344 if (PyClass_Check(obj)) {
1349 data->
newraw = PyObject_GetAttrString(data->
klass,
"__new__");
1352 data->
newargs = PyTuple_New(1);
1353 PyTuple_SetItem(data->
newargs, 0, obj);
1360 data->
destroy = PyObject_GetAttrString(data->
klass,
"__swig_destroy__");
1361 if (PyErr_Occurred()) {
1368 flags = PyCFunction_GET_FLAGS(data->
destroy);
1369 data->
delargs = !(flags & (METH_O));
1381 Py_XDECREF(data->
newraw);
1394#ifdef SWIGPYTHON_BUILTIN
1400#ifdef SWIGPYTHON_BUILTIN
1403SwigPyObject_get___dict__(PyObject *v, PyObject *
SWIGUNUSEDPARM(args))
1408 sobj->dict = PyDict_New();
1410 Py_INCREF(sobj->dict);
1419 return PyLong_FromVoidPtr(v->
ptr);
1425 PyObject *res = NULL;
1426 PyObject *args = PyTuple_New(1);
1431#if PY_VERSION_HEX >= 0x03000000
1432 res = PyUnicode_Format(ofmt,args);
1434 res = PyString_Format(ofmt,args);
1463# if PY_VERSION_HEX >= 0x03000000
1464 PyObject *joined = PyUnicode_Concat(repr, nrep);
1469 PyString_ConcatAndDel(&repr,nrep);
1488 return (i < j) ? -1 : ((i > j) ? 1 : 0);
1496 if( op != Py_EQ && op != Py_NE ) {
1497 Py_INCREF(Py_NotImplemented);
1498 return Py_NotImplemented;
1507#ifdef SWIGPYTHON_BUILTIN
1512 assert(SwigPyObject_stype);
1528#ifdef SWIGPYTHON_BUILTIN
1530 if (PyType_IsSubtype(op->ob_type, target_tp))
1532 return (strcmp(op->ob_type->tp_name,
"SwigPyObject") == 0);
1535 || (strcmp(
Py_TYPE(op)->tp_name,
"SwigPyObject") == 0);
1550 PyObject *destroy = data ? data->
destroy : 0;
1562 PyObject *type = NULL, *
value = NULL, *traceback = NULL;
1563 PyErr_Fetch(&type, &
value, &traceback);
1571 PyCFunction meth = PyCFunction_GET_FUNCTION(destroy);
1572 PyObject *mself = PyCFunction_GET_SELF(destroy);
1573 res = ((*meth)(mself, v));
1576 PyErr_WriteUnraisable(destroy);
1578 PyErr_Restore(type,
value, traceback);
1582#if !defined(SWIG_PYTHON_SILENT_MEMLEAK)
1585 printf(
"swig/python detected a memory leak of type '%s', no destructor found.\n", (
name ?
name :
"unknown"));
1598 PyErr_SetString(PyExc_TypeError,
"Attempt to append a non SwigPyObject");
1611 Py_INCREF(sobj->
next);
1638 if (!PyArg_UnpackTuple(args,
"own", 0, 1, &val)) {
1642 PyObject *obj = PyBool_FromLong(sobj->
own);
1644 if (PyObject_IsTrue(val)) {
1658 {
"own",
SwigPyObject_own, METH_VARARGS,
"returns/sets ownership of the pointer"},
1667 static char swigobject_doc[] =
"Swig object carries a C/C++ instance pointer";
1669 static PyNumberMethods SwigPyObject_as_number = {
1674#
if PY_VERSION_HEX < 0x03000000
1690#
if PY_VERSION_HEX < 0x03000000
1694#if PY_VERSION_HEX < 0x03000000
1700#if PY_VERSION_HEX < 0x03000000
1704#if PY_VERSION_HEX >= 0x03050000
1705 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1706#elif PY_VERSION_HEX >= 0x03000000
1707 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1709 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1713 static PyTypeObject swigpyobject_type;
1714 static int type_init = 0;
1716 const PyTypeObject tmp = {
1717#if PY_VERSION_HEX >= 0x03000000
1718 PyVarObject_HEAD_INIT(NULL, 0)
1720 PyObject_HEAD_INIT(NULL)
1730#if PY_VERSION_HEX >= 0x03000000
1736 &SwigPyObject_as_number,
1742 PyObject_GenericGetAttr,
1773#
if PY_VERSION_HEX >= 0x03040000
1776#
if PY_VERSION_HEX >= 0x03080000
1779#
if (PY_VERSION_HEX >= 0x03080000) && (PY_VERSION_HEX < 0x03090000)
1790 swigpyobject_type = tmp;
1792 if (PyType_Ready(&swigpyobject_type) < 0)
1795 return &swigpyobject_type;
1808 return (PyObject *)sobj;
1849 int s = (i < j) ? -1 : ((i > j) ? 1 : 0);
1850 return s ? s : strncmp((
const char *)v->
pack, (
const char *)w->
pack, 2*v->
size);
1864 || (strcmp((op)->ob_type->tp_name,
"SwigPyPacked") == 0);
1879 static char swigpacked_doc[] =
"Swig object carries a C/C++ instance pointer";
1880 static PyTypeObject swigpypacked_type;
1881 static int type_init = 0;
1883 const PyTypeObject tmp = {
1884#if PY_VERSION_HEX>=0x03000000
1885 PyVarObject_HEAD_INIT(NULL, 0)
1887 PyObject_HEAD_INIT(NULL)
1897#if PY_VERSION_HEX>=0x03000000
1909 PyObject_GenericGetAttr,
1940#
if PY_VERSION_HEX >= 0x03040000
1943#
if PY_VERSION_HEX >= 0x03080000
1946#
if (PY_VERSION_HEX >= 0x03080000) && (PY_VERSION_HEX < 0x03090000)
1957 swigpypacked_type = tmp;
1959 if (PyType_Ready(&swigpypacked_type) < 0)
1962 return &swigpypacked_type;
1970 void *pack =
malloc(size);
1972 memcpy(pack, ptr, size);
1981 return (PyObject *) sobj;
1989 if (sobj->
size != size)
return 0;
1990 memcpy(ptr, sobj->
pack, size);
2014#if PY_VERSION_HEX>=0x03000000
2015#define SWIG_PYTHON_SLOW_GETSET_THIS
2026#ifdef SWIGPYTHON_BUILTIN
2028# ifdef PyWeakref_CheckProxy
2029 if (PyWeakref_CheckProxy(pyobj)) {
2030 pyobj = PyWeakref_GET_OBJECT(pyobj);
2040#if !defined(SWIG_PYTHON_SLOW_GETSET_THIS)
2041 if (PyInstance_Check(pyobj)) {
2042 obj = _PyInstance_Lookup(pyobj,
SWIG_This());
2044 PyObject **dictptr = _PyObject_GetDictPtr(pyobj);
2045 if (dictptr != NULL) {
2046 PyObject *dict = *dictptr;
2047 obj = dict ? PyDict_GetItem(dict,
SWIG_This()) : 0;
2049#ifdef PyWeakref_CheckProxy
2050 if (PyWeakref_CheckProxy(pyobj)) {
2051 PyObject *wobj = PyWeakref_GET_OBJECT(pyobj);
2055 obj = PyObject_GetAttr(pyobj,
SWIG_This());
2059 if (PyErr_Occurred()) PyErr_Clear();
2065 obj = PyObject_GetAttr(pyobj,
SWIG_This());
2069 if (PyErr_Occurred()) PyErr_Clear();
2089 int oldown = sobj->
own;
2107 if (obj == Py_None && !implicit_conv) {
2119 void *vptr = sobj->
ptr;
2124 if (ptr) *ptr = vptr;
2144 if (ptr) *ptr = vptr;
2150 *own = *own | sobj->
own;
2156 if (implicit_conv) {
2159 PyObject *klass = data->
klass;
2165 if (PyErr_Occurred()) {
2190 if (!
SWIG_IsOK(res) && obj == Py_None) {
2193 if (PyErr_Occurred())
2206 if (!PyCFunction_Check(obj)) {
2213 const char *doc = (((PyCFunctionObject *)obj) -> m_ml -> ml_doc);
2214 const char *desc = doc ? strstr(doc,
"swig_ptr: ") : 0;
2260 PyObject *newraw = data->
newraw;
2262 inst = PyObject_Call(newraw, data->
newargs, NULL);
2264#if !defined(SWIG_PYTHON_SLOW_GETSET_THIS)
2265 PyObject **dictptr = _PyObject_GetDictPtr(inst);
2266 if (dictptr != NULL) {
2267 PyObject *dict = *dictptr;
2269 dict = PyDict_New();
2271 PyDict_SetItem(dict,
SWIG_This(), swig_this);
2275 if (PyObject_SetAttr(inst,
SWIG_This(), swig_this) == -1) {
2282#if PY_VERSION_HEX >= 0x03000000
2283 PyObject *empty_args = PyTuple_New(0);
2285 PyObject *empty_kwargs = PyDict_New();
2287 inst = ((PyTypeObject *)data->
newargs)->tp_new((PyTypeObject *)data->
newargs, empty_args, empty_kwargs);
2288 Py_DECREF(empty_kwargs);
2290 if (PyObject_SetAttr(inst,
SWIG_This(), swig_this) == -1) {
2294 Py_TYPE(inst)->tp_flags &= ~Py_TPFLAGS_VALID_VERSION_TAG;
2298 Py_DECREF(empty_args);
2301 PyObject *dict = PyDict_New();
2303 PyDict_SetItem(dict,
SWIG_This(), swig_this);
2304 inst = PyInstance_NewRaw(data->
newargs, dict);
2315#if !defined(SWIG_PYTHON_SLOW_GETSET_THIS)
2316 PyObject **dictptr = _PyObject_GetDictPtr(inst);
2317 if (dictptr != NULL) {
2318 PyObject *dict = *dictptr;
2320 dict = PyDict_New();
2323 return PyDict_SetItem(dict,
SWIG_This(), swig_this);
2326 return PyObject_SetAttr(inst,
SWIG_This(), swig_this);
2360 if (clientdata && clientdata->
pytype) {
2365 PyObject *next_self = clientdata->
pytype->tp_alloc(clientdata->
pytype, 0);
2366 while (newobj->
next)
2368 newobj->
next = next_self;
2370#ifdef SWIGPYTHON_BUILTIN
2376#ifdef SWIGPYTHON_BUILTIN
2385 return (PyObject*) newobj;
2412#ifdef SWIG_LINK_RUNTIME
2413void *SWIG_ReturnGlobalTypeList(
void *);
2418 static void *type_pointer = (
void *)0;
2420 if (!type_pointer) {
2421#ifdef SWIG_LINK_RUNTIME
2422 type_pointer = SWIG_ReturnGlobalTypeList((
void *)0);
2425 if (PyErr_Occurred()) {
2427 type_pointer = (
void *)0;
2453#if PY_VERSION_HEX >= 0x03000000
2457 static PyMethodDef swig_empty_runtime_method_table[] = { {NULL, NULL, 0, NULL} };
2458 PyObject *module = Py_InitModule(
"swig_runtime_data" SWIG_RUNTIME_VERSION, swig_empty_runtime_method_table);
2461 if (pointer && module) {
2464 Py_XDECREF(pointer);
2480 PyObject *obj = PyDict_GetItem(cache, key);
2488 obj = PyCapsule_New((
void*) descriptor, NULL, NULL);
2489 PyDict_SetItem(cache, key, obj);
2500#define SWIG_POINTER_EXCEPTION 0
2501#define SWIG_arg_fail(arg) SWIG_Python_ArgFail(arg)
2502#define SWIG_MustGetPtr(p, type, argnum, flags) SWIG_Python_MustGetPtr(p, type, argnum, flags)
2507 if (PyErr_Occurred()) {
2509 PyObject *
value = 0;
2510 PyObject *traceback = 0;
2511 PyErr_Fetch(&type, &
value, &traceback);
2513 PyObject *old_str = PyObject_Str(
value);
2515 const char *errmesg = tmp ? tmp :
"Invalid error message";
2519 PyErr_Format(type,
"%s %s", mesg, errmesg);
2521 PyErr_Format(type,
"%s %s", errmesg, mesg);
2535 if (PyErr_Occurred()) {
2538 PyOS_snprintf(mesg,
sizeof(mesg),
"argument number %d:", argnum);
2550 return ty ? ty->
str :
"";
2557#if defined(SWIG_COBJECT_TYPES)
2561 PyErr_Format(PyExc_TypeError,
"a '%s' is expected, 'SwigPyObject(%s)' is received",
2568 const char *otype = (obj ? obj->ob_type->tp_name : 0);
2570 PyObject *str = PyObject_Str(obj);
2573 PyErr_Format(PyExc_TypeError,
"a '%s' is expected, '%s(%s)' is received",
2577 PyErr_Format(PyExc_TypeError,
"a '%s' is expected, '%s' is received",
2584 PyErr_Format(PyExc_TypeError,
"a '%s' is expected", type);
2586 PyErr_Format(PyExc_TypeError,
"unexpected type is received");
2597#if SWIG_POINTER_EXCEPTION
2607#ifdef SWIGPYTHON_BUILTIN
2609SWIG_Python_NonDynamicSetAttr(PyObject *obj, PyObject *
name, PyObject *
value) {
2610 PyTypeObject *tp = obj->ob_type;
2612 PyObject *encoded_name;
2616# ifdef Py_USING_UNICODE
2617 if (PyString_Check(
name)) {
2618 name = PyUnicode_Decode(PyString_AsString(
name), PyString_Size(
name), NULL, NULL);
2621 }
else if (!PyUnicode_Check(
name))
2623 if (!PyString_Check(
name))
2626 PyErr_Format(PyExc_TypeError,
"attribute name must be string, not '%.200s'",
name->ob_type->tp_name);
2633 if (PyType_Ready(tp) < 0)
2637 descr = _PyType_Lookup(tp,
name);
2640 f = descr->ob_type->tp_descr_set;
2642 if (PyString_Check(
name)) {
2643 encoded_name =
name;
2646 encoded_name = PyUnicode_AsUTF8String(
name);
2650 PyErr_Format(PyExc_AttributeError,
"'%.100s' object has no attribute '%.200s'", tp->tp_name, PyString_AsString(encoded_name));
2651 Py_DECREF(encoded_name);
2653 res = f(descr, obj,
value);
2669#define SWIG_exception_fail(code, msg) do { SWIG_Error(code, msg); SWIG_fail; } while(0)
2671#define SWIG_contract_assert(expr, msg) if (!(expr)) { SWIG_Error(SWIG_RuntimeError, msg); SWIG_fail; } else
2690 #define SWIG_exception(code, msg) do { SWIG_Error(code, msg); SWIG_fail;; } while(0)
2695#define SWIGTYPE_p_char swig_types[0]
2696#define SWIGTYPE_p_int swig_types[1]
2697#define SWIGTYPE_p_long_long swig_types[2]
2698#define SWIGTYPE_p_operations_research__KnapsackSolver swig_types[3]
2699#define SWIGTYPE_p_short swig_types[4]
2700#define SWIGTYPE_p_signed_char swig_types[5]
2701#define SWIGTYPE_p_unsigned_char swig_types[6]
2702#define SWIGTYPE_p_unsigned_int swig_types[7]
2703#define SWIGTYPE_p_unsigned_long_long swig_types[8]
2704#define SWIGTYPE_p_unsigned_short swig_types[9]
2707#define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
2708#define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
2712#ifdef SWIG_TypeQuery
2713# undef SWIG_TypeQuery
2715#define SWIG_TypeQuery SWIG_Python_TypeQuery
2720#if PY_VERSION_HEX >= 0x03000000
2721# define SWIG_init PyInit__pywrapknapsack_solver
2724# define SWIG_init init_pywrapknapsack_solver
2727#define SWIG_name "_pywrapknapsack_solver"
2729#define SWIGVERSION 0x040002
2730#define SWIG_VERSION SWIGVERSION
2733#define SWIG_as_voidptr(a) const_cast< void * >(static_cast< const void * >(a))
2734#define SWIG_as_voidptrptr(a) ((void)SWIG_as_voidptr(*a),reinterpret_cast< void** >(a))
2769 Py_XINCREF(item.
_obj);
2783 operator PyObject *()
const
2823#include "ortools/base/python-swig.h"
2832 return PyInt_FromLong((
long)
value);
2839 static int init = 0;
2852#if PY_VERSION_HEX>=0x03000000
2853#if defined(SWIG_PYTHON_STRICT_BYTE_CHAR)
2854 if (PyBytes_Check(obj))
2856 if (PyUnicode_Check(obj))
2859 if (PyString_Check(obj))
2862 char *cstr; Py_ssize_t len;
2864#if PY_VERSION_HEX>=0x03000000
2865#if !defined(SWIG_PYTHON_STRICT_BYTE_CHAR)
2866 if (!alloc && cptr) {
2873 obj = PyUnicode_AsUTF8String(obj);
2879 if (PyBytes_AsStringAndSize(obj, &cstr, &len) == -1)
2882 if (PyString_AsStringAndSize(obj, &cstr, &len) == -1)
2888 *cptr =
reinterpret_cast< char*
>(memcpy(
new char[len + 1], cstr,
sizeof(
char)*(len + 1)));
2895#if PY_VERSION_HEX>=0x03000000
2896#if defined(SWIG_PYTHON_STRICT_BYTE_CHAR)
2897 *cptr = PyBytes_AsString(obj);
2908 if (psize) *psize = len + 1;
2909#if PY_VERSION_HEX>=0x03000000 && !defined(SWIG_PYTHON_STRICT_BYTE_CHAR)
2914#if defined(SWIG_PYTHON_2_UNICODE)
2915#if defined(SWIG_PYTHON_STRICT_BYTE_CHAR)
2916#error "Cannot use both SWIG_PYTHON_2_UNICODE and SWIG_PYTHON_STRICT_BYTE_CHAR at once"
2918#if PY_VERSION_HEX<0x03000000
2919 if (PyUnicode_Check(obj)) {
2920 char *cstr; Py_ssize_t len;
2921 if (!alloc && cptr) {
2924 obj = PyUnicode_AsUTF8String(obj);
2927 if (PyString_AsStringAndSize(obj, &cstr, &len) != -1) {
2930 *cptr =
reinterpret_cast< char*
>(memcpy(
new char[len + 1], cstr,
sizeof(
char)*(len + 1)));
2932 if (psize) *psize = len + 1;
2944 if (pchar_descriptor) {
2947 if (cptr) *cptr = (
char *) vptr;
2948 if (psize) *psize = vptr ? (strlen((
char *)vptr) + 1) : 0;
2961 char* buf = 0 ;
size_t size = 0;
int alloc =
SWIG_OLDOBJ;
2964 if (val) *val =
new std::string(buf, size - 1);
2972 static int init = 0;
2990#if !defined(SWIG_NO_LLONG_MAX)
2991# if !defined(LLONG_MAX) && defined(__GNUC__) && defined (__LONG_LONG_MAX__)
2992# define LLONG_MAX __LONG_LONG_MAX__
2993# define LLONG_MIN (-LLONG_MAX - 1LL)
2994# define ULLONG_MAX (LLONG_MAX * 2ULL + 1ULL)
3003 if (PyFloat_Check(obj)) {
3004 if (val) *val = PyFloat_AsDouble(obj);
3006#if PY_VERSION_HEX < 0x03000000
3007 }
else if (PyInt_Check(obj)) {
3008 if (val) *val = (double) PyInt_AsLong(obj);
3011 }
else if (PyLong_Check(obj)) {
3012 double v = PyLong_AsDouble(obj);
3013 if (!PyErr_Occurred()) {
3020#ifdef SWIG_PYTHON_CAST_MODE
3023 double d = PyFloat_AsDouble(obj);
3024 if (!PyErr_Occurred()) {
3031 long v = PyLong_AsLong(obj);
3032 if (!PyErr_Occurred()) {
3054 if ((
min <= x && x <=
max)) {
3055 double fx = floor(x);
3056 double cx = ceil(x);
3057 double rd = ((x - fx) < 0.5) ? fx : cx;
3058 if ((errno == EDOM) || (errno == ERANGE)) {
3061 double summ, reps, diff;
3064 }
else if (rd > x) {
3071 if (reps < 8*DBL_EPSILON) {
3084#if PY_VERSION_HEX < 0x03000000
3085 if (PyInt_Check(obj)) {
3086 if (val) *val = PyInt_AsLong(obj);
3090 if (PyLong_Check(obj)) {
3091 long v = PyLong_AsLong(obj);
3092 if (!PyErr_Occurred()) {
3100#ifdef SWIG_PYTHON_CAST_MODE
3103 long v = PyInt_AsLong(obj);
3104 if (!PyErr_Occurred()) {
3114 if (val) *val = (long)(d);
3130 if ((v < INT_MIN || v > INT_MAX)) {
3133 if (val) *val =
static_cast< int >(v);
3140#if defined(LLONG_MAX) && !defined(SWIG_LONG_LONG_AVAILABLE)
3141# define SWIG_LONG_LONG_AVAILABLE
3145#ifdef SWIG_LONG_LONG_AVAILABLE
3147SWIG_From_long_SS_long (
long long value)
3149 return ((
value < LONG_MIN) || (
value > LONG_MAX)) ?
3150 PyLong_FromLongLong(
value) : PyInt_FromLong(static_cast< long >(
value));
3158 return PyBool_FromLong(
value ? 1 : 0);
3166 if (!PyBool_Check(obj))
3168 r = PyObject_IsTrue(obj);
3171 if (val) *val = r ? true :
false;
3179 PyObject *resultobj = 0;
3180 std::string *arg1 = 0 ;
3184 if ((nobjs < 1) || (nobjs > 1))
SWIG_fail;
3186 std::string *ptr = (std::string *)0;
3207 PyObject *resultobj = 0;
3209 std::string *arg2 = 0 ;
3215 if ((nobjs < 2) || (nobjs > 2))
SWIG_fail;
3218 SWIG_exception_fail(
SWIG_ArgError(ecode1),
"in method '" "new_KnapsackSolver" "', argument " "1"" of type '" "operations_research::KnapsackSolver::SolverType""'");
3222 std::string *ptr = (std::string *)0;
3244 PyObject *argv[3] = {
3275 " Possible C/C++ prototypes are:\n"
3276 " operations_research::KnapsackSolver::KnapsackSolver(std::string const &)\n"
3277 " operations_research::KnapsackSolver::KnapsackSolver(operations_research::KnapsackSolver::SolverType,std::string const &)\n");
3283 PyObject *resultobj = 0;
3287 PyObject *swig_obj[1] ;
3305 PyObject *resultobj = 0;
3307 std::vector< int64_t > *arg2 = 0 ;
3308 std::vector< std::vector< int64_t > > *arg3 = 0 ;
3309 std::vector< int64_t > *arg4 = 0 ;
3312 std::vector< int64_t > temp2 ;
3313 std::vector< std::vector< int64_t > > temp3 ;
3314 std::vector< int64_t > temp4 ;
3315 PyObject *swig_obj[4] ;
3324 if (!vector_input_helper(swig_obj[1], &temp2, PyObjAs<int64_t>)) {
3325 if (!PyErr_Occurred())
3332 if (!PyList_Check(swig_obj[2])) {
3333 PyErr_SetString(PyExc_TypeError,
"Expecting a list of tuples");
3336 int len = PyList_Size(swig_obj[2]);
3340 for (
size_t i = 0; i < len; ++i) {
3341 PyObject *tuple = PyList_GetItem(swig_obj[2], i);
3342 if (!PyTuple_Check(tuple) && !PyList_Check(tuple)) {
3343 PyErr_SetString(PyExc_TypeError,
"Expecting a sequence");
3346 bool is_tuple = PyTuple_Check(tuple);
3347 int arity = is_tuple ? PyTuple_Size(tuple) : PyList_Size(tuple);
3348 temp3[i].resize(arity);
3349 for (
size_t j = 0; j < arity; ++j) {
3350 bool success = PyObjAs<int64_t>(
3351 is_tuple ? PyTuple_GetItem(tuple, j) : PyList_GetItem(tuple, j),
3362 if (!vector_input_helper(swig_obj[3], &temp4, PyObjAs<int64_t>)) {
3363 if (!PyErr_Occurred())
3369 (arg1)->Init((std::vector< int64_t >
const &)*arg2,(std::vector< std::vector< int64_t > >
const &)*arg3,(std::vector< int64_t >
const &)*arg4);
3378 PyObject *resultobj = 0;
3382 PyObject *swig_obj[1] ;
3392 result = (int64_t)(arg1)->
Solve();
3393 resultobj = SWIG_From_long_SS_long(
static_cast< long long >(result));
3401 PyObject *resultobj = 0;
3408 PyObject *swig_obj[2] ;
3414 SWIG_exception_fail(
SWIG_ArgError(res1),
"in method '" "KnapsackSolver_BestSolutionContains" "', argument " "1"" of type '" "operations_research::KnapsackSolver const *""'");
3421 arg2 =
static_cast< int >(val2);
3431 PyObject *resultobj = 0;
3438 PyObject *swig_obj[2] ;
3443 SWIG_exception_fail(
SWIG_ArgError(res1),
"in method '" "KnapsackSolver_set_use_reduction" "', argument " "1"" of type '" "operations_research::KnapsackSolver *""'");
3450 arg2 =
static_cast< bool >(val2);
3451 (arg1)->set_use_reduction(arg2);
3460 PyObject *resultobj = 0;
3467 PyObject *swig_obj[2] ;
3472 SWIG_exception_fail(
SWIG_ArgError(res1),
"in method '" "KnapsackSolver_set_time_limit" "', argument " "1"" of type '" "operations_research::KnapsackSolver *""'");
3479 arg2 =
static_cast< double >(val2);
3480 (arg1)->set_time_limit(arg2);
3503 {
"KnapsackSolver_Init",
_wrap_KnapsackSolver_Init, METH_VARARGS,
"Initializes the solver and enters the problem to be solved."},
3504 {
"KnapsackSolver_Solve",
_wrap_KnapsackSolver_Solve, METH_O,
"Solves the problem and returns the profit of the optimal solution."},
3508 " Time limit in seconds.\n"
3510 "When a finite time limit is set the solution obtained might not be optimal\n"
3511 "if the limit is reached.\n"
3515 { NULL, NULL, 0, NULL }
3519 { NULL, NULL, 0, NULL }
3577{0, 0, 0, 0.0, 0, 0}};
3631#define SWIGRUNTIME_DEBUG
3667 }
while (iter!= module_head);
3678 if (init == 0)
return;
3681#ifdef SWIGRUNTIME_DEBUG
3682 printf(
"SWIG_InitializeModule: size %lu\n", (
unsigned long)
swig_module.
size);
3689#ifdef SWIGRUNTIME_DEBUG
3699#ifdef SWIGRUNTIME_DEBUG
3700 printf(
"SWIG_InitializeModule: found type %s\n", type->
name);
3704#ifdef SWIGRUNTIME_DEBUG
3705 printf(
"SWIG_InitializeModule: found and overwrite type %s \n", type->
name);
3714 while (cast->
type) {
3717#ifdef SWIGRUNTIME_DEBUG
3718 printf(
"SWIG_InitializeModule: look cast %s\n", cast->
type->
name);
3722#ifdef SWIGRUNTIME_DEBUG
3723 if (ret) printf(
"SWIG_InitializeModule: found cast %s\n", ret->
name);
3728#ifdef SWIGRUNTIME_DEBUG
3729 printf(
"SWIG_InitializeModule: skip old type %s\n", ret->
name);
3736#ifdef SWIGRUNTIME_DEBUG
3737 if (ocast) printf(
"SWIG_InitializeModule: skip old cast %s\n", ret->
name);
3739 if (!ocast) ret = 0;
3744#ifdef SWIGRUNTIME_DEBUG
3745 printf(
"SWIG_InitializeModule: adding cast %s\n", cast->
type->
name);
3760#ifdef SWIGRUNTIME_DEBUG
3761 printf(
"**** SWIG_InitializeModule: Cast List ******\n");
3766 while (cast->
type) {
3767 printf(
"SWIG_InitializeModule: cast type %s\n", cast->
type->
name);
3771 printf(
"---- Total casts: %d\n",j);
3773 printf(
"**** SWIG_InitializeModule: Cast List ******\n");
3786 static int init_run = 0;
3788 if (init_run)
return;
3799 equiv = equiv->
next;
3820#define SWIG_newvarlink() SWIG_Python_newvarlink()
3821#define SWIG_addvarlink(p, name, get_attr, set_attr) SWIG_Python_addvarlink(p, name, get_attr, set_attr)
3822#define SWIG_InstallConstants(d, constants) SWIG_Python_InstallConstants(d, constants)
3830 PyObject *(*get_attr)(void);
3842#if PY_VERSION_HEX >= 0x03000000
3843 return PyUnicode_InternFromString(
"<Swig global variables>");
3845 return PyString_FromString(
"<Swig global variables>");
3851#if PY_VERSION_HEX >= 0x03000000
3852 PyObject *str = PyUnicode_InternFromString(
"(");
3857 tail = PyUnicode_FromString(
var->name);
3858 joined = PyUnicode_Concat(str,
tail);
3863 tail = PyUnicode_InternFromString(
", ");
3864 joined = PyUnicode_Concat(str,
tail);
3870 tail = PyUnicode_InternFromString(
")");
3871 joined = PyUnicode_Concat(str,
tail);
3876 PyObject *str = PyString_FromString(
"(");
3879 PyString_ConcatAndDel(&str,PyString_FromString(
var->name));
3880 if (
var->next) PyString_ConcatAndDel(&str,PyString_FromString(
", "));
3882 PyString_ConcatAndDel(&str,PyString_FromString(
")"));
3900 PyObject *res = NULL;
3903 if (strcmp(
var->name,n) == 0) {
3904 res = (*
var->get_attr)();
3909 if (res == NULL && !PyErr_Occurred()) {
3910 PyErr_Format(PyExc_AttributeError,
"Unknown C global variable '%s'", n);
3920 if (strcmp(
var->name,n) == 0) {
3921 res = (*
var->set_attr)(p);
3926 if (res == 1 && !PyErr_Occurred()) {
3927 PyErr_Format(PyExc_AttributeError,
"Unknown C global variable '%s'", n);
3934 static char varlink__doc__[] =
"Swig var link object";
3935 static PyTypeObject varlink_type;
3936 static int type_init = 0;
3938 const PyTypeObject tmp = {
3939#if PY_VERSION_HEX >= 0x03000000
3940 PyVarObject_HEAD_INIT(NULL, 0)
3942 PyObject_HEAD_INIT(NULL)
3969 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
3972#if PY_VERSION_HEX >= 0x03040000
3975#if PY_VERSION_HEX >= 0x03080000
3978#if (PY_VERSION_HEX >= 0x03080000) && (PY_VERSION_HEX < 0x03090000)
3991 if (PyType_Ready(&varlink_type) < 0)
3994 return &varlink_type;
4004 return ((PyObject*) result);
4012 size_t size = strlen(
name)+1;
4026 static PyObject *globals = 0;
4042 for (i = 0; constants[i].
type; ++i) {
4043 switch(constants[i].type) {
4048 obj =
SWIG_NewPackedObj(constants[i].pvalue, constants[i].lvalue, *(constants[i].ptype));
4055 PyDict_SetItemString(d, constants[i].
name, obj);
4071 for (i = 0; methods[i].ml_name; ++i) {
4072 const char *c = methods[i].ml_doc;
4074 c = strstr(c,
"swig_ptr: ");
4078 const char *
name = c + 10;
4079 for (j = 0; const_table[j].
type; ++j) {
4080 if (strncmp(const_table[j].
name,
name,
4081 strlen(const_table[j].
name)) == 0) {
4082 ci = &(const_table[j]);
4089 size_t shift = (ci->
ptype) - types;
4091 size_t ldoc = (c - methods[i].ml_doc);
4092 size_t lptr = strlen(ty->
name)+2*
sizeof(
void*)+2;
4093 char *ndoc = (
char*)
malloc(ldoc + lptr + 10);
4096 memcpy(buff, methods[i].ml_doc, ldoc);
4098 memcpy(buff,
"swig_ptr: ", 10);
4101 methods[i].ml_doc = ndoc;
4139 if (PyCFunction_Check(func)) {
4140 PyCFunctionObject *funcobj = (PyCFunctionObject *)func;
4143 func = PyCFunction_NewEx(ml, funcobj->m_self, funcobj->m_module);
4145#if PY_VERSION_HEX >= 0x03000000
4146 return PyInstanceMethod_New(func);
4148 return PyMethod_New(func, NULL, NULL);
4158 if (PyCFunction_Check(func)) {
4159 PyCFunctionObject *funcobj = (PyCFunctionObject *)func;
4162 func = PyCFunction_NewEx(ml, funcobj->m_self, funcobj->m_module);
4164 return PyStaticMethod_New(func);
4180#if PY_VERSION_HEX >= 0x03000000
4186 PyObject *m, *d, *md, *globals;
4188#if PY_VERSION_HEX >= 0x03000000
4189 static struct PyModuleDef SWIG_module = {
4190 PyModuleDef_HEAD_INIT,
4202#if defined(SWIGPYTHON_BUILTIN)
4206 static PyGetSetDef this_getset_def = {
4207 (
char *)
"this", &SwigPyBuiltin_ThisClosure, NULL, NULL, NULL
4209 static SwigPyGetSet thisown_getset_closure = {
4213 static PyGetSetDef thisown_getset_def = {
4214 (
char *)
"thisown", SwigPyBuiltin_GetterClosure, SwigPyBuiltin_SetterClosure, NULL, &thisown_getset_closure
4216 PyTypeObject *builtin_pytype;
4217 int builtin_base_count;
4220 PyGetSetDescrObject *static_getset;
4221 PyTypeObject *metatype;
4222 PyTypeObject *swigpyobject;
4224 PyObject *public_interface, *public_symbol;
4225 PyObject *this_descr;
4226 PyObject *thisown_descr;
4230 (void)builtin_pytype;
4231 (void)builtin_base_count;
4232 (void)builtin_basetype;
4234 (void)static_getset;
4238 metatype = SwigPyObjectType();
4248#ifndef SWIGPYTHON_BUILTIN
4255#if PY_VERSION_HEX >= 0x03000000
4256 m = PyModule_Create(&SWIG_module);
4261 md = d = PyModule_GetDict(m);
4266#ifdef SWIGPYTHON_BUILTIN
4270 assert(SwigPyObject_stype);
4273 SwigPyObject_stype->
clientdata = &SwigPyObject_clientdata;
4274 SwigPyObject_clientdata.
pytype = swigpyobject;
4275 }
else if (swigpyobject->tp_basicsize != cd->
pytype->tp_basicsize) {
4276 PyErr_SetString(PyExc_RuntimeError,
"Import error: attempted to load two incompatible swig-generated modules.");
4277# if PY_VERSION_HEX >= 0x03000000
4290 (void)thisown_descr;
4292 public_interface = PyList_New(0);
4294 (void)public_symbol;
4296 PyDict_SetItemString(md,
"__all__", public_interface);
4297 Py_DECREF(public_interface);
4299 SwigPyBuiltin_AddPublicSymbol(public_interface,
SwigMethods[i].ml_name);
4312#if PY_VERSION_HEX >= 0x03000000
This library solves knapsack problems.
int64_t Solve()
Solves the problem and returns the profit of the optimal solution.
SolverType
Enum controlling which underlying algorithm is used.
@ KNAPSACK_MULTIDIMENSION_SCIP_MIP_SOLVER
SCIP based solver.
@ KNAPSACK_MULTIDIMENSION_BRANCH_AND_BOUND_SOLVER
Generic Solver.
@ KNAPSACK_DYNAMIC_PROGRAMMING_SOLVER
Dynamic Programming approach for single dimension problems.
@ KNAPSACK_64ITEMS_SOLVER
Optimized method for single dimension small problems.
@ KNAPSACK_BRUTE_FORCE_SOLVER
Brute force method.
@ KNAPSACK_MULTIDIMENSION_CBC_MIP_SOLVER
CBC Based Solver.
PyObject * operator->() const
SwigPtr_PyObject(PyObject *obj, bool initial_ref=true)
SwigPtr_PyObject & operator=(const SwigPtr_PyObject &item)
SwigPtr_PyObject(const SwigPtr_PyObject &item)
SWIGRUNTIME swig_module_info * SWIG_Python_GetModule(void *SWIGUNUSEDPARM(clientdata))
#define SWIG_Error(code, msg)
SWIGINTERNINLINE PyObject * SWIG_From_int(int value)
SWIGRUNTIME int SWIG_Python_ConvertPacked(PyObject *obj, void *ptr, size_t sz, swig_type_info *ty)
static swig_cast_info * swig_cast_initial[]
SWIGRUNTIME swig_cast_info * SWIG_TypeCheckStruct(swig_type_info *from, swig_type_info *ty)
#define SWIG_MangledTypeQuery(name)
SWIGINTERN PyObject * _wrap_KnapsackSolver_Init(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
static PyObject * Swig_This_global
SWIGRUNTIME int SwigPyPacked_compare(SwigPyPacked *v, SwigPyPacked *w)
SWIGINTERN int SWIG_AsVal_double(PyObject *obj, double *val)
static swig_type_info _swigt__p_long_long
SWIGINTERN Py_ssize_t SWIG_Python_UnpackTuple(PyObject *args, const char *name, Py_ssize_t min, Py_ssize_t max, PyObject **objs)
#define SWIG_TypeQuery(name)
#define SWIGTYPE_p_operations_research__KnapsackSolver
#define SWIG_CheckState(r)
static swig_cast_info _swigc__p_int[]
SWIGINTERN PyObject * _wrap_KnapsackSolver_set_use_reduction(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_KnapsackSolver_Solve(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME int SWIG_TypeEquiv(const char *nb, const char *tb)
SWIGRUNTIME int SWIG_Python_AddErrMesg(const char *mesg, int infront)
SWIGRUNTIME PyObject * SWIG_Python_NewShadowInstance(SwigPyClientData *data, PyObject *swig_this)
SWIGINTERN void SWIG_Python_InstallConstants(PyObject *d, swig_const_info constants[])
SWIGINTERN PyObject * KnapsackSolver_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME PyObject * SwigPyObject_next(PyObject *v, PyObject *SWIGUNUSEDPARM(args))
#define SWIG_POINTER_IMPLICIT_CONV
SWIGRUNTIME PyObject * SwigPyPacked_New(void *ptr, size_t size, swig_type_info *ty)
struct swig_cast_info swig_cast_info
SWIGINTERN int swig_varlink_setattr(swig_varlinkobject *v, char *n, PyObject *p)
static swig_type_info * swig_types[11]
SWIGRUNTIME int SWIG_TypeNameComp(const char *f1, const char *l1, const char *f2, const char *l2)
SWIGRUNTIME PyObject * SwigPyObject_hex(SwigPyObject *v)
#define SWIG_Python_ConvertPtr(obj, pptr, type, flags)
SWIGRUNTIME void SwigPyObject_dealloc(PyObject *v)
SWIGRUNTIME PyTypeObject * SwigPyPacked_TypeOnce(void)
#define SWIG_PYTHON_THREAD_END_BLOCK
static swig_type_info _swigt__p_operations_research__KnapsackSolver
#define SWIG_RuntimeError
SWIGRUNTIME PyObject * SwigPyObject_richcompare(SwigPyObject *v, SwigPyObject *w, int op)
SWIGRUNTIME PyObject * SwigPyObject_append(PyObject *v, PyObject *next)
SWIGINTERN PyObject * _wrap_KnapsackSolver_BestSolutionContains(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * swig_varlink_getattr(swig_varlinkobject *v, char *n)
SWIGINTERN PyObject * SWIG_Python_newvarlink(void)
struct swig_varlinkobject swig_varlinkobject
#define SWIG_NewClientData(obj)
static swig_cast_info _swigc__p_long_long[]
SWIGINTERN PyObject * swig_varlink_str(swig_varlinkobject *v)
static swig_type_info _swigt__p_unsigned_char
SWIGINTERNINLINE int SWIG_CanCastAsInteger(double *d, double min, double max)
static swig_type_info _swigt__p_unsigned_long_long
#define SWIG_RUNTIME_VERSION
SWIGINTERN char * SWIG_Python_str_AsChar(PyObject *str)
SWIGRUNTIMEINLINE const char * SwigPyObject_GetDesc(PyObject *self)
SWIGINTERN PyObject * SwigPyObject_own(PyObject *v, PyObject *args)
#define SWIG_POINTER_NOSHADOW
SWIGRUNTIME void SWIG_TypeClientData(swig_type_info *ti, void *clientdata)
SWIGRUNTIME swig_type_info * SWIG_TypeQueryModule(swig_module_info *start, swig_module_info *end, const char *name)
static swig_type_info _swigt__p_short
SWIGINTERN void SWIG_Python_addvarlink(PyObject *p, const char *name, PyObject *(*get_attr)(void), int(*set_attr)(PyObject *p))
SWIGINTERN PyObject * _wrap_new_KnapsackSolver(PyObject *self, PyObject *args)
SWIGINTERN PyObject * SwigPyObject_acquire(PyObject *v, PyObject *SWIGUNUSEDPARM(args))
static PyMethodDef swigobject_methods[]
SWIGINTERN PyObject * KnapsackSolver_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME char * SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz)
SWIGRUNTIME PyObject * SWIG_Python_TypeCache(void)
SWIGINTERN PyObject * _wrap_new_KnapsackSolver__SWIG_0(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj)
#define SWIG_InternalNewPointerObj(ptr, type, flags)
SWIGRUNTIME PyObject * SwigPyObject_long(SwigPyObject *v)
#define SWIG_exception_fail(code, msg)
SWIGRUNTIMEINLINE PyObject * SWIG_Py_Void(void)
SWIGINTERN PyObject * SWIG_PyInstanceMethod_New(PyObject *SWIGUNUSEDPARM(self), PyObject *func)
#define SWIG_AttributeError
SWIGRUNTIME const char * SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name)
static swig_module_info swig_module
static swig_cast_info _swigc__p_unsigned_char[]
static swig_cast_info _swigc__p_short[]
SWIGRUNTIME int SWIG_Python_TypeErrorOccurred(PyObject *obj)
SWIGRUNTIME void SWIG_Python_DestroyModule(PyObject *obj)
#define SWIG_SetModule(clientdata, pointer)
SWIGRUNTIME SwigPyClientData * SwigPyClientData_New(PyObject *obj)
SWIGINTERN PyTypeObject * swig_varlink_type(void)
#define SWIGUNUSEDPARM(p)
SWIGRUNTIME swig_type_info * SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr)
#define SWIG_as_voidptr(a)
SWIGINTERN swig_type_info * SWIG_pchar_descriptor(void)
static swig_const_info swig_const_table[]
SWIGINTERN PyObject * SwigPyObject_disown(PyObject *v, PyObject *SWIGUNUSEDPARM(args))
SWIGRUNTIMEINLINE int SwigPyPacked_Check(PyObject *op)
#define SWIG_Python_CallFunctor(functor, obj)
SWIGRUNTIME void SWIG_TypeNewClientData(swig_type_info *ti, void *clientdata)
static swig_type_info _swigt__p_unsigned_short
SWIGRUNTIME int SwigPyObject_compare(SwigPyObject *v, SwigPyObject *w)
#define SWIG_ConvertPtr(obj, pptr, type, flags)
SWIGRUNTIME int SWIG_TypeCmp(const char *nb, const char *tb)
SWIGRUNTIME const char * SWIG_UnpackData(const char *c, void *ptr, size_t sz)
struct swig_const_info swig_const_info
SWIGINTERN int SWIG_Python_CheckNoKeywords(PyObject *kwargs, const char *name)
void *(* swig_converter_func)(void *, int *)
SWIGRUNTIME void SWIG_InitializeModule(void *clientdata)
SWIGRUNTIME PyObject * SwigPyPacked_repr(SwigPyPacked *v)
#define SWIG_newvarlink()
SWIGRUNTIME void SWIG_Python_RaiseOrModifyTypeError(const char *message)
SWIGRUNTIME swig_type_info * SWIG_Python_TypeQuery(const char *type)
#define SWIG_Python_str_DelForPy3(x)
static swig_cast_info _swigc__p_char[]
SWIGINTERN PyObject * SWIG_PyStaticMethod_New(PyObject *SWIGUNUSEDPARM(self), PyObject *func)
SWIGINTERN PyObject * _wrap_new_KnapsackSolver__SWIG_1(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj)
SWIGRUNTIMEINLINE PyObject * SWIG_Python_ExceptionType(swig_type_info *desc)
SWIGRUNTIMEINLINE int SwigPyObject_Check(PyObject *op)
SWIGINTERN void SWIG_Python_SetErrorObj(PyObject *errtype, PyObject *obj)
SWIGRUNTIME swig_type_info * SWIG_MangledTypeQueryModule(swig_module_info *start, swig_module_info *end, const char *name)
static swig_cast_info _swigc__p_unsigned_short[]
struct swig_globalvar swig_globalvar
#define SWIGPY_CAPSULE_NAME
SWIGRUNTIME void * SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int SWIGUNUSEDPARM(argnum), int flags)
SWIGRUNTIME void SWIG_Python_AddErrorMsg(const char *mesg)
SWIGRUNTIME const char * SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name)
#define SWIG_NewPointerObj(ptr, type, flags)
SWIGRUNTIME void SWIG_Python_SetModule(swig_module_info *swig_module)
SWIGINTERN void SWIG_Python_SetConstant(PyObject *d, const char *name, PyObject *obj)
#define SWIG_POINTER_NO_NULL
#define SWIG_Python_str_FromFormat
#define SWIG_InstallConstants(d, constants)
struct swig_type_info *(* swig_dycast_func)(void **)
static PyMethodDef SwigMethods[]
#define SWIG_NullReferenceError
SWIGRUNTIME PyTypeObject * SwigPyPacked_type(void)
SWIGRUNTIMEINLINE const char * SWIG_TypeName(const swig_type_info *ty)
#define SWIG_POINTER_DISOWN
#define SWIG_STATIC_POINTER(var)
struct swig_type_info swig_type_info
SWIGRUNTIME char * SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz)
SWIGRUNTIME char * SWIG_PackData(char *c, void *ptr, size_t sz)
SWIGRUNTIME int SWIG_Python_ConvertFunctionPtr(PyObject *obj, void **ptr, swig_type_info *ty)
SWIGINTERN void SWIG_Python_SetErrorMsg(PyObject *errtype, const char *msg)
SWIGRUNTIME PyObject * SwigPyObject_format(const char *fmt, SwigPyObject *v)
SWIGRUNTIME PyObject * SWIG_Python_NewPointerObj(PyObject *self, void *ptr, swig_type_info *type, int flags)
static swig_type_info _swigt__p_signed_char
SWIGINTERN int SWIG_AsPtr_std_string(PyObject *obj, std::string **val)
SWIGRUNTIME int SWIG_Python_ArgFail(int argnum)
SWIGRUNTIME swig_type_info * SwigPyPacked_UnpackData(PyObject *obj, void *ptr, size_t size)
SWIGINTERNINLINE PyObject * SWIG_From_bool(bool value)
SWIGRUNTIME int SWIG_Python_ConvertPtrAndOwn(PyObject *obj, void **ptr, swig_type_info *ty, int flags, int *own)
SWIGINTERN PyObject * _wrap_delete_KnapsackSolver(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_NewPackedObj(ptr, sz, type)
#define SWIG_GetModule(clientdata)
static swig_cast_info _swigc__p_unsigned_int[]
static swig_type_info _swigt__p_int
SWIGRUNTIME void SWIG_PropagateClientData(void)
SWIGRUNTIME PyObject * SwigPyPacked_str(SwigPyPacked *v)
SWIGRUNTIME int SWIG_Python_SetSwigThis(PyObject *inst, PyObject *swig_this)
SWIGRUNTIME const char * SWIG_TypePrettyName(const swig_type_info *type)
SWIGRUNTIMEINLINE PyObject * SWIG_Python_NewPackedObj(void *ptr, size_t sz, swig_type_info *type)
SWIGRUNTIME swig_cast_info * SWIG_TypeCheck(const char *c, swig_type_info *ty)
static PyMethodDef SwigMethods_proxydocs[]
SWIGRUNTIME PyObject * SWIG_This(void)
SWIGRUNTIME void SWIG_Python_TypeError(const char *type, PyObject *obj)
SWIGINTERN int SWIG_AsVal_int(PyObject *obj, int *val)
SWIGINTERN PyObject * SWIG_Python_AppendOutput(PyObject *result, PyObject *obj)
#define SWIG_TYPE_TABLE_NAME
#define SWIG_BUILTIN_TP_INIT
static swig_type_info _swigt__p_unsigned_int
#define SWIG_CAST_NEW_MEMORY
SWIGRUNTIME PyObject * SwigPyObject_repr(SwigPyObject *v)
SWIGINTERN int SWIG_AsVal_long(PyObject *obj, long *val)
struct swig_module_info swig_module_info
SWIGRUNTIME PyObject * SWIG_Python_ErrorType(int code)
SWIGINTERN int SWIG_AsVal_bool(PyObject *obj, bool *val)
SWIGRUNTIME void SwigPyClientData_Del(SwigPyClientData *data)
SWIGRUNTIME SwigPyObject * SWIG_Python_GetSwigThis(PyObject *pyobj)
SWIGINTERN void swig_varlink_dealloc(swig_varlinkobject *v)
SWIGINTERN PyObject * swig_varlink_repr(swig_varlinkobject *SWIGUNUSEDPARM(v))
static swig_type_info * swig_type_initial[]
SWIGRUNTIME void SwigPyPacked_dealloc(PyObject *v)
SWIGINTERN PyObject * SWIG_Python_str_FromChar(const char *c)
SWIGRUNTIME PyObject * SwigPyObject_New(void *ptr, swig_type_info *ty, int own)
SWIGRUNTIMEINLINE int SWIG_Python_CheckImplicit(swig_type_info *ty)
SWIGINTERN void SWIG_Python_FixMethods(PyMethodDef *methods, swig_const_info *const_table, swig_type_info **types, swig_type_info **types_initial)
#define SWIG_DivisionByZero
static swig_type_info _swigt__p_char
SWIGRUNTIME PyTypeObject * SwigPyObject_type(void)
#define SWIG_OverflowError
SWIGRUNTIME PyTypeObject * SwigPyObject_TypeOnce(void)
SWIGINTERN int SWIG_AsCharPtrAndSize(PyObject *obj, char **cptr, size_t *psize, int *alloc)
static swig_cast_info _swigc__p_unsigned_long_long[]
SWIGINTERN PyObject * _wrap_KnapsackSolver_set_time_limit(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME PyObject * SwigPyObject_oct(SwigPyObject *v)
SWIGRUNTIME PyObject * SwigPyObject_repr2(PyObject *v, PyObject *SWIGUNUSEDPARM(args))
SWIGINTERN PyObject * SWIG_Python_InitShadowInstance(PyObject *args)
#define SWIG_AddNewMask(r)
SWIGINTERN PyObject * SWIG_globals(void)
SWIGINTERN PyMethodDef * SWIG_PythonGetProxyDoc(const char *name)
static swig_cast_info _swigc__p_operations_research__KnapsackSolver[]
#define SWIG_PYTHON_THREAD_BEGIN_BLOCK
static swig_cast_info _swigc__p_signed_char[]
SWIGRUNTIME int SWIG_Python_AcquirePtr(PyObject *obj, int own)
#define SWIGRUNTIMEINLINE
SWIGRUNTIMEINLINE void * SWIG_TypeCast(swig_cast_info *ty, void *ptr, int *newmemory)
std::optional< int64_t > end
PyObject_HEAD void * pack
SwigVar_PyObject(PyObject *obj=0)
SwigVar_PyObject & operator=(PyObject *obj)
struct swig_cast_info * prev
struct swig_cast_info * next
swig_converter_func converter
int(* set_attr)(PyObject *)
struct swig_globalvar * next
PyObject *(* get_attr)(void)
swig_type_info ** type_initial
struct swig_module_info * next
swig_cast_info ** cast_initial
struct swig_cast_info * cast
PyObject_HEAD swig_globalvar * vars