LeviLamina
Loading...
Searching...
No Matches
Url.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7namespace Util::ResourceUri { struct ValidationResult; }
8namespace Util::Url { struct Components; }
9namespace Util::Url { struct ComponentsView; }
10// clang-format on
11
12namespace Util::Url {
13// functions
14// NOLINTBEGIN
15MCNAPI_C ::std::string addUrlSchemeIfNotPresent(::std::string const& url, ::std::string const& scheme);
16
17MCNAPI ::std::string anonymizeIPAddress(::std::string const& ipAddress);
18
19MCNAPI ::std::string anonymizeIPv6Address(::std::string const& ipAddress);
20
21MCNAPI ::std::string append(::std::string const& lhs, ::std::string const& rhs);
22
23MCNAPI_C ::std::string appendQueryString(::std::string const& url, ::std::string const& query);
24
25MCNAPI_C ::std::string buildMailtoUrl(::std::string const& subject, ::std::string const& body);
26
27MCNAPI_C bool doesRouteMatch(::std::string_view routePattern, ::std::string_view route);
28
29MCNAPI_C ::std::string extractAuthorityAndPathFromUrl(::std::string const& url);
30
31MCNAPI_C ::std::optional<::std::string> getExtension(::std::string const& url);
32
33MCNAPI_C ::std::vector<::std::pair<::std::string_view, ::std::string_view>> getQueryParameters(::std::string_view url);
34
35MCNAPI_C bool isValidAbsoluteUrl(::std::string const& url);
36
37MCNAPI bool isValidIP(::std::string_view ipAddrStr, bool considerIPv4Valid, bool considerIPv6Valid);
38
39MCNAPI ::Util::Url::ComponentsView parseUrl(::std::string_view url);
40
41MCNAPI_C ::std::string setQueryParameter(::std::string_view url, ::std::string_view key, ::std::string_view value);
42
43MCNAPI_C bool startsWithMatchingFullPathSegments(::std::string_view route, ::std::string_view start);
44
45MCNAPI_C ::std::string stripProtocol(::std::string const& url);
46
47MCNAPI_C ::std::optional<::std::string> urlDecode(::std::string_view value, bool replacePlusWithSpace);
48
49MCNAPI ::std::string urlEncode(::std::string_view value, ::std::function<bool(uchar)> isAlphaNum);
50
51MCNAPI ::Util::ResourceUri::ValidationResult validateAbsoluteUrl(::std::string const& url);
52// NOLINTEND
53
54// static variables
55// NOLINTBEGIN
56MCNAPI ::std::vector<::std::pair<::std::string, ::std::string>> const& EMPTY_QUERY_PARAMETERS();
57
58MCNAPI ::Util::Url::Components const& EMPTY_URL();
59// NOLINTEND
60
61} // namespace Util::Url
Definition ValidationResult.h:7
Definition ComponentsView.h:12
Definition Components.h:7