Regressions pass! With a few tweaks for unsupported features, primarily:
- Throwing wrapped types as exceptions is unsupported. - Reverse comparison operators (e.g., __radd__) aren't supported. Rationalized destructors. Finished std::map implementation. Required fixes to typecheck for SWIGTYPE* const&. Need a little special handling of the swig_type_info for SwigPyObject when multiple modules are loaded. Fall back to SwigPyObject_richcompare if there's no operator overload. "memberget" and "memberset" attrs are applied strangely; work around them. Added 'this' attribute. git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/szager-python-builtin@12415 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
d4b8048e9a
commit
288c37f5bf
9 changed files with 352 additions and 574 deletions
|
|
@ -481,11 +481,23 @@ SwigPyObject_richcompare(SwigPyObject *v, SwigPyObject *w, int op)
|
|||
|
||||
SWIGRUNTIME PyTypeObject* _PySwigObject_type(void);
|
||||
|
||||
#ifdef SWIGPYTHON_BUILTIN
|
||||
static swig_type_info *SwigPyObject_stype = 0;
|
||||
SWIGRUNTIME PyTypeObject*
|
||||
SwigPyObject_type(void) {
|
||||
assert(SwigPyObject_stype);
|
||||
SwigPyClientData *cd = (SwigPyClientData*) SwigPyObject_stype->clientdata;
|
||||
assert(cd);
|
||||
assert(cd->pytype);
|
||||
return cd->pytype;
|
||||
}
|
||||
#else
|
||||
SWIGRUNTIME PyTypeObject*
|
||||
SwigPyObject_type(void) {
|
||||
static PyTypeObject *SWIG_STATIC_POINTER(type) = _PySwigObject_type();
|
||||
return type;
|
||||
}
|
||||
#endif
|
||||
|
||||
SWIGRUNTIMEINLINE int
|
||||
SwigPyObject_Check(PyObject *op) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue