2
0
mirror of https://github.com/boostorg/lambda.git synced 2026-01-24 05:52:17 +00:00

removed lambda_functor_sub as obsolete

[SVN r12182]
This commit is contained in:
Jaakko Järvi
2001-12-31 18:31:15 +00:00
parent dd50c9ad38
commit cd6db4a38c
3 changed files with 7 additions and 12 deletions

View File

@@ -43,8 +43,6 @@ template <int I, class Act> class action;
template <class BinderArgs>
struct lambda_functor;
template <class BinderArgs>
struct lambda_functor_sub;
template <class Action,
class Args,

View File

@@ -147,12 +147,6 @@ template <class T> struct is_lambda_functor_ {
template <class Arg> struct is_lambda_functor_<lambda_functor<Arg> > {
BOOST_STATIC_CONSTANT(bool, value = true);
};
// lambda_functor_sub goes for lambda functor as well
template <class Arg> struct is_lambda_functor_<lambda_functor_sub<Arg> > {
BOOST_STATIC_CONSTANT(bool, value = true);
};
} // end detail

View File

@@ -61,8 +61,11 @@ struct open_args {
// The primary template:
// if we know nothing about Arg, it is not a lambda_functor.
// Hence the return type is Arg itself.
template <class Arg, class Open>
struct return_type { typedef Arg type; };
struct return_type {
typedef Arg type;
};
// Unary actions (result from unary operators)
// do not have a default return type.
@@ -86,7 +89,7 @@ typedef typename boost::remove_reference<A>::type A1;
typedef typename
detail::IF<
is_lambda_functor<A>::value,
lambda_functor_sub<
lambda_functor<
lambda_functor_args<
action<1, Act>,
tuple<A2>,
@@ -140,7 +143,7 @@ template <class Act, class A, class B> struct return_type_2_0 {
typedef typename
detail::IF<
is_lambda_functor<A>::value || is_lambda_functor<B>::value,
lambda_functor_sub<
lambda_functor<
lambda_functor_args<
action<2, Act>,
tuple<A2, B2>,
@@ -188,7 +191,7 @@ typedef typename
// detail::IF<
// is_lambda_functor<A>::value || is_lambda_functor<B>::value ||
// is_lambda_functor<C>::value,
// lambda_functor_sub<
// lambda_functor<
// lambda_functor_args<
// action<3, Act>,
// tuple<A2, B2, C2>,