Merge pull request #164 from Kojoley/fix-map-vs2017-15.5

map: Switch to SFINAE in template parameters
This commit is contained in:
Joel de Guzman
2017-12-14 06:45:27 +08:00
committed by GitHub

View File

@ -67,24 +67,21 @@ namespace boost { namespace fusion
: base_type(std::forward<map>(seq))
{}
template <typename Sequence>
template <typename Sequence, typename = typename enable_if<traits::is_sequence<Sequence>>::type>
BOOST_FUSION_GPU_ENABLED
map(Sequence const& seq
, typename enable_if<traits::is_sequence<Sequence>, detail::enabler_>::type = detail::enabler)
map(Sequence const& seq)
: base_type(begin(seq), detail::map_impl_from_iterator())
{}
template <typename Sequence>
template <typename Sequence, typename = typename enable_if<traits::is_sequence<Sequence>>::type>
BOOST_FUSION_GPU_ENABLED
map(Sequence& seq
, typename enable_if<traits::is_sequence<Sequence>, detail::enabler_>::type = detail::enabler)
map(Sequence& seq)
: base_type(begin(seq), detail::map_impl_from_iterator())
{}
template <typename Sequence>
template <typename Sequence, typename = typename enable_if<traits::is_sequence<Sequence>>::type>
BOOST_FUSION_GPU_ENABLED
map(Sequence&& seq
, typename enable_if<traits::is_sequence<Sequence>, detail::enabler_>::type = detail::enabler)
map(Sequence&& seq)
: base_type(begin(seq), detail::map_impl_from_iterator())
{}