util/UriExtract: migrate uri_get_scheme() to std::string_view

This commit is contained in:
Max Kellermann 2020-03-13 18:11:29 +01:00
parent 6876d160cf
commit 9a164668f2
2 changed files with 10 additions and 10 deletions

View File

@ -82,17 +82,17 @@ uri_after_scheme(const char *uri) noexcept
bool
uri_has_scheme(const char *uri) noexcept
{
return !uri_get_scheme(uri).IsNull();
return !uri_get_scheme(uri).empty();
}
StringView
uri_get_scheme(const char *uri) noexcept
std::string_view
uri_get_scheme(std::string_view uri) noexcept
{
const char *end = strstr(uri, "://");
if (end == nullptr)
return nullptr;
auto end = uri.find("://");
if (end == std::string_view::npos)
return {};
return {uri, end};
return uri.substr(0, end);
}
bool

View File

@ -32,7 +32,7 @@
#include "Compiler.h"
struct StringView;
#include <string_view>
/**
* Checks whether the specified URI has a scheme in the form
@ -46,8 +46,8 @@ uri_has_scheme(const char *uri) noexcept;
* Returns the scheme name of the specified URI, or an empty string.
*/
gcc_pure
StringView
uri_get_scheme(const char *uri) noexcept;
std::string_view
uri_get_scheme(std::string_view uri) noexcept;
gcc_pure
bool