initial commit
This commit is contained in:
commit
4b60ece582
327 changed files with 28286 additions and 0 deletions
65
lib/wType/string.h
Normal file
65
lib/wType/string.h
Normal file
|
@ -0,0 +1,65 @@
|
|||
#ifndef W_STRING_H
|
||||
#define W_STRING_H
|
||||
|
||||
#include "object.h"
|
||||
|
||||
namespace W{
|
||||
|
||||
class String : public Object
|
||||
{
|
||||
public:
|
||||
typedef std::u16string u16string;
|
||||
|
||||
String();
|
||||
explicit String(const u16string& p_data);
|
||||
explicit String(const char16_t* p_data);
|
||||
explicit String(const StdStr p_data);
|
||||
String(const String& original);
|
||||
|
||||
~String();
|
||||
|
||||
String& operator=(const String& original);
|
||||
|
||||
StdStr toString() const override;
|
||||
Object* copy() const override;
|
||||
size_type length() const override;
|
||||
size_type size() const override;
|
||||
objectType getType() const override;
|
||||
|
||||
bool operator==(const W::Object & other) const override;
|
||||
|
||||
bool operator<(const String& other) const;
|
||||
bool operator>(const String& other) const;
|
||||
bool operator<=(const String& other) const;
|
||||
bool operator>=(const String& other) const;
|
||||
bool operator==(const String& other) const;
|
||||
bool operator!=(const String& other) const;
|
||||
|
||||
bool operator==(const char16_t* other) const;
|
||||
bool operator!=(const char16_t* other) const;
|
||||
|
||||
static const objectType type = string;
|
||||
|
||||
operator u16string() const;
|
||||
uint64_t toUint64() const;
|
||||
|
||||
void serialize(ByteArray& out) const override;
|
||||
void deserialize(ByteArray& in) override;
|
||||
|
||||
String& operator+=(int);
|
||||
String& operator+=(const String& other);
|
||||
String operator+(const String& other) const;
|
||||
|
||||
size_type findLastOf(const W::String& str) const;
|
||||
size_type findFirstOf(const W::String& str) const;
|
||||
|
||||
String substr(size_type start, size_type length = u16string::npos) const;
|
||||
|
||||
private:
|
||||
u16string* data;
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif // W_STRING_H
|
Loading…
Add table
Add a link
Reference in a new issue