bind_functions.hpp

来自「Boost provides free peer-reviewed portab」· HPP 代码 · 共 1,880 行 · 第 1/4 页

HPP
1,880
字号
bind(Result(* const & a1)(Par1, Par2), const Arg2& a2, const Arg3& a3) {  return    lambda_functor_base<      action<3, function_action<3, Result> >,      typename detail::bind_tuple_mapper<        Result(*)(Par1, Par2), const Arg2, const Arg3      >::type    >    ( typename detail::bind_tuple_mapper<        Result(*)(Par1, Par2), const Arg2, const Arg3      >::type      (a1, a2, a3)    );} #endif // 4-argument bind functions --------------------------#ifndef BOOST_REF_TO_FUNC_CONFLICTS_WITH_REF_TO_Ttemplate <class Result, class Par1, class Par2, class Par3, class Arg2,          class Arg3, class Arg4>inline constlambda_functor<  lambda_functor_base<    action<4, function_action<4, Result> >,    typename detail::bind_tuple_mapper<      Result(&)(Par1, Par2, Par3), const Arg2, const Arg3, const Arg4    >::type  >>bind(Result(&a1)(Par1, Par2, Par3), const Arg2& a2, const Arg3& a3,     const Arg4& a4) {  return    lambda_functor_base<      action<4, function_action<4, Result> >,      typename detail::bind_tuple_mapper<        Result(&)(Par1, Par2, Par3), const Arg2, const Arg3, const Arg4      >::type    >    ( typename detail::bind_tuple_mapper<        Result(&)(Par1, Par2, Par3), const Arg2, const Arg3, const Arg4      >::type      (a1, a2, a3, a4)    );}#endif #ifndef BOOST_LAMBDA_INCORRECT_BIND_OVERLOADING template <class Arg1, class Arg2, class Arg3, class Arg4>inline constlambda_functor<  lambda_functor_base<    action<4, function_action<4> >,    typename detail::bind_tuple_mapper<      const Arg1, const Arg2, const Arg3, const Arg4    >::type  >>bind(const Arg1& a1, const Arg2& a2, const Arg3& a3, const Arg4& a4) {  return    lambda_functor_base<      action<4, function_action<4> >,      typename detail::bind_tuple_mapper<        const Arg1, const Arg2, const Arg3, const Arg4      >::type    >    ( typename detail::bind_tuple_mapper<        const Arg1, const Arg2, const Arg3, const Arg4      >::type      (a1, a2, a3, a4)    );}template <class Result, class Arg1, class Arg2, class Arg3, class Arg4>inline constlambda_functor<  lambda_functor_base<    action<4, function_action<4, Result> >,    typename detail::bind_tuple_mapper<      const Arg1, const Arg2, const Arg3, const Arg4    >::type  >>bind(const Arg1& a1, const Arg2& a2, const Arg3& a3, const Arg4& a4) {  return    lambda_functor_base<      action<4, function_action<4, Result> >,      typename detail::bind_tuple_mapper<        const Arg1, const Arg2, const Arg3, const Arg4      >::type    >    ( typename detail::bind_tuple_mapper<        const Arg1, const Arg2, const Arg3, const Arg4      >::type      (a1, a2, a3, a4)    );} #else template <class Arg1, class Arg2, class Arg3, class Arg4>inline constlambda_functor<  lambda_functor_base<    action<4, function_action<4> >,    typename detail::bind_tuple_mapper<      typename detail::constify_non_funcs<Arg1>::type, const Arg2, const Arg3,      const Arg4    >::type  >>bind(const Arg1& a1, const Arg2& a2, const Arg3& a3, const Arg4& a4) {  return    lambda_functor_base<      action<4, function_action<4> >,      typename detail::bind_tuple_mapper<        typename detail::constify_non_funcs<Arg1>::type, const Arg2,        const Arg3, const Arg4      >::type    >    ( typename detail::bind_tuple_mapper<        typename detail::constify_non_funcs<Arg1>::type, const Arg2,        const Arg3, const Arg4      >::type      (a1, a2, a3, a4)    );}template <class Result, class Arg1, class Arg2, class Arg3, class Arg4>inline constlambda_functor<  lambda_functor_base<    action<4, function_action<4, Result> >,    typename detail::bind_tuple_mapper<      typename detail::constify_non_funcs<Arg1>::type, const Arg2, const Arg3,      const Arg4    >::type  >>bind(const Arg1& a1, const Arg2& a2, const Arg3& a3, const Arg4& a4) {  return    lambda_functor_base<      action<4, function_action<4, Result> >,      typename detail::bind_tuple_mapper<        typename detail::constify_non_funcs<Arg1>::type, const Arg2,        const Arg3, const Arg4      >::type    >    ( typename detail::bind_tuple_mapper<        typename detail::constify_non_funcs<Arg1>::type, const Arg2,        const Arg3, const Arg4      >::type      (a1, a2, a3, a4)    );}template <class Result, class Par1, class Par2, class Par3, class Arg2,          class Arg3, class Arg4>inline constlambda_functor<  lambda_functor_base<    action<4, function_action<4, Result> >,    typename detail::bind_tuple_mapper<      Result(*)(Par1, Par2, Par3), const Arg2, const Arg3, const Arg4    >::type  >>bind(Result(* const & a1)(Par1, Par2, Par3), const Arg2& a2,     const Arg3& a3, const Arg4& a4) {  return    lambda_functor_base<      action<4, function_action<4, Result> >,      typename detail::bind_tuple_mapper<        Result(*)(Par1, Par2, Par3), const Arg2, const Arg3, const Arg4      >::type    >    ( typename detail::bind_tuple_mapper<        Result(*)(Par1, Par2, Par3), const Arg2, const Arg3, const Arg4      >::type      (a1, a2, a3, a4)    );} #endif // 5-argument bind functions --------------------------#ifndef BOOST_REF_TO_FUNC_CONFLICTS_WITH_REF_TO_Ttemplate <class Result, class Par1, class Par2, class Par3, class Par4,          class Arg2, class Arg3, class Arg4, class Arg5>inline constlambda_functor<  lambda_functor_base<    action<5, function_action<5, Result> >,    typename detail::bind_tuple_mapper<      Result(&)(Par1, Par2, Par3, Par4), const Arg2, const Arg3, const Arg4,      const Arg5    >::type  >>bind(Result(&a1)(Par1, Par2, Par3, Par4), const Arg2& a2, const Arg3& a3,     const Arg4& a4, const Arg5& a5) {  return    lambda_functor_base<      action<5, function_action<5, Result> >,      typename detail::bind_tuple_mapper<        Result(&)(Par1, Par2, Par3, Par4), const Arg2, const Arg3, const Arg4,        const Arg5      >::type    >    ( typename detail::bind_tuple_mapper<        Result(&)(Par1, Par2, Par3, Par4), const Arg2, const Arg3, const Arg4,        const Arg5      >::type      (a1, a2, a3, a4, a5)    );}#endif #ifndef BOOST_LAMBDA_INCORRECT_BIND_OVERLOADING template <class Arg1, class Arg2, class Arg3, class Arg4, class Arg5>inline constlambda_functor<  lambda_functor_base<    action<5, function_action<5> >,    typename detail::bind_tuple_mapper<      const Arg1, const Arg2, const Arg3, const Arg4, const Arg5    >::type  >>bind(const Arg1& a1, const Arg2& a2, const Arg3& a3, const Arg4& a4,     const Arg5& a5) {  return    lambda_functor_base<      action<5, function_action<5> >,      typename detail::bind_tuple_mapper<        const Arg1, const Arg2, const Arg3, const Arg4, const Arg5      >::type    >    ( typename detail::bind_tuple_mapper<        const Arg1, const Arg2, const Arg3, const Arg4, const Arg5      >::type      (a1, a2, a3, a4, a5)    );}template <class Result, class Arg1, class Arg2, class Arg3, class Arg4,          class Arg5>inline constlambda_functor<  lambda_functor_base<    action<5, function_action<5, Result> >,    typename detail::bind_tuple_mapper<      const Arg1, const Arg2, const Arg3, const Arg4, const Arg5    >::type  >>bind(const Arg1& a1, const Arg2& a2, const Arg3& a3, const Arg4& a4,     const Arg5& a5) {  return    lambda_functor_base<      action<5, function_action<5, Result> >,      typename detail::bind_tuple_mapper<        const Arg1, const Arg2, const Arg3, const Arg4, const Arg5      >::type    >    ( typename detail::bind_tuple_mapper<        const Arg1, const Arg2, const Arg3, const Arg4, const Arg5      >::type      (a1, a2, a3, a4, a5)    );} #else template <class Arg1, class Arg2, class Arg3, class Arg4, class Arg5>inline constlambda_functor<  lambda_functor_base<    action<5, function_action<5> >,    typename detail::bind_tuple_mapper<      typename detail::constify_non_funcs<Arg1>::type, const Arg2, const Arg3,      const Arg4, const Arg5    >::type  >>bind(const Arg1& a1, const Arg2& a2, const Arg3& a3, const Arg4& a4,     const Arg5& a5) {  return    lambda_functor_base<      action<5, function_action<5> >,      typename detail::bind_tuple_mapper<        typename detail::constify_non_funcs<Arg1>::type, const Arg2,        const Arg3, const Arg4, const Arg5      >::type    >    ( typename detail::bind_tuple_mapper<        typename detail::constify_non_funcs<Arg1>::type, const Arg2,        const Arg3, const Arg4, const Arg5      >::type      (a1, a2, a3, a4, a5)    );}template <class Result, class Arg1, class Arg2, class Arg3, class Arg4,          class Arg5>inline constlambda_functor<  lambda_functor_base<    action<5, function_action<5, Result> >,    typename detail::bind_tuple_mapper<      typename detail::constify_non_funcs<Arg1>::type, const Arg2, const Arg3,      const Arg4, const Arg5    >::type  >>bind(const Arg1& a1, const Arg2& a2, const Arg3& a3, const Arg4& a4,     const Arg5& a5) {  return    lambda_functor_base<      action<5, function_action<5, Result> >,      typename detail::bind_tuple_mapper<        typename detail::constify_non_funcs<Arg1>::type, const Arg2,        const Arg3, const Arg4, const Arg5      >::type    >    ( typename detail::bind_tuple_mapper<        typename detail::constify_non_funcs<Arg1>::type, const Arg2,        const Arg3, const Arg4, const Arg5      >::type      (a1, a2, a3, a4, a5)    );}template <class Result, class Par1, class Par2, class Par3, class Par4,          class Arg2, class Arg3, class Arg4, class Arg5>inline constlambda_functor<  lambda_functor_base<    action<5, function_action<5, Result> >,    typename detail::bind_tuple_mapper<      Result(*)(Par1, Par2, Par3, Par4), const Arg2, const Arg3, const Arg4,      const Arg5    >::type  >>bind(Result(* const & a1)(Par1, Par2, Par3, Par4), const Arg2& a2,     const Arg3& a3, const Arg4& a4, const Arg5& a5) {  return    lambda_functor_base<      action<5, function_action<5, Result> >,      typename detail::bind_tuple_mapper<        Result(*)(Par1, Par2, Par3, Par4), const Arg2, const Arg3, const Arg4,        const Arg5      >::type    >    ( typename detail::bind_tuple_mapper<        Result(*)(Par1, Par2, Par3, Par4), const Arg2, const Arg3, const Arg4,        const Arg5      >::type      (a1, a2, a3, a4, a5)    );} #endif // 6-argument bind functions --------------------------#ifndef BOOST_REF_TO_FUNC_CONFLICTS_WITH_REF_TO_Ttemplate <class Result, class Par1, class Par2, class Par3, class Par4,          class Par5, class Arg2, class Arg3, class Arg4, class Arg5,          class Arg6>inline constlambda_functor<  lambda_functor_base<    action<6, function_action<6, Result> >,    typename detail::bind_tuple_mapper<      Result(&)(Par1, Par2, Par3, Par4, Par5), const Arg2, const Arg3,      const Arg4, const Arg5, const Arg6    >::type  >>bind(Result(&a1)(Par1, Par2, Par3, Par4, Par5), const Arg2& a2,     const Arg3& a3, const Arg4& a4, const Arg5& a5, const Arg6& a6) {  return    lambda_functor_base<      action<6, function_action<6, Result> >,      typename detail::bind_tuple_mapper<        Result(&)(Par1, Par2, Par3, Par4, Par5), const Arg2, const Arg3,        const Arg4, const Arg5, const Arg6      >::type    >    ( typename detail::bind_tuple_mapper<        Result(&)(Par1, Par2, Par3, Par4, Par5), const Arg2, const Arg3,        const Arg4, const Arg5, const Arg6      >::type      (a1, a2, a3, a4, a5, a6)    );}#endif #ifndef BOOST_LAMBDA_INCORRECT_BIND_OVERLOADING template <class Arg1, class Arg2, class Arg3, class Arg4, class Arg5,          class Arg6>inline constlambda_functor<  lambda_functor_base<    action<6, function_action<6> >,    typename detail::bind_tuple_mapper<      const Arg1, const Arg2, const Arg3, const Arg4, const Arg5, const Arg6    >::type  >>bind(const Arg1& a1, const Arg2& a2, const Arg3& a3, const Arg4& a4,     const Arg5& a5, const Arg6& a6) {  return    lambda_functor_base<      action<6, function_action<6> >,      typename detail::bind_tuple_mapper<        const Arg1, const Arg2, const Arg3, const Arg4, const Arg5, const Arg6      >::type    >    ( typename detail::bind_tuple_mapper<        const Arg1, const Arg2, const Arg3, const Arg4, const Arg5, const Arg6      >::type      (a1, a2, a3, a4, a5, a6)    );}template <class Result, class Arg1, class Arg2, class Arg3, class Arg4,          class Arg5, class Arg6>inline constlambda_functor<  lambda_functor_base<    action<6, function_action<6, Result> >,    typename detail::bind_tuple_mapper<      const Arg1, const Arg2, const Arg3, const Arg4, const Arg5, const Arg6    >::type  >>bind(const Arg1& a1, const Arg2& a2, const Arg3& a3, const Arg4& a4,     const Arg5& a5, const Arg6& a6) {  return    lambda_functor_base<      action<6, function_action<6, Result> >,      typename detail::bind_tuple_mapper<        const Arg1, const Arg2, const Arg3, const Arg4, const Arg5, const Arg6      >::type    >    ( typename detail::bind_tuple_mapper<        const Arg1, const Arg2, const Arg3, const Arg4, const Arg5, const Arg6      >::type      (a1, a2, a3, a4, a5, a6)    );

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?