From b260bd85a77f949bc7d5bbbd8bcda99181801ffb Mon Sep 17 00:00:00 2001 From: Jason Volk Date: Tue, 4 Apr 2023 00:31:14 -0700 Subject: [PATCH] ircd::rfc3986::uri: Add path+query extractor convenience. --- include/ircd/rfc3986.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/include/ircd/rfc3986.h b/include/ircd/rfc3986.h index 35a04eb24..5f7723fca 100644 --- a/include/ircd/rfc3986.h +++ b/include/ircd/rfc3986.h @@ -70,6 +70,7 @@ struct ircd::rfc3986::uri string_view path; string_view query; string_view fragment; + string_view resource() const; // path and query string as one uri(const string_view &); uri() = default; @@ -179,3 +180,12 @@ namespace ircd::rfc3986 void valid_remote(const string_view &); bool valid_remote(std::nothrow_t, const string_view &); } + +inline ircd::string_view +ircd::rfc3986::uri::resource() +const +{ + return query? + string_view(begin(path), end(query)): + path; +}