forked from boostorg/variant2
Remove local mp_power_set implementation, as it's now in mp11
This commit is contained in:
@ -14,28 +14,6 @@
|
|||||||
#include <boost/mp11.hpp>
|
#include <boost/mp11.hpp>
|
||||||
using namespace boost::mp11;
|
using namespace boost::mp11;
|
||||||
|
|
||||||
// mp_power_set<L>
|
|
||||||
|
|
||||||
template<class L> struct mp_power_set_impl;
|
|
||||||
|
|
||||||
template<class L> using mp_power_set = typename mp_power_set_impl<L>::type;
|
|
||||||
|
|
||||||
template<template<class...> class L> struct mp_power_set_impl< L<> >
|
|
||||||
{
|
|
||||||
using type = L< L<> >;
|
|
||||||
};
|
|
||||||
|
|
||||||
template<template<class...> class L, class T1, class... T> struct mp_power_set_impl< L<T1, T...> >
|
|
||||||
{
|
|
||||||
using S1 = mp_power_set< L<T...> >;
|
|
||||||
|
|
||||||
template<class L2> using _f = mp_push_front<L2, T1>;
|
|
||||||
|
|
||||||
using S2 = mp_transform<_f, S1>;
|
|
||||||
|
|
||||||
using type = mp_append< S1, S2 >;
|
|
||||||
};
|
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|
||||||
using namespace boost::variant2;
|
using namespace boost::variant2;
|
||||||
|
@ -14,28 +14,6 @@
|
|||||||
#include <boost/mp11.hpp>
|
#include <boost/mp11.hpp>
|
||||||
using namespace boost::mp11;
|
using namespace boost::mp11;
|
||||||
|
|
||||||
// mp_power_set<L>
|
|
||||||
|
|
||||||
template<class L> struct mp_power_set_impl;
|
|
||||||
|
|
||||||
template<class L> using mp_power_set = typename mp_power_set_impl<L>::type;
|
|
||||||
|
|
||||||
template<template<class...> class L> struct mp_power_set_impl< L<> >
|
|
||||||
{
|
|
||||||
using type = L< L<> >;
|
|
||||||
};
|
|
||||||
|
|
||||||
template<template<class...> class L, class T1, class... T> struct mp_power_set_impl< L<T1, T...> >
|
|
||||||
{
|
|
||||||
using S1 = mp_power_set< L<T...> >;
|
|
||||||
|
|
||||||
template<class L2> using _f = mp_push_front<L2, T1>;
|
|
||||||
|
|
||||||
using S2 = mp_transform<_f, S1>;
|
|
||||||
|
|
||||||
using type = mp_append< S1, S2 >;
|
|
||||||
};
|
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|
||||||
struct D
|
struct D
|
||||||
|
Reference in New Issue
Block a user