1 // Copyright (c) 2001-2011 Hartmut Kaiser
2 // Copyright (c) 2001-2011 Joel de Guzman
4 // Distributed under the Boost Software License, Version 1.0. (See accompanying
5 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7 #if !defined(BOOST_SPIRIT_KARMA_GET_CASETAG_JANUARY_19_2009_1107AM)
8 #define BOOST_SPIRIT_KARMA_GET_CASETAG_JANUARY_19_2009_1107AM
14 #include <boost/mpl/identity.hpp>
15 #include <boost/spirit/home/support/unused.hpp>
16 #include <boost/spirit/home/support/common_terminals.hpp>
18 namespace boost { namespace spirit { namespace karma { namespace detail
20 template <typename Modifiers, bool case_modifier = false>
21 struct get_casetag : mpl::identity<unused_type> {};
23 template <typename Modifiers>
24 struct get_casetag<Modifiers, true>
25 : mpl::if_<has_modifier<Modifiers, tag::char_code_base<tag::lower> >
26 , tag::lower, tag::upper> {};