Use std::function

This commit is contained in:
Peter Dimov
2019-11-06 03:10:09 +02:00
parent a7c28f6117
commit f3e4ed2481
4 changed files with 392 additions and 0 deletions
+12
View File
@@ -0,0 +1,12 @@
// Copyright 2019 Peter Dimov
// Use, modification and distribution is subject to the Boost Software License, Version 1.0.
// See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_FUNCTION_DETAIL_CONFIG_HPP_INCLUDED
#define BOOST_FUNCTION_DETAIL_CONFIG_HPP_INCLUDED
#if !defined(BOOST_FUNCTION_ENABLE_CXX03)
# define BOOST_FUNCTION_ENABLE_CXX03 0
#endif
#endif // #ifndef BOOST_FUNCTION_DETAIL_CONFIG_HPP_INCLUDED
@@ -7,6 +7,10 @@
// For more information, see http://www.boost.org
#include <boost/function/detail/config.hpp>
#if BOOST_FUNCTION_ENABLE_CXX03
#if BOOST_FUNCTION_NUM_ARGS == 0
# undef BOOST_FUNCTION_MAX_ARGS_DEFINED
# define BOOST_FUNCTION_MAX_ARGS_DEFINED 0
@@ -367,3 +371,5 @@
#else
# error Cannot handle Boost.Function objects that accept more than 50 arguments!
#endif
#endif
+14
View File
@@ -9,6 +9,7 @@
#ifndef BOOST_FUNCTION_FWD_HPP
#define BOOST_FUNCTION_FWD_HPP
#include <boost/config.hpp>
#include <boost/function/detail/config.hpp>
#if defined(__sgi) && defined(_COMPILER_VERSION) && _COMPILER_VERSION <= 730 && !defined(BOOST_STRICT_CONFIG)
// Work around a compiler bug.
@@ -24,9 +25,22 @@ namespace boost { namespace python { namespace objects {
# define BOOST_FUNCTION_NO_FUNCTION_TYPE_SYNTAX
#endif
#if !BOOST_FUNCTION_ENABLE_CXX03
# include <functional>
#endif
namespace boost {
#if BOOST_FUNCTION_ENABLE_CXX03
class bad_function_call;
#else
using std::bad_function_call;
#endif
#if !defined(BOOST_FUNCTION_NO_FUNCTION_TYPE_SYNTAX)
// Preferred syntax
template<typename Signature> class function;