diff options
author | bugaevskiy <bugaevskiy@yandex-team.com> | 2022-07-25 10:19:11 +0300 |
---|---|---|
committer | bugaevskiy <bugaevskiy@yandex-team.com> | 2022-07-25 10:19:11 +0300 |
commit | 5be2cb45c6c00449b1e679e430c78d0662e25830 (patch) | |
tree | 74af00d03d104d4fbec0f39336af9f58cdc6d12b | |
parent | 138258dec9e70548481794f60ca44c0722047c63 (diff) | |
download | ydb-5be2cb45c6c00449b1e679e430c78d0662e25830.tar.gz |
Reimport boost/bind as a separate project
-rw-r--r-- | CMakeLists.darwin.txt | 1 | ||||
-rw-r--r-- | CMakeLists.linux.txt | 1 | ||||
-rw-r--r-- | contrib/restricted/boost/CMakeLists.txt | 1 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/CMakeLists.txt | 19 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/README.md | 6 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/include/boost/bind.hpp (renamed from contrib/restricted/boost/boost/bind.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/include/boost/bind/arg.hpp (renamed from contrib/restricted/boost/boost/bind/arg.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/include/boost/bind/bind.hpp (renamed from contrib/restricted/boost/boost/bind/bind.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/include/boost/bind/bind_cc.hpp (renamed from contrib/restricted/boost/boost/bind/bind_cc.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/include/boost/bind/bind_mf2_cc.hpp (renamed from contrib/restricted/boost/boost/bind/bind_mf2_cc.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/include/boost/bind/bind_mf_cc.hpp (renamed from contrib/restricted/boost/boost/bind/bind_mf_cc.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/include/boost/bind/bind_template.hpp (renamed from contrib/restricted/boost/boost/bind/bind_template.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/include/boost/bind/mem_fn.hpp (renamed from contrib/restricted/boost/boost/bind/mem_fn.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/include/boost/bind/mem_fn_cc.hpp (renamed from contrib/restricted/boost/boost/bind/mem_fn_cc.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/include/boost/bind/mem_fn_template.hpp (renamed from contrib/restricted/boost/boost/bind/mem_fn_template.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/include/boost/bind/mem_fn_vw.hpp (renamed from contrib/restricted/boost/boost/bind/mem_fn_vw.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/include/boost/bind/placeholders.hpp (renamed from contrib/restricted/boost/boost/bind/placeholders.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/include/boost/bind/storage.hpp (renamed from contrib/restricted/boost/boost/bind/storage.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/include/boost/is_placeholder.hpp (renamed from contrib/restricted/boost/boost/is_placeholder.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/include/boost/mem_fn.hpp (renamed from contrib/restricted/boost/boost/mem_fn.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/bind/apply.hpp | 74 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/bind/make_adaptable.hpp | 187 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/bind/protect.hpp | 304 |
23 files changed, 28 insertions, 565 deletions
diff --git a/CMakeLists.darwin.txt b/CMakeLists.darwin.txt index 3dd8b2dabf..cce2ec0e5c 100644 --- a/CMakeLists.darwin.txt +++ b/CMakeLists.darwin.txt @@ -140,6 +140,7 @@ add_subdirectory(contrib/restricted/boost/core) add_subdirectory(contrib/restricted/boost/static_assert) add_subdirectory(contrib/restricted/boost/throw_exception) add_subdirectory(contrib/restricted/boost/array) +add_subdirectory(contrib/restricted/boost/bind) add_subdirectory(contrib/restricted/boost/io) add_subdirectory(contrib/restricted/boost/logic) add_subdirectory(contrib/restricted/boost/move) diff --git a/CMakeLists.linux.txt b/CMakeLists.linux.txt index d55eb89b2d..c3f8622c4b 100644 --- a/CMakeLists.linux.txt +++ b/CMakeLists.linux.txt @@ -218,6 +218,7 @@ add_subdirectory(contrib/restricted/boost/core) add_subdirectory(contrib/restricted/boost/static_assert) add_subdirectory(contrib/restricted/boost/throw_exception) add_subdirectory(contrib/restricted/boost/array) +add_subdirectory(contrib/restricted/boost/bind) add_subdirectory(contrib/restricted/boost/io) add_subdirectory(contrib/restricted/boost/logic) add_subdirectory(contrib/restricted/boost/move) diff --git a/contrib/restricted/boost/CMakeLists.txt b/contrib/restricted/boost/CMakeLists.txt index b7e16fc4aa..14d5f969fa 100644 --- a/contrib/restricted/boost/CMakeLists.txt +++ b/contrib/restricted/boost/CMakeLists.txt @@ -16,6 +16,7 @@ target_link_libraries(contrib-restricted-boost INTERFACE restricted-boost-align restricted-boost-array restricted-boost-assert + restricted-boost-bind restricted-boost-config restricted-boost-core restricted-boost-io diff --git a/contrib/restricted/boost/bind/CMakeLists.txt b/contrib/restricted/boost/bind/CMakeLists.txt new file mode 100644 index 0000000000..7d8ced0c66 --- /dev/null +++ b/contrib/restricted/boost/bind/CMakeLists.txt @@ -0,0 +1,19 @@ + +# This file was gererated by the build system used internally in the Yandex monorepo. +# Only simple modifications are allowed (adding source-files to targets, adding simple properties +# like target_include_directories). These modifications will be ported to original +# ya.make files by maintainers. Any complex modifications which can't be ported back to the +# original buildsystem will not be accepted. + + + +add_library(restricted-boost-bind INTERFACE) +target_include_directories(restricted-boost-bind INTERFACE + ${CMAKE_SOURCE_DIR}/contrib/restricted/boost/bind/include +) +target_link_libraries(restricted-boost-bind INTERFACE + contrib-libs-cxxsupp + yutil + restricted-boost-config + restricted-boost-core +) diff --git a/contrib/restricted/boost/bind/README.md b/contrib/restricted/boost/bind/README.md new file mode 100644 index 0000000000..ebe55532af --- /dev/null +++ b/contrib/restricted/boost/bind/README.md @@ -0,0 +1,6 @@ +# Boost.Bind + +Branch | Travis | Appveyor +---------|--------|--------- +Develop | [](https://travis-ci.org/boostorg/bind) | [](https://ci.appveyor.com/project/pdimov/bind) +Master | [](https://travis-ci.org/boostorg/bind) | [](https://ci.appveyor.com/project/pdimov/bind) diff --git a/contrib/restricted/boost/boost/bind.hpp b/contrib/restricted/boost/bind/include/boost/bind.hpp index 450120c7a7..450120c7a7 100644 --- a/contrib/restricted/boost/boost/bind.hpp +++ b/contrib/restricted/boost/bind/include/boost/bind.hpp diff --git a/contrib/restricted/boost/boost/bind/arg.hpp b/contrib/restricted/boost/bind/include/boost/bind/arg.hpp index cb52e6689f..cb52e6689f 100644 --- a/contrib/restricted/boost/boost/bind/arg.hpp +++ b/contrib/restricted/boost/bind/include/boost/bind/arg.hpp diff --git a/contrib/restricted/boost/boost/bind/bind.hpp b/contrib/restricted/boost/bind/include/boost/bind/bind.hpp index 4cedc5e9a4..4cedc5e9a4 100644 --- a/contrib/restricted/boost/boost/bind/bind.hpp +++ b/contrib/restricted/boost/bind/include/boost/bind/bind.hpp diff --git a/contrib/restricted/boost/boost/bind/bind_cc.hpp b/contrib/restricted/boost/bind/include/boost/bind/bind_cc.hpp index 278aa9a2a8..278aa9a2a8 100644 --- a/contrib/restricted/boost/boost/bind/bind_cc.hpp +++ b/contrib/restricted/boost/bind/include/boost/bind/bind_cc.hpp diff --git a/contrib/restricted/boost/boost/bind/bind_mf2_cc.hpp b/contrib/restricted/boost/bind/include/boost/bind/bind_mf2_cc.hpp index 66476bc19d..66476bc19d 100644 --- a/contrib/restricted/boost/boost/bind/bind_mf2_cc.hpp +++ b/contrib/restricted/boost/bind/include/boost/bind/bind_mf2_cc.hpp diff --git a/contrib/restricted/boost/boost/bind/bind_mf_cc.hpp b/contrib/restricted/boost/bind/include/boost/bind/bind_mf_cc.hpp index bbfd3719b6..bbfd3719b6 100644 --- a/contrib/restricted/boost/boost/bind/bind_mf_cc.hpp +++ b/contrib/restricted/boost/bind/include/boost/bind/bind_mf_cc.hpp diff --git a/contrib/restricted/boost/boost/bind/bind_template.hpp b/contrib/restricted/boost/bind/include/boost/bind/bind_template.hpp index 411d20c74e..411d20c74e 100644 --- a/contrib/restricted/boost/boost/bind/bind_template.hpp +++ b/contrib/restricted/boost/bind/include/boost/bind/bind_template.hpp diff --git a/contrib/restricted/boost/boost/bind/mem_fn.hpp b/contrib/restricted/boost/bind/include/boost/bind/mem_fn.hpp index 956e7d8885..956e7d8885 100644 --- a/contrib/restricted/boost/boost/bind/mem_fn.hpp +++ b/contrib/restricted/boost/bind/include/boost/bind/mem_fn.hpp diff --git a/contrib/restricted/boost/boost/bind/mem_fn_cc.hpp b/contrib/restricted/boost/bind/include/boost/bind/mem_fn_cc.hpp index 8b6ea0ba13..8b6ea0ba13 100644 --- a/contrib/restricted/boost/boost/bind/mem_fn_cc.hpp +++ b/contrib/restricted/boost/bind/include/boost/bind/mem_fn_cc.hpp diff --git a/contrib/restricted/boost/boost/bind/mem_fn_template.hpp b/contrib/restricted/boost/bind/include/boost/bind/mem_fn_template.hpp index b26d585dbc..b26d585dbc 100644 --- a/contrib/restricted/boost/boost/bind/mem_fn_template.hpp +++ b/contrib/restricted/boost/bind/include/boost/bind/mem_fn_template.hpp diff --git a/contrib/restricted/boost/boost/bind/mem_fn_vw.hpp b/contrib/restricted/boost/bind/include/boost/bind/mem_fn_vw.hpp index f3fc58db04..f3fc58db04 100644 --- a/contrib/restricted/boost/boost/bind/mem_fn_vw.hpp +++ b/contrib/restricted/boost/bind/include/boost/bind/mem_fn_vw.hpp diff --git a/contrib/restricted/boost/boost/bind/placeholders.hpp b/contrib/restricted/boost/bind/include/boost/bind/placeholders.hpp index b819ef4c46..b819ef4c46 100644 --- a/contrib/restricted/boost/boost/bind/placeholders.hpp +++ b/contrib/restricted/boost/bind/include/boost/bind/placeholders.hpp diff --git a/contrib/restricted/boost/boost/bind/storage.hpp b/contrib/restricted/boost/bind/include/boost/bind/storage.hpp index be490b0f59..be490b0f59 100644 --- a/contrib/restricted/boost/boost/bind/storage.hpp +++ b/contrib/restricted/boost/bind/include/boost/bind/storage.hpp diff --git a/contrib/restricted/boost/boost/is_placeholder.hpp b/contrib/restricted/boost/bind/include/boost/is_placeholder.hpp index 5f1b544f94..5f1b544f94 100644 --- a/contrib/restricted/boost/boost/is_placeholder.hpp +++ b/contrib/restricted/boost/bind/include/boost/is_placeholder.hpp diff --git a/contrib/restricted/boost/boost/mem_fn.hpp b/contrib/restricted/boost/bind/include/boost/mem_fn.hpp index 3bcd2c548b..3bcd2c548b 100644 --- a/contrib/restricted/boost/boost/mem_fn.hpp +++ b/contrib/restricted/boost/bind/include/boost/mem_fn.hpp diff --git a/contrib/restricted/boost/boost/bind/apply.hpp b/contrib/restricted/boost/boost/bind/apply.hpp deleted file mode 100644 index 6a43a89ac8..0000000000 --- a/contrib/restricted/boost/boost/bind/apply.hpp +++ /dev/null @@ -1,74 +0,0 @@ -#ifndef BOOST_BIND_APPLY_HPP_INCLUDED -#define BOOST_BIND_APPLY_HPP_INCLUDED - -// -// apply.hpp -// -// Copyright (c) 2002, 2003 Peter Dimov and Multi Media Ltd. -// -// Distributed under 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) -// - -namespace boost -{ - -template<class R> struct apply -{ - typedef R result_type; - - template<class F> result_type operator()(F & f) const - { - return f(); - } - - template<class F, class A1> result_type operator()(F & f, A1 & a1) const - { - return f(a1); - } - - template<class F, class A1, class A2> result_type operator()(F & f, A1 & a1, A2 & a2) const - { - return f(a1, a2); - } - - template<class F, class A1, class A2, class A3> result_type operator()(F & f, A1 & a1, A2 & a2, A3 & a3) const - { - return f(a1, a2, a3); - } - - template<class F, class A1, class A2, class A3, class A4> result_type operator()(F & f, A1 & a1, A2 & a2, A3 & a3, A4 & a4) const - { - return f(a1, a2, a3, a4); - } - - template<class F, class A1, class A2, class A3, class A4, class A5> result_type operator()(F & f, A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5) const - { - return f(a1, a2, a3, a4, a5); - } - - template<class F, class A1, class A2, class A3, class A4, class A5, class A6> result_type operator()(F & f, A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6) const - { - return f(a1, a2, a3, a4, a5, a6); - } - - template<class F, class A1, class A2, class A3, class A4, class A5, class A6, class A7> result_type operator()(F & f, A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6, A7 & a7) const - { - return f(a1, a2, a3, a4, a5, a6, a7); - } - - template<class F, class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8> result_type operator()(F & f, A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6, A7 & a7, A8 & a8) const - { - return f(a1, a2, a3, a4, a5, a6, a7, a8); - } - - template<class F, class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8, class A9> result_type operator()(F & f, A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6, A7 & a7, A8 & a8, A9 & a9) const - { - return f(a1, a2, a3, a4, a5, a6, a7, a8, a9); - } -}; - -} // namespace boost - -#endif // #ifndef BOOST_BIND_APPLY_HPP_INCLUDED diff --git a/contrib/restricted/boost/boost/bind/make_adaptable.hpp b/contrib/restricted/boost/boost/bind/make_adaptable.hpp deleted file mode 100644 index b9f083e307..0000000000 --- a/contrib/restricted/boost/boost/bind/make_adaptable.hpp +++ /dev/null @@ -1,187 +0,0 @@ -#ifndef BOOST_BIND_MAKE_ADAPTABLE_HPP_INCLUDED -#define BOOST_BIND_MAKE_ADAPTABLE_HPP_INCLUDED - -// -// make_adaptable.hpp -// -// Copyright (c) 2002 Peter Dimov and Multi Media Ltd. -// -// Distributed under 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) -// - -namespace boost -{ - -namespace _bi -{ - -template<class R, class F> class af0 -{ -public: - - typedef R result_type; - - explicit af0(F f): f_(f) - { - } - - result_type operator()() - { - return f_(); - } - - result_type operator()() const - { - return f_(); - } - -private: - - F f_; -}; - -template<class R, class A1, class F> class af1 -{ -public: - - typedef R result_type; - typedef A1 argument_type; - typedef A1 arg1_type; - - explicit af1(F f): f_(f) - { - } - - result_type operator()(A1 a1) - { - return f_(a1); - } - - result_type operator()(A1 a1) const - { - return f_(a1); - } - -private: - - F f_; -}; - -template<class R, class A1, class A2, class F> class af2 -{ -public: - - typedef R result_type; - typedef A1 first_argument_type; - typedef A2 second_argument_type; - typedef A1 arg1_type; - typedef A2 arg2_type; - - explicit af2(F f): f_(f) - { - } - - result_type operator()(A1 a1, A2 a2) - { - return f_(a1, a2); - } - - result_type operator()(A1 a1, A2 a2) const - { - return f_(a1, a2); - } - -private: - - F f_; -}; - -template<class R, class A1, class A2, class A3, class F> class af3 -{ -public: - - typedef R result_type; - typedef A1 arg1_type; - typedef A2 arg2_type; - typedef A3 arg3_type; - - explicit af3(F f): f_(f) - { - } - - result_type operator()(A1 a1, A2 a2, A3 a3) - { - return f_(a1, a2, a3); - } - - result_type operator()(A1 a1, A2 a2, A3 a3) const - { - return f_(a1, a2, a3); - } - -private: - - F f_; -}; - -template<class R, class A1, class A2, class A3, class A4, class F> class af4 -{ -public: - - typedef R result_type; - typedef A1 arg1_type; - typedef A2 arg2_type; - typedef A3 arg3_type; - typedef A4 arg4_type; - - explicit af4(F f): f_(f) - { - } - - result_type operator()(A1 a1, A2 a2, A3 a3, A4 a4) - { - return f_(a1, a2, a3, a4); - } - - result_type operator()(A1 a1, A2 a2, A3 a3, A4 a4) const - { - return f_(a1, a2, a3, a4); - } - -private: - - F f_; -}; - -} // namespace _bi - -template<class R, class F> _bi::af0<R, F> make_adaptable(F f) -{ - return _bi::af0<R, F>(f); -} - -template<class R, class A1, class F> _bi::af1<R, A1, F> make_adaptable(F f) -{ - return _bi::af1<R, A1, F>(f); -} - -template<class R, class A1, class A2, class F> _bi::af2<R, A1, A2, F> make_adaptable(F f) -{ - return _bi::af2<R, A1, A2, F>(f); -} - -template<class R, class A1, class A2, class A3, class F> _bi::af3<R, A1, A2, A3, F> make_adaptable(F f) -{ - return _bi::af3<R, A1, A2, A3, F>(f); -} - -template<class R, class A1, class A2, class A3, class A4, class F> _bi::af4<R, A1, A2, A3, A4, F> make_adaptable(F f) -{ - return _bi::af4<R, A1, A2, A3, A4, F>(f); -} - -} // namespace boost - -#endif // #ifndef BOOST_BIND_MAKE_ADAPTABLE_HPP_INCLUDED diff --git a/contrib/restricted/boost/boost/bind/protect.hpp b/contrib/restricted/boost/boost/bind/protect.hpp deleted file mode 100644 index 749e158c34..0000000000 --- a/contrib/restricted/boost/boost/bind/protect.hpp +++ /dev/null @@ -1,304 +0,0 @@ -#ifndef BOOST_BIND_PROTECT_HPP_INCLUDED -#define BOOST_BIND_PROTECT_HPP_INCLUDED - -// -// protect.hpp -// -// Copyright (c) 2002 Peter Dimov and Multi Media Ltd. -// Copyright (c) 2009 Steven Watanabe -// -// Distributed under 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) -// - -#include <boost/config.hpp> -#include <boost/detail/workaround.hpp> - -namespace boost -{ - -namespace _bi -{ - -template<class F> class protected_bind_t -{ -public: - - typedef typename F::result_type result_type; - - explicit protected_bind_t(F f): f_(f) - { - } - - result_type operator()() - { - return f_(); - } - - result_type operator()() const - { - return f_(); - } - - template<class A1> result_type operator()(A1 & a1) - { - return f_(a1); - } - - template<class A1> result_type operator()(A1 & a1) const - { - return f_(a1); - } - - -#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ - && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) - - template<class A1> result_type operator()(const A1 & a1) - { - return f_(a1); - } - - template<class A1> result_type operator()(const A1 & a1) const - { - return f_(a1); - } - -#endif - - template<class A1, class A2> result_type operator()(A1 & a1, A2 & a2) - { - return f_(a1, a2); - } - - template<class A1, class A2> result_type operator()(A1 & a1, A2 & a2) const - { - return f_(a1, a2); - } - -#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ - && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) - - template<class A1, class A2> result_type operator()(A1 const & a1, A2 & a2) - { - return f_(a1, a2); - } - - template<class A1, class A2> result_type operator()(A1 const & a1, A2 & a2) const - { - return f_(a1, a2); - } - - template<class A1, class A2> result_type operator()(A1 & a1, A2 const & a2) - { - return f_(a1, a2); - } - - template<class A1, class A2> result_type operator()(A1 & a1, A2 const & a2) const - { - return f_(a1, a2); - } - - template<class A1, class A2> result_type operator()(A1 const & a1, A2 const & a2) - { - return f_(a1, a2); - } - - template<class A1, class A2> result_type operator()(A1 const & a1, A2 const & a2) const - { - return f_(a1, a2); - } - -#endif - - template<class A1, class A2, class A3> result_type operator()(A1 & a1, A2 & a2, A3 & a3) - { - return f_(a1, a2, a3); - } - - template<class A1, class A2, class A3> result_type operator()(A1 & a1, A2 & a2, A3 & a3) const - { - return f_(a1, a2, a3); - } - -#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ - && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) - - template<class A1, class A2, class A3> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3) - { - return f_(a1, a2, a3); - } - - template<class A1, class A2, class A3> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3) const - { - return f_(a1, a2, a3); - } - -#endif - - template<class A1, class A2, class A3, class A4> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4) - { - return f_(a1, a2, a3, a4); - } - - template<class A1, class A2, class A3, class A4> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4) const - { - return f_(a1, a2, a3, a4); - } - -#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ - && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) - - template<class A1, class A2, class A3, class A4> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4) - { - return f_(a1, a2, a3, a4); - } - - template<class A1, class A2, class A3, class A4> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4) const - { - return f_(a1, a2, a3, a4); - } - -#endif - - template<class A1, class A2, class A3, class A4, class A5> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5) - { - return f_(a1, a2, a3, a4, a5); - } - - template<class A1, class A2, class A3, class A4, class A5> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5) const - { - return f_(a1, a2, a3, a4, a5); - } - -#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ - && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) - - template<class A1, class A2, class A3, class A4, class A5> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5) - { - return f_(a1, a2, a3, a4, a5); - } - - template<class A1, class A2, class A3, class A4, class A5> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5) const - { - return f_(a1, a2, a3, a4, a5); - } - -#endif - - template<class A1, class A2, class A3, class A4, class A5, class A6> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6) - { - return f_(a1, a2, a3, a4, a5, a6); - } - - template<class A1, class A2, class A3, class A4, class A5, class A6> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6) const - { - return f_(a1, a2, a3, a4, a5, a6); - } - -#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ - && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) - - template<class A1, class A2, class A3, class A4, class A5, class A6> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5, A6 const & a6) - { - return f_(a1, a2, a3, a4, a5, a6); - } - - template<class A1, class A2, class A3, class A4, class A5, class A6> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5, A6 const & a6) const - { - return f_(a1, a2, a3, a4, a5, a6); - } - -#endif - - template<class A1, class A2, class A3, class A4, class A5, class A6, class A7> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6, A7 & a7) - { - return f_(a1, a2, a3, a4, a5, a6, a7); - } - - template<class A1, class A2, class A3, class A4, class A5, class A6, class A7> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6, A7 & a7) const - { - return f_(a1, a2, a3, a4, a5, a6, a7); - } - -#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ - && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) - - template<class A1, class A2, class A3, class A4, class A5, class A6, class A7> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5, A6 const & a6, A7 const & a7) - { - return f_(a1, a2, a3, a4, a5, a6, a7); - } - - template<class A1, class A2, class A3, class A4, class A5, class A6, class A7> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5, A6 const & a6, A7 const & a7) const - { - return f_(a1, a2, a3, a4, a5, a6, a7); - } - -#endif - - template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6, A7 & a7, A8 & a8) - { - return f_(a1, a2, a3, a4, a5, a6, a7, a8); - } - - template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6, A7 & a7, A8 & a8) const - { - return f_(a1, a2, a3, a4, a5, a6, a7, a8); - } - -#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ - && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) - - template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5, A6 const & a6, A7 const & a7, A8 const & a8) - { - return f_(a1, a2, a3, a4, a5, a6, a7, a8); - } - - template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5, A6 const & a6, A7 const & a7, A8 const & a8) const - { - return f_(a1, a2, a3, a4, a5, a6, a7, a8); - } - -#endif - - template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8, class A9> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6, A7 & a7, A8 & a8, A9 & a9) - { - return f_(a1, a2, a3, a4, a5, a6, a7, a8, a9); - } - - template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8, class A9> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6, A7 & a7, A8 & a8, A9 & a9) const - { - return f_(a1, a2, a3, a4, a5, a6, a7, a8, a9); - } - -#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ - && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) - - template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8, class A9> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5, A6 const & a6, A7 const & a7, A8 const & a8, A9 const & a9) - { - return f_(a1, a2, a3, a4, a5, a6, a7, a8, a9); - } - - template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8, class A9> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5, A6 const & a6, A7 const & a7, A8 const & a8, A9 const & a9) const - { - return f_(a1, a2, a3, a4, a5, a6, a7, a8, a9); - } - -#endif - -private: - - F f_; -}; - -} // namespace _bi - -template<class F> _bi::protected_bind_t<F> protect(F f) -{ - return _bi::protected_bind_t<F>(f); -} - -} // namespace boost - -#endif // #ifndef BOOST_BIND_PROTECT_HPP_INCLUDED |