summaryrefslogtreecommitdiff
path: root/boost/detail/utf8_codecvt_facet.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'boost/detail/utf8_codecvt_facet.hpp')
-rw-r--r--boost/detail/utf8_codecvt_facet.hpp18
1 files changed, 11 insertions, 7 deletions
diff --git a/boost/detail/utf8_codecvt_facet.hpp b/boost/detail/utf8_codecvt_facet.hpp
index 2d7ed8b2c4..b3c7346da7 100644
--- a/boost/detail/utf8_codecvt_facet.hpp
+++ b/boost/detail/utf8_codecvt_facet.hpp
@@ -105,16 +105,20 @@ BOOST_UTF8_BEGIN_NAMESPACE
// See utf8_codecvt_facet.ipp for the implementation. //
//----------------------------------------------------------------------------//
+#ifndef BOOST_UTF8_DECL
+#define BOOST_UTF8_DECL
+#endif
-struct BOOST_UTF8_DECL utf8_codecvt_facet :
+struct BOOST_SYMBOL_VISIBLE utf8_codecvt_facet :
public std::codecvt<wchar_t, char, std::mbstate_t>
{
public:
- explicit utf8_codecvt_facet(std::size_t no_locale_manage=0)
+ BOOST_UTF8_DECL explicit utf8_codecvt_facet(std::size_t no_locale_manage=0)
: std::codecvt<wchar_t, char, std::mbstate_t>(no_locale_manage)
{}
+ virtual ~utf8_codecvt_facet(){}
protected:
- virtual std::codecvt_base::result do_in(
+ BOOST_UTF8_DECL virtual std::codecvt_base::result do_in(
std::mbstate_t& state,
const char * from,
const char * from_end,
@@ -124,7 +128,7 @@ protected:
wchar_t*& to_next
) const;
- virtual std::codecvt_base::result do_out(
+ BOOST_UTF8_DECL virtual std::codecvt_base::result do_out(
std::mbstate_t & state,
const wchar_t * from,
const wchar_t * from_end,
@@ -148,11 +152,11 @@ protected:
return get_octet_count(lead_octet) - 1;
}
- static unsigned int get_octet_count(unsigned char lead_octet);
+ BOOST_UTF8_DECL static unsigned int get_octet_count(unsigned char lead_octet);
// How many "continuing octets" will be needed for this word
// == total octets - 1.
- int get_cont_octet_out_count(wchar_t word) const ;
+ BOOST_UTF8_DECL int get_cont_octet_out_count(wchar_t word) const ;
virtual bool do_always_noconv() const BOOST_NOEXCEPT_OR_NOTHROW {
return false;
@@ -176,7 +180,7 @@ protected:
// How many char objects can I process to get <= max_limit
// wchar_t objects?
- virtual int do_length(
+ BOOST_UTF8_DECL virtual int do_length(
const std::mbstate_t &,
const char * from,
const char * from_end,