1 //  Copyright (c) 2001-2011 Hartmut Kaiser
2 //  Copyright (c) 2001-2011 Joel de Guzman
3 //
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)
6 
7 #if !defined(BOOST_SPIRIT_KARMA_GET_CASETAG_JANUARY_19_2009_1107AM)
8 #define BOOST_SPIRIT_KARMA_GET_CASETAG_JANUARY_19_2009_1107AM
9 
10 #if defined(_MSC_VER)
11 #pragma once
12 #endif
13 
14 #include <boost/mpl/identity.hpp>
15 #include <boost/spirit/home/support/unused.hpp>
16 #include <boost/spirit/home/support/common_terminals.hpp>
17 
18 namespace boost { namespace spirit { namespace karma { namespace detail
19 {
20     template <typename Modifiers, bool case_modifier = false>
21     struct get_casetag : mpl::identity<unused_type> {};
22 
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> {};
27 }}}}
28 
29 #endif
30