/trunk/Lib/python/pybackward.swg
Unknown | 45 lines | 38 code | 7 blank | 0 comment | 0 complexity | da9842bffe94827d0f6157eea6d6a6d9 MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
- /*
- adding backward compatibility macros
- */
- #define SWIG_arg(x...) %arg(x)
- #define SWIG_Mangle(x...) %mangle(x)
- #define SWIG_As_frag(Type...) %fragment_name(As, Type)
- #define SWIG_As_name(Type...) %symbol_name(As, Type)
- #define SWIG_As(Type...) SWIG_As_name(Type) SWIG_AS_CALL_ARGS
- #define SWIG_Check_frag(Type...) %fragment_name(Check, Type)
- #define SWIG_Check_name(Type...) %symbol_name(Check, Type)
- #define SWIG_Check(Type...) SWIG_Check_name(Type) SWIG_AS_CALL_ARGS
- %define %ascheck_methods(Code, Type...)
- %fragment(SWIG_As_frag(Type),"header", fragment=SWIG_AsVal_frag(Type)) {
- SWIGINTERNINLINE Type
- SWIG_As(Type)(PyObject* obj)
- {
- Type v;
- int res = SWIG_AsVal(Type)(obj, &v);
- if (!SWIG_IsOK(res)) {
- /*
- this is needed to make valgrind/purify happier.
- */
- memset((void*)&v, 0, sizeof(Type));
- SWIG_Error(res, "");
- }
- return v;
- }
- }
- %fragment(SWIG_Check_frag(Type),"header",fragment=SWIG_AsVal_frag(Type)) {
- SWIGINTERNINLINE int
- SWIG_Check(Type)(PyObject* obj)
- {
- int res = SWIG_AsVal(Type)(obj, (Type*)0);
- return SWIG_IsOK(res);
- }
- }
- %enddef
- %apply_checkctypes(%ascheck_methods)