formatter.hpp
来自「Boost provides free peer-reviewed portab」· HPP 代码 · 共 95 行
HPP
95 行
// Boost string_algo library formatter.hpp header file ---------------------------//// Copyright Pavol Droba 2002-2003.//// Distributed under the Boost Software License, Version 1.0.// (See accompanying file LICENSE_1_0.txt or copy at// http://www.boost.org/LICENSE_1_0.txt)// See http://www.boost.org for updates, documentation, and revision history.#ifndef BOOST_STRING_FORMATTER_DETAIL_HPP#define BOOST_STRING_FORMATTER_DETAIL_HPP#include <boost/range/iterator_range.hpp>#include <boost/range/begin.hpp>#include <boost/range/end.hpp>#include <boost/range/const_iterator.hpp>#include <boost/algorithm/string/detail/util.hpp>// generic replace functors -----------------------------------------------//namespace boost { namespace algorithm { namespace detail {// const format functor ----------------------------------------------------// // constant format functor template<typename RangeT> struct const_formatF { private: typedef BOOST_STRING_TYPENAME range_const_iterator<RangeT>::type format_iterator; typedef iterator_range<format_iterator> result_type; public: // Construction const_formatF(const RangeT& Format) : m_Format(::boost::begin(Format), ::boost::end(Format)) {} // Operation#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564)) template<typename Range2T> result_type& operator()(const Range2T&) { return m_Format; }#endif template<typename Range2T> const result_type& operator()(const Range2T&) const { return m_Format; } private: result_type m_Format; };// identity format functor ----------------------------------------------------// // identity format functor template<typename RangeT> struct identity_formatF { // Operation template< typename Range2T > const RangeT& operator()(const Range2T& Replace) const { return RangeT(::boost::begin(Replace), ::boost::end(Replace)); } };// empty format functor ( used by erase ) ------------------------------------// // empty format functor template< typename CharT > struct empty_formatF { template< typename ReplaceT > empty_container<CharT> operator()(const ReplaceT&) const { return empty_container<CharT>(); } }; } // namespace detail } // namespace algorithm} // namespace boost#endif // BOOST_STRING_FORMATTER_DETAIL_HPP
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?