Added String::Set method

Also improved performances in some cases


Former-commit-id: f88dbd0685b8779715e316e9d85ec005ab72e1fb
This commit is contained in:
Lynix
2014-01-15 14:40:15 +01:00
parent 5876e1c17a
commit 151a34b35b
2 changed files with 154 additions and 79 deletions

View File

@@ -33,7 +33,7 @@ class NAZARA_API NzString : public NzHashable
NzString();
explicit NzString(char character);
explicit NzString(unsigned int length, char character = '\0');
explicit NzString(unsigned int length, char character);
NzString(const char* string);
NzString(const char* string, unsigned int length);
NzString(const std::string& string);
@@ -124,6 +124,15 @@ class NAZARA_API NzString : public NzHashable
NzString& Reverse();
NzString Reversed() const;
NzString& Set(char character);
NzString& Set(unsigned int length, char character);
NzString& Set(const char* string);
NzString& Set(const char* string, unsigned int length);
NzString& Set(const std::string& string);
NzString& Set(const NzString& string);
NzString& Set(NzString&& string) noexcept;
NzString& Set(SharedString* sharedString);
NzString Simplified(nzUInt32 flags = None) const;
NzString& Simplify(nzUInt32 flags = None);
@@ -310,7 +319,7 @@ class NAZARA_API NzString : public NzHashable
static const unsigned int npos;
private:
void EnsureOwnership();
void EnsureOwnership(bool discardContent = false);
bool FillHash(NzAbstractHash* hash) const;
void ReleaseString();