Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:51:26

0001 /*
0002  *
0003  * Copyright (c) 1998-2002
0004  * John Maddock
0005  *
0006  * Use, modification and distribution are subject to the 
0007  * Boost Software License, Version 1.0. (See accompanying file 
0008  * LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0009  *
0010  */
0011 
0012  /*
0013   *   LOCATION:    see http://www.boost.org for most recent version.
0014   *   FILE         regex_format.hpp
0015   *   VERSION      see <boost/version.hpp>
0016   *   DESCRIPTION: Provides formatting output routines for search and replace
0017   *                operations.  Note this is an internal header file included
0018   *                by regex.hpp, do not include on its own.
0019   */
0020 
0021 #ifndef BOOST_REGEX_V4_REGEX_MERGE_HPP
0022 #define BOOST_REGEX_V4_REGEX_MERGE_HPP
0023 
0024 
0025 namespace boost{
0026 
0027 #ifdef BOOST_MSVC
0028 #pragma warning(push)
0029 #pragma warning(disable: 4103)
0030 #endif
0031 #ifdef BOOST_HAS_ABI_HEADERS
0032 #  include BOOST_ABI_PREFIX
0033 #endif
0034 #ifdef BOOST_MSVC
0035 #pragma warning(pop)
0036 #endif
0037 
0038 template <class OutputIterator, class Iterator, class traits, class charT>
0039 inline OutputIterator regex_merge(OutputIterator out,
0040                          Iterator first,
0041                          Iterator last,
0042                          const basic_regex<charT, traits>& e, 
0043                          const charT* fmt, 
0044                          match_flag_type flags = match_default)
0045 {
0046    return regex_replace(out, first, last, e, fmt, flags);
0047 }
0048 
0049 template <class OutputIterator, class Iterator, class traits, class charT>
0050 inline OutputIterator regex_merge(OutputIterator out,
0051                          Iterator first,
0052                          Iterator last,
0053                          const basic_regex<charT, traits>& e, 
0054                          const std::basic_string<charT>& fmt,
0055                          match_flag_type flags = match_default)
0056 {
0057    return regex_merge(out, first, last, e, fmt.c_str(), flags);
0058 }
0059 
0060 template <class traits, class charT>
0061 inline std::basic_string<charT> regex_merge(const std::basic_string<charT>& s,
0062                          const basic_regex<charT, traits>& e, 
0063                          const charT* fmt,
0064                          match_flag_type flags = match_default)
0065 {
0066    return regex_replace(s, e, fmt, flags);
0067 }
0068 
0069 template <class traits, class charT>
0070 inline std::basic_string<charT> regex_merge(const std::basic_string<charT>& s,
0071                          const basic_regex<charT, traits>& e, 
0072                          const std::basic_string<charT>& fmt,
0073                          match_flag_type flags = match_default)
0074 {
0075    return regex_replace(s, e, fmt, flags);
0076 }
0077 
0078 #ifdef BOOST_MSVC
0079 #pragma warning(push)
0080 #pragma warning(disable: 4103)
0081 #endif
0082 #ifdef BOOST_HAS_ABI_HEADERS
0083 #  include BOOST_ABI_SUFFIX
0084 #endif
0085 #ifdef BOOST_MSVC
0086 #pragma warning(pop)
0087 #endif
0088 
0089 } // namespace boost
0090 
0091 #endif  // BOOST_REGEX_V4_REGEX_MERGE_HPP
0092 
0093