9 #include <unordered_map> 15 using ParamsMap = std::unordered_map<std::string, std::string>;
17 class NX_PLUGIN_API
Url 30 Url(
const std::string& url);
32 std::string scheme()
const;
33 std::string url()
const;
34 std::string hostPath()
const;
35 std::string host()
const;
36 std::string path()
const;
38 ParamsMap params()
const;
43 ParseState parseSome();
44 ParseState parseScheme();
45 ParseState parseHostPath();
46 ParseState parseParams();
47 ParseState parseParam();
49 void copyAndAdvance(std::string* target,
size_t endIndex);
50 ParseState checkAndAdvance(
const std::string& stringToCheck, ParseState nextState);
53 const std::string& m_url;