12 #ifndef BOOST_MPL11_DETAIL_LEFT_FOLDS_VARIADIC_VARIABLETP_HPP
13 #define BOOST_MPL11_DETAIL_LEFT_FOLDS_VARIADIC_VARIABLETP_HPP
15 namespace boost {
namespace mpl11 {
namespace detail {
namespace left_folds {
18 template <
template <
typename ...>
class f,
typename state,
19 typename x,
typename ...xs>
20 constexpr
auto variable_impl = variable_impl<f, f<state, x>, xs...>;
22 template <
template <
typename ...>
class f,
typename state>
23 constexpr state variable_impl<f, state, done>{};
30 template <
template <
typename ...>
class f,
typename state,
typename ...xs>
31 using variadic_variabletp = decltype(variable_impl<f, state, xs..., done>);
34 #endif // !BOOST_MPL11_DETAIL_LEFT_FOLDS_VARIADIC_VARIABLETP_HPP