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/tuple/tuple.hpp>
|
||||||
#include <sprout/type/rebind_types.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 sprout {
|
||||||
namespace tuples {
|
namespace tuples {
|
||||||
//
|
//
|
||||||
|
|
|
@ -12,6 +12,20 @@ namespace sprout {
|
||||||
template<typename Tuple>
|
template<typename Tuple>
|
||||||
struct rebind_types;
|
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>
|
template<typename... Ts>
|
||||||
struct rebind_types<sprout::types::type_tuple<Ts...> > {
|
struct rebind_types<sprout::types::type_tuple<Ts...> > {
|
||||||
public:
|
public:
|
||||||
|
|
Loading…
Reference in a new issue