40 explicit Url(
const std::string &url);
43 Url& operator=(
const Url &other);
46 Url& operator=(
Url &&other)
noexcept;
52 void setUrl(
const std::string &url);
54 void setIdScheme(IdScheme idScheme);
55 void setHost(
const std::string &host);
56 void setPort(uint16_t port);
57 void setPath(
const std::string &path);
62 std::string toString()
const;
64 IdScheme getIdScheme()
const;
65 const std::string getHost()
const;
66 uint16_t getPort()
const;
67 const std::string getPath()
const;
70 static std::string idSchemeToString(IdScheme idScheme);
71 static IdScheme idSchemeFromString(
const std::string &idScheme);
74 TEASE_EXPORT
friend bool operator==(
const Url &left,
const Url &right);
75 TEASE_EXPORT
friend bool operator!=(
const Url &left,
const Url &right);
79 std::unique_ptr<Impl> d_ptr;