|
|
|
@ -35,12 +35,15 @@ typedef std::basic_string<ucchar> ucstringbase;
|
|
|
|
|
class ucstring : public ucstringbase
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
|
|
|
|
|
ucstring() { }
|
|
|
|
|
|
|
|
|
|
ucstring (const ucstringbase &str) : ucstringbase (str) {}
|
|
|
|
|
ucstring(const ucstringbase &str)
|
|
|
|
|
: ucstringbase(str)
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ucstring (const std::string &str) : ucstringbase ()
|
|
|
|
|
ucstring(const std::string &str)
|
|
|
|
|
: ucstringbase()
|
|
|
|
|
{
|
|
|
|
|
rawCopy(str);
|
|
|
|
|
}
|
|
|
|
@ -165,7 +168,6 @@ public:
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
void rawCopy(const std::string &str);
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
inline ucstring operator+(const ucstringbase &ucstr, ucchar c)
|
|
|
|
@ -216,13 +218,16 @@ inline ucstring operator+(const std::string &c, const ucstringbase &ucstr)
|
|
|
|
|
return ret;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
namespace NLMISC
|
|
|
|
|
{
|
|
|
|
|
namespace NLMISC {
|
|
|
|
|
|
|
|
|
|
// Traits for hash_map using CEntityId
|
|
|
|
|
struct CUCStringHashMapTraits
|
|
|
|
|
{
|
|
|
|
|
enum { bucket_size = 4, min_buckets = 8 };
|
|
|
|
|
enum
|
|
|
|
|
{
|
|
|
|
|
bucket_size = 4,
|
|
|
|
|
min_buckets = 8
|
|
|
|
|
};
|
|
|
|
|
CUCStringHashMapTraits() { }
|
|
|
|
|
size_t operator()(const ucstring &id) const
|
|
|
|
|
{
|
|
|
|
|