]> git.donarmstrong.com Git - rsem.git/blob - boost/fusion/sequence/io/out.hpp
Updated boost to v1.55.0
[rsem.git] / boost / fusion / sequence / io / out.hpp
1 /*=============================================================================
2     Copyright (c) 1999-2003 Jaakko Jarvi
3     Copyright (c) 1999-2003 Jeremiah Willcock
4     Copyright (c) 2001-2011 Joel de Guzman
5
6     Distributed under the Boost Software License, Version 1.0. (See accompanying 
7     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
8 ==============================================================================*/
9 #if !defined(BOOST_OUT_05042005_0120)
10 #define BOOST_OUT_05042005_0120
11
12 #include <ostream>
13 #include <boost/fusion/sequence/io/detail/out.hpp>
14 #include <boost/fusion/support/is_sequence.hpp>
15 #include <boost/utility/enable_if.hpp>
16 #include <boost/mpl/or.hpp>
17
18 namespace boost { namespace fusion
19 {
20     template <typename Sequence>
21     inline std::ostream&
22     out(std::ostream& os, Sequence& seq)
23     {
24         detail::print_sequence(os, seq);
25         return os;
26     }
27     
28     namespace operators
29     {
30         template <typename Sequence>
31         inline typename
32             boost::enable_if<
33                fusion::traits::is_sequence<Sequence>
34               , std::ostream&
35             >::type
36         operator<<(std::ostream& os, Sequence const& seq)
37         {
38             return fusion::out(os, seq);
39         }
40     }
41     using operators::operator<<;
42 }}
43
44 #endif