1 // Copyright David Abrahams 2002. 2 // Distributed under the Boost Software License, Version 1.0. (See 3 // accompanying file LICENSE_1_0.txt or copy at 4 // http://www.boost.org/LICENSE_1_0.txt) 5 #ifndef FUNCTION_OBJECT_DWA2002725_HPP 6 # define FUNCTION_OBJECT_DWA2002725_HPP 7 # include <boost/python/detail/prefix.hpp> 8 # include <boost/function/function2.hpp> 9 # include <boost/python/object_core.hpp> 10 # include <boost/python/args_fwd.hpp> 11 # include <boost/python/object/py_function.hpp> 12 13 namespace boost { namespace python { 14 15 namespace objects 16 { 17 BOOST_PYTHON_DECL api::object function_object( 18 py_function const& f 19 , python::detail::keyword_range const&); 20 21 BOOST_PYTHON_DECL api::object function_object( 22 py_function const& f 23 , python::detail::keyword_range const&); 24 25 BOOST_PYTHON_DECL api::object function_object(py_function const& f); 26 27 // Add an attribute to the name_space with the given name. If it is 28 // a Boost.Python function object 29 // (boost/python/object/function.hpp), and an existing function is 30 // already there, add it as an overload. 31 BOOST_PYTHON_DECL void add_to_namespace( 32 object const& name_space, char const* name, object const& attribute); 33 34 BOOST_PYTHON_DECL void add_to_namespace( 35 object const& name_space, char const* name, object const& attribute, char const* doc); 36 } 37 38 }} // namespace boost::python::objects 39 40 #endif // FUNCTION_OBJECT_DWA2002725_HPP 41