diff options
Diffstat (limited to 'boost/fusion/sequence/io/out.hpp')
-rw-r--r-- | boost/fusion/sequence/io/out.hpp | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/boost/fusion/sequence/io/out.hpp b/boost/fusion/sequence/io/out.hpp new file mode 100644 index 0000000000..988a39856a --- /dev/null +++ b/boost/fusion/sequence/io/out.hpp @@ -0,0 +1,44 @@ +/*============================================================================= + Copyright (c) 1999-2003 Jaakko Jarvi + Copyright (c) 1999-2003 Jeremiah Willcock + Copyright (c) 2001-2011 Joel de Guzman + + Distributed under the Boost Software License, Version 1.0. (See accompanying + file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +==============================================================================*/ +#if !defined(BOOST_OUT_05042005_0120) +#define BOOST_OUT_05042005_0120 + +#include <ostream> +#include <boost/fusion/sequence/io/detail/out.hpp> +#include <boost/fusion/support/is_sequence.hpp> +#include <boost/utility/enable_if.hpp> +#include <boost/mpl/or.hpp> + +namespace boost { namespace fusion +{ + template <typename Sequence> + inline std::ostream& + out(std::ostream& os, Sequence& seq) + { + detail::print_sequence(os, seq); + return os; + } + + namespace operators + { + template <typename Sequence> + inline typename + boost::enable_if< + fusion::traits::is_sequence<Sequence> + , std::ostream& + >::type + operator<<(std::ostream& os, Sequence const& seq) + { + return fusion::out(os, seq); + } + } + using operators::operator<<; +}} + +#endif |