Chris@16: // (C) Copyright 2008 CodeRage, LLC (turkanis at coderage dot com) Chris@16: // (C) Copyright 2003-2007 Jonathan Turkanis Chris@16: // Distributed under the Boost Software License, Version 1.0. (See accompanying Chris@16: // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt.) Chris@16: Chris@16: // See http://www.boost.org/libs/iostreams for documentation. Chris@16: Chris@16: #ifndef BOOST_IOSTREAMS_DETAIL_DISPATCH_HPP_INCLUDED Chris@16: #define BOOST_IOSTREAMS_DETAIL_DISPATCH_HPP_INCLUDED Chris@16: Chris@16: #if defined(_MSC_VER) && (_MSC_VER >= 1020) Chris@16: # pragma once Chris@16: #endif Chris@16: Chris@16: #include // BOOST_DEDUCED_TYPENAME. Chris@16: #include Chris@16: #include // category_of. Chris@16: #include Chris@16: #include Chris@16: Chris@16: namespace boost { namespace iostreams {namespace detail { Chris@16: Chris@16: template< typename T, typename Tag1, typename Tag2, Chris@16: typename Tag3 = mpl::void_, typename Tag4 = mpl::void_, Chris@16: typename Tag5 = mpl::void_, typename Tag6 = mpl::void_, Chris@16: typename Category = Chris@16: BOOST_DEDUCED_TYPENAME category_of::type > Chris@16: struct dispatch Chris@16: : iostreams::select< // Disambiguation for Tru64. Chris@16: is_convertible, Tag1, Chris@16: is_convertible, Tag2, Chris@16: is_convertible, Tag3, Chris@16: is_convertible, Tag4, Chris@16: is_convertible, Tag5, Chris@16: is_convertible, Tag6 Chris@16: > Chris@16: { }; Chris@16: Chris@16: } } } // End namespaces detail, iostreams, boost. Chris@16: Chris@16: #endif // #ifndef BOOST_IOSTREAMS_DETAIL_DISPATCH_HPP_INCLUDED