Add DebugPrint() for UniString.

This commit is contained in:
vng 2012-02-08 16:23:37 +03:00 committed by Alex Zolotarev
parent a6a4745c5c
commit 473b8e44b7

View file

@ -13,7 +13,17 @@ namespace strings
{
typedef uint32_t UniChar;
typedef buffer_vector<UniChar, 32> UniString;
//typedef buffer_vector<UniChar, 32> UniString;
/// Make new type, not typedef. Need to specialize DebugPrint.
class UniString : public buffer_vector<UniChar, 32>
{
typedef buffer_vector<UniChar, 32> BaseT;
public:
UniString() {}
explicit UniString(size_t n, UniChar c = UniChar()) : BaseT(n, c) {}
template <class IterT> UniString(IterT b, IterT e) : BaseT(b, e) {}
};
UniString MakeLowerCase(UniString const & s);
void MakeLowerCase(UniString & s);
@ -38,6 +48,11 @@ inline string ToUtf8(UniString const & s)
return result;
}
inline string DebugPrint(UniString const & s)
{
return ToUtf8(s);
}
template <typename DelimFuncT, typename UniCharIterT = UniString::const_iterator>
class TokenizeIterator
{