diff options
author | Remko Tronçon <git@el-tramo.be> | 2010-02-11 12:14:00 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2010-02-11 12:14:00 (GMT) |
commit | 0efa7c32aaf21a29b42b5926cc116007056843be (patch) | |
tree | 882f663a5dd0e65694bf6077b71086dd77fd7ff8 /3rdParty/Boost/boost/mpl/aux_/preprocessed/dmc/basic_bind.hpp | |
parent | 1d20eabbc32274b491b4c2bedf73d19933d97bfd (diff) | |
download | swift-contrib-0efa7c32aaf21a29b42b5926cc116007056843be.zip swift-contrib-0efa7c32aaf21a29b42b5926cc116007056843be.tar.bz2 |
Moved some modules into separate git modules.
Diffstat (limited to '3rdParty/Boost/boost/mpl/aux_/preprocessed/dmc/basic_bind.hpp')
m--------- | 3rdParty/Boost | 0 | ||||
-rw-r--r-- | 3rdParty/Boost/boost/mpl/aux_/preprocessed/dmc/basic_bind.hpp | 406 |
2 files changed, 0 insertions, 406 deletions
diff --git a/3rdParty/Boost b/3rdParty/Boost new file mode 160000 +Subproject 3bbdbc8cf1996f23d9a366da8bac0f97be6ad79 diff --git a/3rdParty/Boost/boost/mpl/aux_/preprocessed/dmc/basic_bind.hpp b/3rdParty/Boost/boost/mpl/aux_/preprocessed/dmc/basic_bind.hpp deleted file mode 100644 index 1e73429..0000000 --- a/3rdParty/Boost/boost/mpl/aux_/preprocessed/dmc/basic_bind.hpp +++ /dev/null @@ -1,406 +0,0 @@ - -// Copyright Peter Dimov 2001 -// Copyright Aleksey Gurtovoy 2001-2004 -// -// 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) -// - -// Preprocessed version of "boost/mpl/aux_/basic_bind.hpp" header -// -- DO NOT modify by hand! - -namespace boost { namespace mpl { - -namespace aux { - -template< - typename T, typename U1, typename U2, typename U3, typename U4 - , typename U5 - > -struct resolve_bind_arg -{ - typedef T type; -}; - -template< - int N, typename U1, typename U2, typename U3, typename U4, typename U5 - > -struct resolve_bind_arg< arg<N>, U1, U2, U3, U4, U5 > -{ - typedef typename apply_wrap5<mpl::arg<N>, U1, U2, U3, U4, U5>::type type; -}; - -template< - typename F, typename T1, typename T2, typename T3, typename T4 - , typename T5, typename U1, typename U2, typename U3, typename U4 - , typename U5 - > -struct resolve_bind_arg< bind< F,T1,T2,T3,T4,T5 >, U1, U2, U3, U4, U5 > -{ - typedef bind< F,T1,T2,T3,T4,T5 > f_; - typedef typename apply_wrap5< f_,U1,U2,U3,U4,U5 >::type type; -}; - -} // namespace aux - -template< - typename F, int dummy_ - > -struct bind0 -{ - template< - typename U1 = na, typename U2 = na, typename U3 = na - , typename U4 = na, typename U5 = na - > - struct apply - { - private: - typedef typename aux::resolve_bind_arg< F,U1,U2,U3,U4,U5 >::type f_; - - public: - typedef typename apply_wrap0< - f_ - >::type type; - - }; -}; - -namespace aux { - -template< - typename F, typename U1, typename U2, typename U3, typename U4 - , typename U5 - > -struct resolve_bind_arg< - bind0<F>, U1, U2, U3, U4, U5 - > -{ - typedef bind0<F> f_; - typedef typename apply_wrap5< f_,U1,U2,U3,U4,U5 >::type type; -}; - -} // namespace aux - -BOOST_MPL_AUX_ARITY_SPEC(1, bind0) -BOOST_MPL_AUX_TEMPLATE_ARITY_SPEC(1, bind0) - -template< - typename F, int dummy_ - > -struct bind< F,na,na,na,na,na > - : bind0<F> -{ -}; - -template< - typename F, typename T1, int dummy_ - > -struct bind1 -{ - template< - typename U1 = na, typename U2 = na, typename U3 = na - , typename U4 = na, typename U5 = na - > - struct apply - { - private: - typedef typename aux::resolve_bind_arg< F,U1,U2,U3,U4,U5 >::type f_; - typedef aux::resolve_bind_arg< T1,U1,U2,U3,U4,U5 > t1; - - public: - typedef typename apply_wrap1< - f_ - , typename t1::type - >::type type; - - }; -}; - -namespace aux { - -template< - typename F, typename T1, typename U1, typename U2, typename U3 - , typename U4, typename U5 - > -struct resolve_bind_arg< - bind1< F,T1 >, U1, U2, U3, U4, U5 - > -{ - typedef bind1< F,T1 > f_; - typedef typename apply_wrap5< f_,U1,U2,U3,U4,U5 >::type type; -}; - -} // namespace aux - -BOOST_MPL_AUX_ARITY_SPEC(2, bind1) -BOOST_MPL_AUX_TEMPLATE_ARITY_SPEC(2, bind1) - -template< - typename F, typename T1, int dummy_ - > -struct bind< F,T1,na,na,na,na > - : bind1< F,T1 > -{ -}; - -template< - typename F, typename T1, typename T2, int dummy_ - > -struct bind2 -{ - template< - typename U1 = na, typename U2 = na, typename U3 = na - , typename U4 = na, typename U5 = na - > - struct apply - { - private: - typedef typename aux::resolve_bind_arg< F,U1,U2,U3,U4,U5 >::type f_; - typedef aux::resolve_bind_arg< T1,U1,U2,U3,U4,U5 > t1; - typedef aux::resolve_bind_arg< T2,U1,U2,U3,U4,U5 > t2; - - public: - typedef typename apply_wrap2< - f_ - , typename t1::type, typename t2::type - >::type type; - - }; -}; - -namespace aux { - -template< - typename F, typename T1, typename T2, typename U1, typename U2 - , typename U3, typename U4, typename U5 - > -struct resolve_bind_arg< - bind2< F,T1,T2 >, U1, U2, U3, U4, U5 - > -{ - typedef bind2< F,T1,T2 > f_; - typedef typename apply_wrap5< f_,U1,U2,U3,U4,U5 >::type type; -}; - -} // namespace aux - -BOOST_MPL_AUX_ARITY_SPEC(3, bind2) -BOOST_MPL_AUX_TEMPLATE_ARITY_SPEC(3, bind2) - -template< - typename F, typename T1, typename T2, int dummy_ - > -struct bind< F,T1,T2,na,na,na > - : bind2< F,T1,T2 > -{ -}; - -template< - typename F, typename T1, typename T2, typename T3, int dummy_ - > -struct bind3 -{ - template< - typename U1 = na, typename U2 = na, typename U3 = na - , typename U4 = na, typename U5 = na - > - struct apply - { - private: - typedef typename aux::resolve_bind_arg< F,U1,U2,U3,U4,U5 >::type f_; - typedef aux::resolve_bind_arg< T1,U1,U2,U3,U4,U5 > t1; - typedef aux::resolve_bind_arg< T2,U1,U2,U3,U4,U5 > t2; - typedef aux::resolve_bind_arg< T3,U1,U2,U3,U4,U5 > t3; - - public: - typedef typename apply_wrap3< - f_ - , typename t1::type, typename t2::type, typename t3::type - >::type type; - - }; -}; - -namespace aux { - -template< - typename F, typename T1, typename T2, typename T3, typename U1 - , typename U2, typename U3, typename U4, typename U5 - > -struct resolve_bind_arg< - bind3< F,T1,T2,T3 >, U1, U2, U3, U4, U5 - > -{ - typedef bind3< F,T1,T2,T3 > f_; - typedef typename apply_wrap5< f_,U1,U2,U3,U4,U5 >::type type; -}; - -} // namespace aux - -BOOST_MPL_AUX_ARITY_SPEC(4, bind3) -BOOST_MPL_AUX_TEMPLATE_ARITY_SPEC(4, bind3) - -template< - typename F, typename T1, typename T2, typename T3, int dummy_ - > -struct bind< F,T1,T2,T3,na,na > - : bind3< F,T1,T2,T3 > -{ -}; - -template< - typename F, typename T1, typename T2, typename T3, typename T4 - , int dummy_ - > -struct bind4 -{ - template< - typename U1 = na, typename U2 = na, typename U3 = na - , typename U4 = na, typename U5 = na - > - struct apply - { - private: - typedef typename aux::resolve_bind_arg< F,U1,U2,U3,U4,U5 >::type f_; - typedef aux::resolve_bind_arg< T1,U1,U2,U3,U4,U5 > t1; - typedef aux::resolve_bind_arg< T2,U1,U2,U3,U4,U5 > t2; - typedef aux::resolve_bind_arg< T3,U1,U2,U3,U4,U5 > t3; - typedef aux::resolve_bind_arg< T4,U1,U2,U3,U4,U5 > t4; - - public: - typedef typename apply_wrap4< - f_ - , typename t1::type, typename t2::type, typename t3::type - , typename t4::type - >::type type; - - }; -}; - -namespace aux { - -template< - typename F, typename T1, typename T2, typename T3, typename T4 - , typename U1, typename U2, typename U3, typename U4, typename U5 - > -struct resolve_bind_arg< - bind4< F,T1,T2,T3,T4 >, U1, U2, U3, U4, U5 - > -{ - typedef bind4< F,T1,T2,T3,T4 > f_; - typedef typename apply_wrap5< f_,U1,U2,U3,U4,U5 >::type type; -}; - -} // namespace aux - -BOOST_MPL_AUX_ARITY_SPEC(5, bind4) -BOOST_MPL_AUX_TEMPLATE_ARITY_SPEC(5, bind4) - -template< - typename F, typename T1, typename T2, typename T3, typename T4 - , int dummy_ - > -struct bind< F,T1,T2,T3,T4,na > - : bind4< F,T1,T2,T3,T4 > -{ -}; - -template< - typename F, typename T1, typename T2, typename T3, typename T4 - , typename T5, int dummy_ - > -struct bind5 -{ - template< - typename U1 = na, typename U2 = na, typename U3 = na - , typename U4 = na, typename U5 = na - > - struct apply - { - private: - typedef typename aux::resolve_bind_arg< F,U1,U2,U3,U4,U5 >::type f_; - typedef aux::resolve_bind_arg< T1,U1,U2,U3,U4,U5 > t1; - typedef aux::resolve_bind_arg< T2,U1,U2,U3,U4,U5 > t2; - typedef aux::resolve_bind_arg< T3,U1,U2,U3,U4,U5 > t3; - typedef aux::resolve_bind_arg< T4,U1,U2,U3,U4,U5 > t4; - typedef aux::resolve_bind_arg< T5,U1,U2,U3,U4,U5 > t5; - - public: - typedef typename apply_wrap5< - f_ - , typename t1::type, typename t2::type, typename t3::type - , typename t4::type, typename t5::type - >::type type; - - }; -}; - -namespace aux { - -template< - typename F, typename T1, typename T2, typename T3, typename T4 - , typename T5, typename U1, typename U2, typename U3, typename U4 - , typename U5 - > -struct resolve_bind_arg< - bind5< F,T1,T2,T3,T4,T5 >, U1, U2, U3, U4, U5 - > -{ - typedef bind5< F,T1,T2,T3,T4,T5 > f_; - typedef typename apply_wrap5< f_,U1,U2,U3,U4,U5 >::type type; -}; - -} // namespace aux - -BOOST_MPL_AUX_ARITY_SPEC(6, bind5) -BOOST_MPL_AUX_TEMPLATE_ARITY_SPEC(6, bind5) - -/// primary template (not a specialization!) - -template< - typename F, typename T1, typename T2, typename T3, typename T4 - , typename T5, int dummy_ - > -struct bind - : bind5< F,T1,T2,T3,T4,T5 > -{ -}; - -/// if_/eval_if specializations -template< template< typename T1, typename T2, typename T3 > class F, typename Tag > -struct quote3; - -template< typename T1, typename T2, typename T3 > struct if_; - -template< - typename Tag, typename T1, typename T2, typename T3 - > -struct bind3< - quote3< if_,Tag > - , T1, T2, T3 - > -{ - template< - typename U1 = na, typename U2 = na, typename U3 = na - , typename U4 = na, typename U5 = na - > - struct apply - { - private: - typedef mpl::arg<1> n1; - typedef aux::resolve_bind_arg< T1,U1,U2,U3,U4,U5 > t1; - typedef aux::resolve_bind_arg< T2,U1,U2,U3,U4,U5 > t2; - typedef aux::resolve_bind_arg< T3,U1,U2,U3,U4,U5 > t3; - typedef typename if_< - typename t1::type - , t2, t3 - >::type f_; - - public: - typedef typename f_::type type; - }; -}; - -}} - |