Fusion: updates

[SVN r74566]
This commit is contained in:
Christopher Schmidt
2011-09-25 17:36:13 +00:00
parent 159426b8af
commit b7fb20e69a
2 changed files with 12 additions and 3 deletions

View File

@ -50,11 +50,17 @@ namespace boost { namespace fusion
namespace traits namespace traits
{ {
template <typename Sequence, typename Active>
struct tag_of_fallback
{
typedef non_fusion_tag type;
};
template <typename Sequence, typename Active> template <typename Sequence, typename Active>
struct tag_of struct tag_of
: mpl::if_< fusion::detail::is_mpl_sequence<Sequence>, : mpl::eval_if< fusion::detail::is_mpl_sequence<Sequence>,
mpl::identity<mpl_sequence_tag>, mpl::identity<mpl::identity<mpl_sequence_tag> >,
mpl::identity<non_fusion_tag> >::type tag_of_fallback<Sequence> >::type
{}; {};
template <typename Sequence> template <typename Sequence>

View File

@ -12,6 +12,9 @@ namespace boost { namespace fusion
{ {
namespace traits namespace traits
{ {
template <typename Sequence, typename Active = void>
struct tag_of_fallback;
template<typename T, typename Active = void> template<typename T, typename Active = void>
struct tag_of; struct tag_of;
} }