Chris@16: /* Chris@16: * Chris@16: * Copyright (c) 1998-2002 Chris@16: * John Maddock Chris@16: * Chris@16: * Use, modification and distribution are subject to the Chris@16: * Boost Software License, Version 1.0. (See accompanying file Chris@16: * LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) Chris@16: * Chris@16: */ Chris@16: Chris@16: /* Chris@16: * LOCATION: see http://www.boost.org for most recent version. Chris@16: * FILE regex_format.hpp Chris@16: * VERSION see Chris@16: * DESCRIPTION: Provides formatting output routines for search and replace Chris@16: * operations. Note this is an internal header file included Chris@16: * by regex.hpp, do not include on its own. Chris@16: */ Chris@16: Chris@16: #ifndef BOOST_REGEX_V4_REGEX_MERGE_HPP Chris@16: #define BOOST_REGEX_V4_REGEX_MERGE_HPP Chris@16: Chris@16: Chris@16: namespace boost{ Chris@16: Chris@16: #ifdef BOOST_MSVC Chris@16: #pragma warning(push) Chris@16: #pragma warning(disable: 4103) Chris@16: #endif Chris@16: #ifdef BOOST_HAS_ABI_HEADERS Chris@16: # include BOOST_ABI_PREFIX Chris@16: #endif Chris@16: #ifdef BOOST_MSVC Chris@16: #pragma warning(pop) Chris@16: #endif Chris@16: Chris@16: template Chris@16: inline OutputIterator regex_merge(OutputIterator out, Chris@16: Iterator first, Chris@16: Iterator last, Chris@16: const basic_regex& e, Chris@16: const charT* fmt, Chris@16: match_flag_type flags = match_default) Chris@16: { Chris@16: return regex_replace(out, first, last, e, fmt, flags); Chris@16: } Chris@16: Chris@16: template Chris@16: inline OutputIterator regex_merge(OutputIterator out, Chris@16: Iterator first, Chris@16: Iterator last, Chris@16: const basic_regex& e, Chris@16: const std::basic_string& fmt, Chris@16: match_flag_type flags = match_default) Chris@16: { Chris@16: return regex_merge(out, first, last, e, fmt.c_str(), flags); Chris@16: } Chris@16: Chris@16: template Chris@16: inline std::basic_string regex_merge(const std::basic_string& s, Chris@16: const basic_regex& e, Chris@16: const charT* fmt, Chris@16: match_flag_type flags = match_default) Chris@16: { Chris@16: return regex_replace(s, e, fmt, flags); Chris@16: } Chris@16: Chris@16: template Chris@16: inline std::basic_string regex_merge(const std::basic_string& s, Chris@16: const basic_regex& e, Chris@16: const std::basic_string& fmt, Chris@16: match_flag_type flags = match_default) Chris@16: { Chris@16: return regex_replace(s, e, fmt, flags); Chris@16: } Chris@16: Chris@16: #ifdef BOOST_MSVC Chris@16: #pragma warning(push) Chris@16: #pragma warning(disable: 4103) Chris@16: #endif Chris@16: #ifdef BOOST_HAS_ABI_HEADERS Chris@16: # include BOOST_ABI_SUFFIX Chris@16: #endif Chris@16: #ifdef BOOST_MSVC Chris@16: #pragma warning(pop) Chris@16: #endif Chris@16: Chris@16: } // namespace boost Chris@16: Chris@16: #endif // BOOST_REGEX_V4_REGEX_MERGE_HPP Chris@16: Chris@16: