mirror of
https://github.com/bolero-MURAKAMI/Sprout.git
synced 2024-11-14 10:39:05 +00:00
types::rebind_types の tuple に対する特殊化が抜けていた問題を修正
This commit is contained in:
parent
19db2587e5
commit
034bd6f7e4
2 changed files with 33 additions and 0 deletions
|
@ -5,6 +5,25 @@
|
|||
#include <sprout/tuple/tuple.hpp>
|
||||
#include <sprout/type/rebind_types.hpp>
|
||||
|
||||
namespace sprout {
|
||||
namespace types {
|
||||
//
|
||||
// rebind_types
|
||||
//
|
||||
template<typename... Ts>
|
||||
struct rebind_types<sprout::tuples::tuple<Ts...> > {
|
||||
public:
|
||||
template<typename... Types>
|
||||
struct apply {
|
||||
public:
|
||||
typedef sprout::tuples::tuple<Types...> type;
|
||||
};
|
||||
};
|
||||
} // namespace types
|
||||
|
||||
using sprout::types::rebind_types;
|
||||
} // namespace sprout
|
||||
|
||||
namespace sprout {
|
||||
namespace tuples {
|
||||
//
|
||||
|
|
|
@ -12,6 +12,20 @@ namespace sprout {
|
|||
template<typename Tuple>
|
||||
struct rebind_types;
|
||||
|
||||
template<typename Tuple>
|
||||
struct rebind_types<Tuple const> {
|
||||
public:
|
||||
template<typename... Types>
|
||||
struct apply {
|
||||
public:
|
||||
typedef typename sprout::types::rebind_types<
|
||||
Tuple
|
||||
>::template apply<
|
||||
Types...
|
||||
>::type const type;
|
||||
};
|
||||
};
|
||||
|
||||
template<typename... Ts>
|
||||
struct rebind_types<sprout::types::type_tuple<Ts...> > {
|
||||
public:
|
||||
|
|
Loading…
Reference in a new issue