| 1 | #ifndef _STRING_CONVERT_HPP___ |
| 2 | #define _STRING_CONVERT_HPP___ |
| 3 | |
| 4 | /* Copyright (c) 2005 CrystalClear Software, Inc. |
| 5 | * Subject to the Boost Software License, Version 1.0. (See accompanying |
| 6 | * file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) |
| 7 | * Author: Jeff Garland, Bart Garst |
| 8 | * $Date$ |
| 9 | */ |
| 10 | |
| 11 | #include "boost/date_time/compiler_config.hpp" |
| 12 | #include <string> |
| 13 | |
| 14 | namespace boost { |
| 15 | namespace date_time { |
| 16 | |
| 17 | //! Converts a string from one value_type to another |
| 18 | /*! Converts a wstring to a string (or a string to wstring). If both template parameters |
| 19 | * are of same type, a copy of the input string is returned. */ |
| 20 | template<class InputT, class OutputT> |
| 21 | inline |
| 22 | std::basic_string<OutputT> convert_string_type(const std::basic_string<InputT>& inp_str) |
| 23 | { |
| 24 | typedef std::basic_string<OutputT> output_type; |
| 25 | output_type result; |
| 26 | result.insert(result.begin(), inp_str.begin(), inp_str.end()); |
| 27 | return result; |
| 28 | } |
| 29 | |
| 30 | }} // namespace boost::date_time |
| 31 | |
| 32 | #endif // _STRING_CONVERT_HPP___ |
| 33 | |