util/StringView: remove Literal()
This is not necessary, because a strlen() on a literal gets optimized away by the compiler.
This commit is contained in:
parent
3491218915
commit
be5b726c0a
@ -41,9 +41,9 @@ gcc_pure
|
||||
static UPnPDirObject::ItemClass
|
||||
ParseItemClass(StringView name) noexcept
|
||||
{
|
||||
if (name.EqualsLiteral("object.item.audioItem.musicTrack"))
|
||||
if (name.Equals("object.item.audioItem.musicTrack"))
|
||||
return UPnPDirObject::ItemClass::MUSIC;
|
||||
else if (name.EqualsLiteral("object.item.playlistItem"))
|
||||
else if (name.Equals("object.item.playlistItem"))
|
||||
return UPnPDirObject::ItemClass::PLAYLIST;
|
||||
else
|
||||
return UPnPDirObject::ItemClass::UNKNOWN;
|
||||
|
@ -54,16 +54,6 @@ struct StringView : ConstBuffer<char> {
|
||||
return StringView("", size_t(0));
|
||||
}
|
||||
|
||||
template<size_t n>
|
||||
static constexpr StringView Literal(const char (&_data)[n]) noexcept {
|
||||
static_assert(n > 0, "");
|
||||
return {_data, n - 1};
|
||||
}
|
||||
|
||||
static constexpr StringView Literal() noexcept {
|
||||
return StringView("", size_t(0));
|
||||
}
|
||||
|
||||
void SetEmpty() noexcept {
|
||||
data = "";
|
||||
size = 0;
|
||||
@ -105,22 +95,12 @@ struct StringView : ConstBuffer<char> {
|
||||
memcmp(data, other.data, size) == 0;
|
||||
}
|
||||
|
||||
template<size_t n>
|
||||
bool EqualsLiteral(const char (&other)[n]) const noexcept {
|
||||
return Equals(Literal(other));
|
||||
}
|
||||
|
||||
gcc_pure
|
||||
bool EqualsIgnoreCase(StringView other) const noexcept {
|
||||
return size == other.size &&
|
||||
strncasecmp(data, other.data, size) == 0;
|
||||
}
|
||||
|
||||
template<size_t n>
|
||||
bool EqualsLiteralIgnoreCase(const char (&other)[n]) const noexcept {
|
||||
return EqualsIgnoreCase(Literal(other));
|
||||
}
|
||||
|
||||
/**
|
||||
* Skip all whitespace at the beginning.
|
||||
*/
|
||||
|
Loading…
Reference in New Issue
Block a user