Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:34:43

0001 /*=============================================================================
0002     Copyright (c) 1999-2003 Jaakko Jarvi
0003     Copyright (c) 1999-2003 Jeremiah Willcock
0004     Copyright (c) 2001-2011 Joel de Guzman
0005 
0006     Distributed under the Boost Software License, Version 1.0. (See accompanying 
0007     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0008 ==============================================================================*/
0009 #if !defined(BOOST_OUT_05042005_0120)
0010 #define BOOST_OUT_05042005_0120
0011 
0012 #include <boost/fusion/support/config.hpp>
0013 #include <boost/fusion/sequence/io/detail/out.hpp>
0014 #include <boost/fusion/support/is_sequence.hpp>
0015 #include <boost/utility/enable_if.hpp>
0016 #include <boost/mpl/or.hpp>
0017 #include <iosfwd>
0018 
0019 namespace boost { namespace fusion
0020 {
0021     template <typename Sequence>
0022     inline std::ostream&
0023     out(std::ostream& os, Sequence& seq)
0024     {
0025         detail::print_sequence(os, seq);
0026         return os;
0027     }
0028     
0029     namespace operators
0030     {
0031         template <typename Sequence>
0032         inline typename
0033             boost::enable_if<
0034                fusion::traits::is_sequence<Sequence>
0035               , std::ostream&
0036             >::type
0037         operator<<(std::ostream& os, Sequence const& seq)
0038         {
0039             return fusion::out(os, seq);
0040         }
0041     }
0042     using operators::operator<<;
0043 }}
0044 
0045 #endif