|
Data Structures |
struct | lass::python::impl::ArgValue< T > |
struct | lass::python::impl::ArgPyPtr< T > |
struct | lass::python::impl::ArgumentTraits< T > |
| determines the right type for temporary storage of function arguments. More...
|
struct | lass::python::impl::ArgumentTraits< const T > |
struct | lass::python::impl::ArgumentTraits< T & > |
struct | lass::python::impl::ArgumentTraits< const T & > |
struct | lass::python::impl::ArgumentTraits< T * > |
struct | lass::python::impl::ArgumentTraits< const T * > |
struct | lass::python::impl::ArgumentTraits< T *const > |
struct | lass::python::impl::ArgumentTraits< const T *const > |
struct | lass::python::impl::Caller< R > |
| calls the actual function with provided parameters, and returns result as a PyObject pointer. More...
|
struct | lass::python::impl::Caller< void > |
| specialisation for functions without return value, calls function and returns Py_None. More...
|
struct | lass::python::impl::CallMethod< CppClass > |
struct | lass::python::impl::ExplicitResolver< CppClass, R, lass::meta::NullType > |
struct | lass::python::impl::ExplicitResolver< CppClass, R, lass::meta::NullType >::Impl |
struct | lass::python::impl::ExplicitResolver1< CppClass, R, P1, lass::meta::NullType > |
struct | lass::python::impl::ExplicitResolver1< CppClass, R, P1, lass::meta::NullType >::Impl |
struct | lass::python::impl::ExplicitResolver2< CppClass, R, P1, P2, lass::meta::NullType > |
struct | lass::python::impl::ExplicitResolver2< CppClass, R, P1, P2, lass::meta::NullType >::Impl |
struct | lass::python::impl::ExplicitResolver3< CppClass, R, P1, P2, P3, lass::meta::NullType > |
struct | lass::python::impl::ExplicitResolver3< CppClass, R, P1, P2, P3, lass::meta::NullType >::Impl |
struct | lass::python::impl::ExplicitResolver4< CppClass, R, P1, P2, P3, P4, lass::meta::NullType > |
struct | lass::python::impl::ExplicitResolver4< CppClass, R, P1, P2, P3, P4, lass::meta::NullType >::Impl |
struct | lass::python::impl::ExplicitResolver5< CppClass, R, P1, P2, P3, P4, P5, lass::meta::NullType > |
struct | lass::python::impl::ExplicitResolver5< CppClass, R, P1, P2, P3, P4, P5, lass::meta::NullType >::Impl |
struct | lass::python::impl::ExplicitResolver6< CppClass, R, P1, P2, P3, P4, P5, P6, lass::meta::NullType > |
struct | lass::python::impl::ExplicitResolver6< CppClass, R, P1, P2, P3, P4, P5, P6, lass::meta::NullType >::Impl |
struct | lass::python::impl::ExplicitResolver7< CppClass, R, P1, P2, P3, P4, P5, P6, P7, lass::meta::NullType > |
struct | lass::python::impl::ExplicitResolver7< CppClass, R, P1, P2, P3, P4, P5, P6, P7, lass::meta::NullType >::Impl |
struct | lass::python::impl::ExplicitResolver8< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, lass::meta::NullType > |
struct | lass::python::impl::ExplicitResolver8< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, lass::meta::NullType >::Impl |
struct | lass::python::impl::ExplicitResolver9< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, lass::meta::NullType > |
struct | lass::python::impl::ExplicitResolver9< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, lass::meta::NullType >::Impl |
struct | lass::python::impl::ExplicitResolver10< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, lass::meta::NullType > |
struct | lass::python::impl::ExplicitResolver10< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, lass::meta::NullType >::Impl |
struct | lass::python::impl::ExplicitResolver11< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, lass::meta::NullType > |
struct | lass::python::impl::ExplicitResolver11< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, lass::meta::NullType >::Impl |
struct | lass::python::impl::ExplicitResolver12< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, lass::meta::NullType > |
struct | lass::python::impl::ExplicitResolver12< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, lass::meta::NullType >::Impl |
struct | lass::python::impl::ExplicitResolver13< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, lass::meta::NullType > |
struct | lass::python::impl::ExplicitResolver13< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, lass::meta::NullType >::Impl |
struct | lass::python::impl::ExplicitResolver14< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, lass::meta::NullType > |
struct | lass::python::impl::ExplicitResolver14< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, lass::meta::NullType >::Impl |
struct | lass::python::impl::ExplicitResolver15< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, lass::meta::NullType > |
struct | lass::python::impl::ExplicitResolver15< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, lass::meta::NullType >::Impl |
struct | lass::python::impl::ExplicitResolver< CppClass, R, meta::TypeList< Head, Tail > > |
struct | lass::python::impl::ExplicitResolver1< CppClass, R, P1, meta::TypeList< Head, Tail > > |
struct | lass::python::impl::ExplicitResolver2< CppClass, R, P1, P2, meta::TypeList< Head, Tail > > |
struct | lass::python::impl::ExplicitResolver3< CppClass, R, P1, P2, P3, meta::TypeList< Head, Tail > > |
struct | lass::python::impl::ExplicitResolver4< CppClass, R, P1, P2, P3, P4, meta::TypeList< Head, Tail > > |
struct | lass::python::impl::ExplicitResolver5< CppClass, R, P1, P2, P3, P4, P5, meta::TypeList< Head, Tail > > |
struct | lass::python::impl::ExplicitResolver6< CppClass, R, P1, P2, P3, P4, P5, P6, meta::TypeList< Head, Tail > > |
struct | lass::python::impl::ExplicitResolver7< CppClass, R, P1, P2, P3, P4, P5, P6, P7, meta::TypeList< Head, Tail > > |
struct | lass::python::impl::ExplicitResolver8< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, meta::TypeList< Head, Tail > > |
struct | lass::python::impl::ExplicitResolver9< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, meta::TypeList< Head, Tail > > |
struct | lass::python::impl::ExplicitResolver10< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, meta::TypeList< Head, Tail > > |
struct | lass::python::impl::ExplicitResolver11< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, meta::TypeList< Head, Tail > > |
struct | lass::python::impl::ExplicitResolver12< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, meta::TypeList< Head, Tail > > |
struct | lass::python::impl::ExplicitResolver13< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, meta::TypeList< Head, Tail > > |
struct | lass::python::impl::ExplicitResolver14< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, meta::TypeList< Head, Tail > > |
struct | lass::python::impl::ExplicitResolver15< CppClass, R, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, meta::TypeList< Head, Tail > > |
Namespaces |
namespace | lass |
| Library for Assembled Shared Sources.
|
namespace | lass::python |
namespace | lass::python::impl |
Defines |
#define | LASS_UTIL_PYOBJECT_CALL_CATCH_AND_RETURN_EX(v_errorReturnValue) |
#define | LASS_UTIL_PYOBJECT_CALL_CATCH_AND_RETURN LASS_UTIL_PYOBJECT_CALL_CATCH_AND_RETURN_EX(0) |
Functions |
void | lass::python::impl::handlePythonException (const PythonException &error) |
void | lass::python::impl::handleLassException (const util::Exception &error) |
void | lass::python::impl::handleStdException (const std::exception &error) |
template<typename R > |
PyObject * | lass::python::impl::callFunction (PyObject *args, R(*iFunction)()) |
| calls C++ function without arguments
|
template<typename R , typename P1 > |
PyObject * | lass::python::impl::callFunction (PyObject *args, R(*iFunction)(P1)) |
| calls C++ function with 1 arguments, translated from python arguments
|
template<typename R , typename P1 , typename P2 > |
PyObject * | lass::python::impl::callFunction (PyObject *args, R(*iFunction)(P1, P2)) |
| calls C++ function with 2 arguments, translated from python arguments
|
template<typename R , typename P1 , typename P2 , typename P3 > |
PyObject * | lass::python::impl::callFunction (PyObject *args, R(*iFunction)(P1, P2, P3)) |
| calls C++ function with 3 arguments, translated from python arguments
|
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 > |
PyObject * | lass::python::impl::callFunction (PyObject *args, R(*iFunction)(P1, P2, P3, P4)) |
| calls C++ function with 4 arguments, translated from python arguments
|
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 > |
PyObject * | lass::python::impl::callFunction (PyObject *args, R(*iFunction)(P1, P2, P3, P4, P5)) |
| calls C++ function with 5 arguments, translated from python arguments
|
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 > |
PyObject * | lass::python::impl::callFunction (PyObject *args, R(*iFunction)(P1, P2, P3, P4, P5, P6)) |
| calls C++ function with 6 arguments, translated from python arguments
|
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 > |
PyObject * | lass::python::impl::callFunction (PyObject *args, R(*iFunction)(P1, P2, P3, P4, P5, P6, P7)) |
| calls C++ function with 7 arguments, translated from python arguments
|
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 > |
PyObject * | lass::python::impl::callFunction (PyObject *args, R(*iFunction)(P1, P2, P3, P4, P5, P6, P7, P8)) |
| calls C++ function with 8 arguments, translated from python arguments
|
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 > |
PyObject * | lass::python::impl::callFunction (PyObject *args, R(*iFunction)(P1, P2, P3, P4, P5, P6, P7, P8, P9)) |
| calls C++ function with 9 arguments, translated from python arguments
|
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 > |
PyObject * | lass::python::impl::callFunction (PyObject *args, R(*iFunction)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10)) |
| calls C++ function with 10 arguments, translated from python arguments
|
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 > |
PyObject * | lass::python::impl::callFunction (PyObject *args, R(*iFunction)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11)) |
| calls C++ function with 11 arguments, translated from python arguments
|
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 > |
PyObject * | lass::python::impl::callFunction (PyObject *args, R(*iFunction)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12)) |
| calls C++ function with 12 arguments, translated from python arguments
|
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 > |
PyObject * | lass::python::impl::callFunction (PyObject *args, R(*iFunction)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13)) |
| calls C++ function with 13 arguments, translated from python arguments
|
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 > |
PyObject * | lass::python::impl::callFunction (PyObject *args, R(*iFunction)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14)) |
| calls C++ function with 14 arguments, translated from python arguments
|
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 , typename P10 , typename P11 , typename P12 , typename P13 , typename P14 , typename P15 > |
PyObject * | lass::python::impl::callFunction (PyObject *args, R(*iFunction)(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15)) |
| calls C++ function with 15 arguments, translated from python arguments
|
template<class PyObjectClass > |
PyObject * | lass::python::impl::construct (PyTypeObject *iSubtype, PyObject *args) |
| allocate a new object with default constructor.
|
The contents of this file are subject to the Common Public Attribution License Version 1.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://lass.sourceforge.net/cpal-license. The License is based on the Mozilla Public License Version 1.1 but Sections 14 and 15 have been added to cover use of software over a computer network and provide for limited attribution for the Original Developer. In addition, Exhibit A has been modified to be consistent with Exhibit B.
Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License.
The Original Code is LASS - Library of Assembled Shared Sources.
The Initial Developer of the Original Code is Bram de Greve and Tom De Muer. The Original Developer is the Initial Developer.
All portions of the code written by the Initial Developer are: Copyright (C) 2004-2007 the Initial Developer. All Rights Reserved.
Alternatively, the contents of this file may be used under the terms of the GNU General Public License Version 2 or later (the GPL), in which case the provisions of GPL are applicable instead of those above. If you wish to allow use of your version of this file only under the terms of the GPL and not to allow others to use your version of this file under the CPAL, indicate your decision by deleting the provisions above and replace them with the notice and other provisions required by the GPL License. If you do not delete the provisions above, a recipient may use your version of this file under either the CPAL or the GPL.