]> git.sesse.net Git - casparcg/blob - dependencies/boost/boost/xpressive/detail/core/icase.hpp
Manually merged pull request #222
[casparcg] / dependencies / boost / boost / xpressive / detail / core / icase.hpp
1 ///////////////////////////////////////////////////////////////////////////////
2 // icase.hpp
3 //
4 //  Copyright 2008 Eric Niebler. Distributed under the Boost
5 //  Software License, Version 1.0. (See accompanying file
6 //  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7
8 #ifndef BOOST_XPRESSIVE_DETAIL_CORE_ICASE_HPP_EAN_10_04_2005
9 #define BOOST_XPRESSIVE_DETAIL_CORE_ICASE_HPP_EAN_10_04_2005
10
11 #include <boost/xpressive/detail/detail_fwd.hpp>
12 #include <boost/xpressive/regex_constants.hpp>
13 #include <boost/xpressive/detail/static/modifier.hpp>
14 #include <boost/xpressive/detail/core/linker.hpp>
15 #include <boost/xpressive/detail/utility/ignore_unused.hpp>
16
17 namespace boost { namespace xpressive { namespace regex_constants
18 {
19
20 ///////////////////////////////////////////////////////////////////////////////
21 /// \brief Makes a sub-expression case-insensitive.
22 ///
23 /// Use icase() to make a sub-expression case-insensitive. For instance,
24 /// "foo" >> icase(set['b'] >> "ar") will match "foo" exactly followed by
25 /// "bar" irrespective of case.
26 detail::modifier_op<detail::icase_modifier> const icase = {{}, regex_constants::icase_};
27
28 } // namespace regex_constants
29
30 using regex_constants::icase;
31
32 namespace detail
33 {
34     inline void ignore_unused_icase()
35     {
36         detail::ignore_unused(icase);
37     }
38 }
39
40 }} // namespace boost::xpressive
41
42 #endif