123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- #ifndef BOOST_CONVERT_HPP_VP_2004_04_28
- #define BOOST_CONVERT_HPP_VP_2004_04_28
- #include <boost/program_options/config.hpp>
- #if !defined(BOOST_NO_STD_WSTRING)
- #include <boost/detail/workaround.hpp>
- #include <string>
- #include <vector>
- #include <locale>
- #include <cwchar>
- #include <stdexcept>
- #if defined(BOOST_NO_STDC_NAMESPACE)
- #include <wchar.h>
- namespace std
- {
- using ::mbstate_t;
- }
- #endif
- namespace boost {
-
- BOOST_PROGRAM_OPTIONS_DECL std::wstring
- from_8_bit(const std::string& s,
- const std::codecvt<wchar_t, char, std::mbstate_t>& cvt);
-
- BOOST_PROGRAM_OPTIONS_DECL std::string
- to_8_bit(const std::wstring& s,
- const std::codecvt<wchar_t, char, std::mbstate_t>& cvt);
-
- BOOST_PROGRAM_OPTIONS_DECL std::wstring
- from_utf8(const std::string& s);
-
-
- BOOST_PROGRAM_OPTIONS_DECL std::string
- to_utf8(const std::wstring& s);
-
- BOOST_PROGRAM_OPTIONS_DECL std::string
- to_local_8_bit(const std::wstring& s);
-
- BOOST_PROGRAM_OPTIONS_DECL std::wstring
- from_local_8_bit(const std::string& s);
- namespace program_options
- {
-
- BOOST_PROGRAM_OPTIONS_DECL std::string to_internal(const std::string&);
-
- BOOST_PROGRAM_OPTIONS_DECL std::string to_internal(const std::wstring&);
- template<class T>
- std::vector<std::string> to_internal(const std::vector<T>& s)
- {
- std::vector<std::string> result;
- for (unsigned i = 0; i < s.size(); ++i)
- result.push_back(to_internal(s[i]));
- return result;
- }
- }
-
- }
- #else
- #include <vector>
- #include <string>
- namespace boost{
- namespace program_options{
- BOOST_PROGRAM_OPTIONS_DECL std::string to_internal(const std::string&);
- template<class T>
- std::vector<std::string> to_internal(const std::vector<T>& s)
- {
- std::vector<std::string> result;
- for (unsigned i = 0; i < s.size(); ++i)
- result.push_back(to_internal(s[i]));
- return result;
- }
- }
- }
- #endif
- #endif
|