MCPcopy Create free account
hub / github.com/audacity/audacity / ParseUriQuery

Function ParseUriQuery

libraries/lib-string-utils/UriParser.cpp:59–88  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

57}
58
59QueryFields ParseUriQuery(std::string_view query, std::string_view delimiter) noexcept
60{
61 QueryFields result;
62
63 while (!query.empty())
64 {
65 const auto queryItemEnd = query.find(delimiter);
66 const auto queryItem = query.substr(0, queryItemEnd);
67
68 query.remove_prefix(
69 queryItemEnd != std::string_view::npos ? queryItemEnd + 1 :
70 query.size());
71
72 const auto queryItemValueStart = queryItem.find('=');
73
74 const auto queryItemValue = queryItem.substr(
75 queryItemValueStart != std::string_view::npos ?
76 queryItemValueStart + 1 :
77 queryItem.size());
78
79 const auto queryItemKey = queryItem.substr(
80 0, queryItemValueStart != std::string_view::npos ?
81 queryItemValueStart :
82 queryItem.size());
83
84 result.emplace(queryItemKey, queryItemValue);
85 }
86
87 return result;
88}

Callers 5

IsUrlExpiredFunction · 0.85
UriParserTests.cppFile · 0.85
HandleAudioLinkFunction · 0.85
HandleMixdownLinkFunction · 0.85
HandleProjectLinkFunction · 0.85

Calls 4

emplaceMethod · 0.80
emptyMethod · 0.45
findMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected