33#include <Pt/TextCodec.h>
55 virtual result do_in(MBState& s,
const char* fromBegin,
56 const char* fromEnd,
const char*& fromNext,
60 virtual result do_out(MBState& s,
const Char* fromBegin,
61 const Char* fromEnd,
const Char*& fromNext,
62 char* toBegin,
char* toEnd,
char*& toNext)
const;
65 virtual bool do_always_noconv()
const throw();
68 virtual
int do_length(MBState& s, const
char* fromBegin, const
char* fromEnd, std::
size_t max) const;
71 virtual
int do_max_length() const throw();
74 virtual result do_unshift(
Pt::MBState&,
char*,
char*,
char*&) const;
77 virtual
int do_encoding() const throw();
84 {
return decode(data.data(), data.size()); }
87 static std::string
encode(
const Char* data, std::size_t size);
Unicode capable basic_string.
Definition Api-String.h:67
size_type size() const
Returns the length of the string.
Definition Api-String.h:263
const Pt::Char * data() const
Returns the string character buffer.
Definition Api-String.h:283
TextCodec(std::size_t ref=0)
static std::string encode(const Char *data, std::size_t size)
Encode to a UTF-8 string.
Utf8Codec(std::size_t ref=0)
Constructor.
static String decode(const char *data, std::size_t size)
Decode to a unicode string.
virtual ~Utf8Codec()
Destructor.
Definition Utf8Codec.h:51
static std::string encode(const String &data)
Encode to a UTF-8 string.
Definition Utf8Codec.h:90
Core module.
Definition Allocator.h:33
Unicode character type.
Definition String.h:67