diff options
Diffstat (limited to 'boost/fusion/algorithm/transformation/push_front.hpp')
-rw-r--r-- | boost/fusion/algorithm/transformation/push_front.hpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/boost/fusion/algorithm/transformation/push_front.hpp b/boost/fusion/algorithm/transformation/push_front.hpp index d08ad27987..abe7faadea 100644 --- a/boost/fusion/algorithm/transformation/push_front.hpp +++ b/boost/fusion/algorithm/transformation/push_front.hpp @@ -10,6 +10,8 @@ #include <boost/fusion/support/detail/as_fusion_element.hpp> #include <boost/fusion/view/joint_view/joint_view.hpp> #include <boost/fusion/view/single_view/single_view.hpp> +#include <boost/fusion/support/is_sequence.hpp> +#include <boost/utility/enable_if.hpp> namespace boost { namespace fusion { @@ -24,7 +26,12 @@ namespace boost { namespace fusion } template <typename Sequence, typename T> - inline typename result_of::push_front<Sequence const, T>::type + inline + typename + lazy_enable_if< + traits::is_sequence<Sequence> + , result_of::push_front<Sequence const, T> + >::type push_front(Sequence const& seq, T const& x) { typedef typename result_of::push_front<Sequence const, T> push_front; |