Implements constructor for use with std string on ConstString.

This commit is contained in:
Deukhoofd 2020-02-27 16:50:33 +01:00
parent e6599e2b5b
commit 6e4c77d77a
Signed by: Deukhoofd
GPG Key ID: ADF2E9256009EDCE
1 changed files with 2 additions and 0 deletions

View File

@ -33,6 +33,8 @@ namespace Arbutils {
public: public:
constexpr ConstString() : _str(""), _length(0), _hash(Hash("")){}; constexpr ConstString() : _str(""), _length(0), _hash(Hash("")){};
constexpr explicit ConstString(const char* str) : _str(str), _length(Length(str)), _hash(Hash(str)){}; constexpr explicit ConstString(const char* str) : _str(str), _length(Length(str)), _hash(Hash(str)){};
constexpr explicit ConstString(const std::string& str)
: _str(str.c_str()), _length(str.length()), _hash(Hash(str.c_str())){};
constexpr explicit ConstString(const char* str, size_t size) : _str(str), _length(size), _hash(Hash(str)){}; constexpr explicit ConstString(const char* str, size_t size) : _str(str), _length(size), _hash(Hash(str)){};
static constexpr inline ConstString CaseInsensitive(const char* str) { return ConstString(str, true); } static constexpr inline ConstString CaseInsensitive(const char* str) { return ConstString(str, true); }