summaryrefslogtreecommitdiff
path: root/boost/phoenix/statement/detail/preprocessed/catch_push_back_20.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'boost/phoenix/statement/detail/preprocessed/catch_push_back_20.hpp')
-rw-r--r--boost/phoenix/statement/detail/preprocessed/catch_push_back_20.hpp684
1 files changed, 646 insertions, 38 deletions
diff --git a/boost/phoenix/statement/detail/preprocessed/catch_push_back_20.hpp b/boost/phoenix/statement/detail/preprocessed/catch_push_back_20.hpp
index f7d4b3937b..67cf74556d 100644
--- a/boost/phoenix/statement/detail/preprocessed/catch_push_back_20.hpp
+++ b/boost/phoenix/statement/detail/preprocessed/catch_push_back_20.hpp
@@ -12,8 +12,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 2>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 2>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 2>
{
typedef
typename proto::result_of::make_expr<
@@ -43,7 +76,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 2>
{
@@ -81,8 +113,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 3>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 3>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 3>
{
typedef
typename proto::result_of::make_expr<
@@ -112,7 +177,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 3>
{
@@ -150,8 +214,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 4>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type , typename proto::result_of::child_c<TryCatch, 3>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch) , proto::child_c< 3>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 4>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 4>
{
typedef
typename proto::result_of::make_expr<
@@ -181,7 +278,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 4>
{
@@ -219,8 +315,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 5>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type , typename proto::result_of::child_c<TryCatch, 3>::type , typename proto::result_of::child_c<TryCatch, 4>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch) , proto::child_c< 3>(try_catch) , proto::child_c< 4>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 5>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 5>
{
typedef
typename proto::result_of::make_expr<
@@ -250,7 +379,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 5>
{
@@ -288,8 +416,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 6>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type , typename proto::result_of::child_c<TryCatch, 3>::type , typename proto::result_of::child_c<TryCatch, 4>::type , typename proto::result_of::child_c<TryCatch, 5>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch) , proto::child_c< 3>(try_catch) , proto::child_c< 4>(try_catch) , proto::child_c< 5>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 6>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 6>
{
typedef
typename proto::result_of::make_expr<
@@ -319,7 +480,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 6>
{
@@ -357,8 +517,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 7>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type , typename proto::result_of::child_c<TryCatch, 3>::type , typename proto::result_of::child_c<TryCatch, 4>::type , typename proto::result_of::child_c<TryCatch, 5>::type , typename proto::result_of::child_c<TryCatch, 6>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch) , proto::child_c< 3>(try_catch) , proto::child_c< 4>(try_catch) , proto::child_c< 5>(try_catch) , proto::child_c< 6>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 7>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 7>
{
typedef
typename proto::result_of::make_expr<
@@ -388,7 +581,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 7>
{
@@ -426,8 +618,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 8>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type , typename proto::result_of::child_c<TryCatch, 3>::type , typename proto::result_of::child_c<TryCatch, 4>::type , typename proto::result_of::child_c<TryCatch, 5>::type , typename proto::result_of::child_c<TryCatch, 6>::type , typename proto::result_of::child_c<TryCatch, 7>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch) , proto::child_c< 3>(try_catch) , proto::child_c< 4>(try_catch) , proto::child_c< 5>(try_catch) , proto::child_c< 6>(try_catch) , proto::child_c< 7>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 8>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 8>
{
typedef
typename proto::result_of::make_expr<
@@ -457,7 +682,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 8>
{
@@ -495,8 +719,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 9>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type , typename proto::result_of::child_c<TryCatch, 3>::type , typename proto::result_of::child_c<TryCatch, 4>::type , typename proto::result_of::child_c<TryCatch, 5>::type , typename proto::result_of::child_c<TryCatch, 6>::type , typename proto::result_of::child_c<TryCatch, 7>::type , typename proto::result_of::child_c<TryCatch, 8>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch) , proto::child_c< 3>(try_catch) , proto::child_c< 4>(try_catch) , proto::child_c< 5>(try_catch) , proto::child_c< 6>(try_catch) , proto::child_c< 7>(try_catch) , proto::child_c< 8>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 9>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 9>
{
typedef
typename proto::result_of::make_expr<
@@ -526,7 +783,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 9>
{
@@ -564,8 +820,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 10>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type , typename proto::result_of::child_c<TryCatch, 3>::type , typename proto::result_of::child_c<TryCatch, 4>::type , typename proto::result_of::child_c<TryCatch, 5>::type , typename proto::result_of::child_c<TryCatch, 6>::type , typename proto::result_of::child_c<TryCatch, 7>::type , typename proto::result_of::child_c<TryCatch, 8>::type , typename proto::result_of::child_c<TryCatch, 9>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch) , proto::child_c< 3>(try_catch) , proto::child_c< 4>(try_catch) , proto::child_c< 5>(try_catch) , proto::child_c< 6>(try_catch) , proto::child_c< 7>(try_catch) , proto::child_c< 8>(try_catch) , proto::child_c< 9>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 10>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 10>
{
typedef
typename proto::result_of::make_expr<
@@ -595,7 +884,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 10>
{
@@ -633,8 +921,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 11>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type , typename proto::result_of::child_c<TryCatch, 3>::type , typename proto::result_of::child_c<TryCatch, 4>::type , typename proto::result_of::child_c<TryCatch, 5>::type , typename proto::result_of::child_c<TryCatch, 6>::type , typename proto::result_of::child_c<TryCatch, 7>::type , typename proto::result_of::child_c<TryCatch, 8>::type , typename proto::result_of::child_c<TryCatch, 9>::type , typename proto::result_of::child_c<TryCatch, 10>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch) , proto::child_c< 3>(try_catch) , proto::child_c< 4>(try_catch) , proto::child_c< 5>(try_catch) , proto::child_c< 6>(try_catch) , proto::child_c< 7>(try_catch) , proto::child_c< 8>(try_catch) , proto::child_c< 9>(try_catch) , proto::child_c< 10>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 11>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 11>
{
typedef
typename proto::result_of::make_expr<
@@ -664,7 +985,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 11>
{
@@ -702,8 +1022,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 12>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type , typename proto::result_of::child_c<TryCatch, 3>::type , typename proto::result_of::child_c<TryCatch, 4>::type , typename proto::result_of::child_c<TryCatch, 5>::type , typename proto::result_of::child_c<TryCatch, 6>::type , typename proto::result_of::child_c<TryCatch, 7>::type , typename proto::result_of::child_c<TryCatch, 8>::type , typename proto::result_of::child_c<TryCatch, 9>::type , typename proto::result_of::child_c<TryCatch, 10>::type , typename proto::result_of::child_c<TryCatch, 11>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch) , proto::child_c< 3>(try_catch) , proto::child_c< 4>(try_catch) , proto::child_c< 5>(try_catch) , proto::child_c< 6>(try_catch) , proto::child_c< 7>(try_catch) , proto::child_c< 8>(try_catch) , proto::child_c< 9>(try_catch) , proto::child_c< 10>(try_catch) , proto::child_c< 11>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 12>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 12>
{
typedef
typename proto::result_of::make_expr<
@@ -733,7 +1086,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 12>
{
@@ -771,8 +1123,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 13>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type , typename proto::result_of::child_c<TryCatch, 3>::type , typename proto::result_of::child_c<TryCatch, 4>::type , typename proto::result_of::child_c<TryCatch, 5>::type , typename proto::result_of::child_c<TryCatch, 6>::type , typename proto::result_of::child_c<TryCatch, 7>::type , typename proto::result_of::child_c<TryCatch, 8>::type , typename proto::result_of::child_c<TryCatch, 9>::type , typename proto::result_of::child_c<TryCatch, 10>::type , typename proto::result_of::child_c<TryCatch, 11>::type , typename proto::result_of::child_c<TryCatch, 12>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch) , proto::child_c< 3>(try_catch) , proto::child_c< 4>(try_catch) , proto::child_c< 5>(try_catch) , proto::child_c< 6>(try_catch) , proto::child_c< 7>(try_catch) , proto::child_c< 8>(try_catch) , proto::child_c< 9>(try_catch) , proto::child_c< 10>(try_catch) , proto::child_c< 11>(try_catch) , proto::child_c< 12>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 13>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 13>
{
typedef
typename proto::result_of::make_expr<
@@ -802,7 +1187,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 13>
{
@@ -840,8 +1224,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 14>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type , typename proto::result_of::child_c<TryCatch, 3>::type , typename proto::result_of::child_c<TryCatch, 4>::type , typename proto::result_of::child_c<TryCatch, 5>::type , typename proto::result_of::child_c<TryCatch, 6>::type , typename proto::result_of::child_c<TryCatch, 7>::type , typename proto::result_of::child_c<TryCatch, 8>::type , typename proto::result_of::child_c<TryCatch, 9>::type , typename proto::result_of::child_c<TryCatch, 10>::type , typename proto::result_of::child_c<TryCatch, 11>::type , typename proto::result_of::child_c<TryCatch, 12>::type , typename proto::result_of::child_c<TryCatch, 13>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch) , proto::child_c< 3>(try_catch) , proto::child_c< 4>(try_catch) , proto::child_c< 5>(try_catch) , proto::child_c< 6>(try_catch) , proto::child_c< 7>(try_catch) , proto::child_c< 8>(try_catch) , proto::child_c< 9>(try_catch) , proto::child_c< 10>(try_catch) , proto::child_c< 11>(try_catch) , proto::child_c< 12>(try_catch) , proto::child_c< 13>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 14>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 14>
{
typedef
typename proto::result_of::make_expr<
@@ -871,7 +1288,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 14>
{
@@ -909,8 +1325,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 15>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type , typename proto::result_of::child_c<TryCatch, 3>::type , typename proto::result_of::child_c<TryCatch, 4>::type , typename proto::result_of::child_c<TryCatch, 5>::type , typename proto::result_of::child_c<TryCatch, 6>::type , typename proto::result_of::child_c<TryCatch, 7>::type , typename proto::result_of::child_c<TryCatch, 8>::type , typename proto::result_of::child_c<TryCatch, 9>::type , typename proto::result_of::child_c<TryCatch, 10>::type , typename proto::result_of::child_c<TryCatch, 11>::type , typename proto::result_of::child_c<TryCatch, 12>::type , typename proto::result_of::child_c<TryCatch, 13>::type , typename proto::result_of::child_c<TryCatch, 14>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch) , proto::child_c< 3>(try_catch) , proto::child_c< 4>(try_catch) , proto::child_c< 5>(try_catch) , proto::child_c< 6>(try_catch) , proto::child_c< 7>(try_catch) , proto::child_c< 8>(try_catch) , proto::child_c< 9>(try_catch) , proto::child_c< 10>(try_catch) , proto::child_c< 11>(try_catch) , proto::child_c< 12>(try_catch) , proto::child_c< 13>(try_catch) , proto::child_c< 14>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 15>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 15>
{
typedef
typename proto::result_of::make_expr<
@@ -940,7 +1389,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 15>
{
@@ -978,8 +1426,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 16>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type , typename proto::result_of::child_c<TryCatch, 3>::type , typename proto::result_of::child_c<TryCatch, 4>::type , typename proto::result_of::child_c<TryCatch, 5>::type , typename proto::result_of::child_c<TryCatch, 6>::type , typename proto::result_of::child_c<TryCatch, 7>::type , typename proto::result_of::child_c<TryCatch, 8>::type , typename proto::result_of::child_c<TryCatch, 9>::type , typename proto::result_of::child_c<TryCatch, 10>::type , typename proto::result_of::child_c<TryCatch, 11>::type , typename proto::result_of::child_c<TryCatch, 12>::type , typename proto::result_of::child_c<TryCatch, 13>::type , typename proto::result_of::child_c<TryCatch, 14>::type , typename proto::result_of::child_c<TryCatch, 15>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch) , proto::child_c< 3>(try_catch) , proto::child_c< 4>(try_catch) , proto::child_c< 5>(try_catch) , proto::child_c< 6>(try_catch) , proto::child_c< 7>(try_catch) , proto::child_c< 8>(try_catch) , proto::child_c< 9>(try_catch) , proto::child_c< 10>(try_catch) , proto::child_c< 11>(try_catch) , proto::child_c< 12>(try_catch) , proto::child_c< 13>(try_catch) , proto::child_c< 14>(try_catch) , proto::child_c< 15>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 16>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 16>
{
typedef
typename proto::result_of::make_expr<
@@ -1009,7 +1490,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 16>
{
@@ -1047,8 +1527,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 17>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type , typename proto::result_of::child_c<TryCatch, 3>::type , typename proto::result_of::child_c<TryCatch, 4>::type , typename proto::result_of::child_c<TryCatch, 5>::type , typename proto::result_of::child_c<TryCatch, 6>::type , typename proto::result_of::child_c<TryCatch, 7>::type , typename proto::result_of::child_c<TryCatch, 8>::type , typename proto::result_of::child_c<TryCatch, 9>::type , typename proto::result_of::child_c<TryCatch, 10>::type , typename proto::result_of::child_c<TryCatch, 11>::type , typename proto::result_of::child_c<TryCatch, 12>::type , typename proto::result_of::child_c<TryCatch, 13>::type , typename proto::result_of::child_c<TryCatch, 14>::type , typename proto::result_of::child_c<TryCatch, 15>::type , typename proto::result_of::child_c<TryCatch, 16>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch) , proto::child_c< 3>(try_catch) , proto::child_c< 4>(try_catch) , proto::child_c< 5>(try_catch) , proto::child_c< 6>(try_catch) , proto::child_c< 7>(try_catch) , proto::child_c< 8>(try_catch) , proto::child_c< 9>(try_catch) , proto::child_c< 10>(try_catch) , proto::child_c< 11>(try_catch) , proto::child_c< 12>(try_catch) , proto::child_c< 13>(try_catch) , proto::child_c< 14>(try_catch) , proto::child_c< 15>(try_catch) , proto::child_c< 16>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 17>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 17>
{
typedef
typename proto::result_of::make_expr<
@@ -1078,7 +1591,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 17>
{
@@ -1116,8 +1628,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 18>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type , typename proto::result_of::child_c<TryCatch, 3>::type , typename proto::result_of::child_c<TryCatch, 4>::type , typename proto::result_of::child_c<TryCatch, 5>::type , typename proto::result_of::child_c<TryCatch, 6>::type , typename proto::result_of::child_c<TryCatch, 7>::type , typename proto::result_of::child_c<TryCatch, 8>::type , typename proto::result_of::child_c<TryCatch, 9>::type , typename proto::result_of::child_c<TryCatch, 10>::type , typename proto::result_of::child_c<TryCatch, 11>::type , typename proto::result_of::child_c<TryCatch, 12>::type , typename proto::result_of::child_c<TryCatch, 13>::type , typename proto::result_of::child_c<TryCatch, 14>::type , typename proto::result_of::child_c<TryCatch, 15>::type , typename proto::result_of::child_c<TryCatch, 16>::type , typename proto::result_of::child_c<TryCatch, 17>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch) , proto::child_c< 3>(try_catch) , proto::child_c< 4>(try_catch) , proto::child_c< 5>(try_catch) , proto::child_c< 6>(try_catch) , proto::child_c< 7>(try_catch) , proto::child_c< 8>(try_catch) , proto::child_c< 9>(try_catch) , proto::child_c< 10>(try_catch) , proto::child_c< 11>(try_catch) , proto::child_c< 12>(try_catch) , proto::child_c< 13>(try_catch) , proto::child_c< 14>(try_catch) , proto::child_c< 15>(try_catch) , proto::child_c< 16>(try_catch) , proto::child_c< 17>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 18>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 18>
{
typedef
typename proto::result_of::make_expr<
@@ -1147,7 +1692,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 18>
{
@@ -1185,8 +1729,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 19>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type , typename proto::result_of::child_c<TryCatch, 3>::type , typename proto::result_of::child_c<TryCatch, 4>::type , typename proto::result_of::child_c<TryCatch, 5>::type , typename proto::result_of::child_c<TryCatch, 6>::type , typename proto::result_of::child_c<TryCatch, 7>::type , typename proto::result_of::child_c<TryCatch, 8>::type , typename proto::result_of::child_c<TryCatch, 9>::type , typename proto::result_of::child_c<TryCatch, 10>::type , typename proto::result_of::child_c<TryCatch, 11>::type , typename proto::result_of::child_c<TryCatch, 12>::type , typename proto::result_of::child_c<TryCatch, 13>::type , typename proto::result_of::child_c<TryCatch, 14>::type , typename proto::result_of::child_c<TryCatch, 15>::type , typename proto::result_of::child_c<TryCatch, 16>::type , typename proto::result_of::child_c<TryCatch, 17>::type , typename proto::result_of::child_c<TryCatch, 18>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch) , proto::child_c< 3>(try_catch) , proto::child_c< 4>(try_catch) , proto::child_c< 5>(try_catch) , proto::child_c< 6>(try_catch) , proto::child_c< 7>(try_catch) , proto::child_c< 8>(try_catch) , proto::child_c< 9>(try_catch) , proto::child_c< 10>(try_catch) , proto::child_c< 11>(try_catch) , proto::child_c< 12>(try_catch) , proto::child_c< 13>(try_catch) , proto::child_c< 14>(try_catch) , proto::child_c< 15>(try_catch) , proto::child_c< 16>(try_catch) , proto::child_c< 17>(try_catch) , proto::child_c< 18>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 19>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 19>
{
typedef
typename proto::result_of::make_expr<
@@ -1216,7 +1793,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 19>
{
@@ -1254,8 +1830,41 @@
+ template <typename TryCatch, typename Exception, typename Capture, typename Expr>
+ struct catch_push_back<TryCatch, Exception, Capture, Expr, 20>
+ {
+ typedef
+ typename proto::result_of::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ , catch_exception<Exception>
+ , Capture
+ , Expr
+ >::type
+ catch_expr;
+ typedef phoenix::expression::try_catch<
+ typename proto::result_of::child_c<TryCatch, 0>::type , typename proto::result_of::child_c<TryCatch, 1>::type , typename proto::result_of::child_c<TryCatch, 2>::type , typename proto::result_of::child_c<TryCatch, 3>::type , typename proto::result_of::child_c<TryCatch, 4>::type , typename proto::result_of::child_c<TryCatch, 5>::type , typename proto::result_of::child_c<TryCatch, 6>::type , typename proto::result_of::child_c<TryCatch, 7>::type , typename proto::result_of::child_c<TryCatch, 8>::type , typename proto::result_of::child_c<TryCatch, 9>::type , typename proto::result_of::child_c<TryCatch, 10>::type , typename proto::result_of::child_c<TryCatch, 11>::type , typename proto::result_of::child_c<TryCatch, 12>::type , typename proto::result_of::child_c<TryCatch, 13>::type , typename proto::result_of::child_c<TryCatch, 14>::type , typename proto::result_of::child_c<TryCatch, 15>::type , typename proto::result_of::child_c<TryCatch, 16>::type , typename proto::result_of::child_c<TryCatch, 17>::type , typename proto::result_of::child_c<TryCatch, 18>::type , typename proto::result_of::child_c<TryCatch, 19>::type
+ , catch_expr> gen_type;
+ typedef typename gen_type::type type;
+ static type
+ make(
+ TryCatch const& try_catch
+ , Capture const& capture
+ , Expr const& catch_
+ )
+ {
+ return
+ gen_type::make(
+ proto::child_c< 0>(try_catch) , proto::child_c< 1>(try_catch) , proto::child_c< 2>(try_catch) , proto::child_c< 3>(try_catch) , proto::child_c< 4>(try_catch) , proto::child_c< 5>(try_catch) , proto::child_c< 6>(try_catch) , proto::child_c< 7>(try_catch) , proto::child_c< 8>(try_catch) , proto::child_c< 9>(try_catch) , proto::child_c< 10>(try_catch) , proto::child_c< 11>(try_catch) , proto::child_c< 12>(try_catch) , proto::child_c< 13>(try_catch) , proto::child_c< 14>(try_catch) , proto::child_c< 15>(try_catch) , proto::child_c< 16>(try_catch) , proto::child_c< 17>(try_catch) , proto::child_c< 18>(try_catch) , proto::child_c< 19>(try_catch)
+ , proto::make_expr<
+ phoenix::tag::catch_
+ , proto::basic_default_domain
+ >(catch_exception<Exception>(), capture, catch_)
+ );
+ }
+ };
template <typename TryCatch, typename Exception, typename Expr>
- struct catch_push_back<TryCatch, Exception, Expr, 20>
+ struct catch_push_back<TryCatch, Exception, void, Expr, 20>
{
typedef
typename proto::result_of::make_expr<
@@ -1285,7 +1894,6 @@
);
}
};
-
template <typename TryCatch, typename Expr>
struct catch_all_push_back<TryCatch, Expr, 20>
{