104 std::string& a_path);
165 const std::string& str()
const;
171 DISABLE_MSVC_WARN_4251
196 CScheme(std::string_view a_uri_sv
245 CHost(std::string_view a_uri_sv
261 CPort(std::string_view a_uri_sv
293 std::string str()
const;
309 CPath(std::string_view a_uri_sv
325 CQuery(std::string_view a_uri_sv
404 CUriRef(std::string a_uriref_str
411 std::string str()
const;
459 std::string a_uriref_str);
473 std::string a_relref_str);
484 std::string str()
const;
token fragment
Member variable.
token scheme
Member variable.
@ Relative
The URI is relative, means it hasn't a 'scheme' component.
@ Absolute
The URI is absolute, means it has a 'scheme' component.
hostport_type hostport
Member variable.
size_t size
Size of the buffer.
pathType
Type of the 'path' part of the URI.
@ ABS_PATH
The 'path' component begins with a '/'.
@ REL_PATH
The 'path' component doesn't begin with a '/'.
pathType path_type
Member variable.
token pathquery
Member variable.
sockaddr_storage IPaddress
Network socket address.
constexpr int HTTP_SUCCESS
Yet another success code.
uriType type
Member variable.
token text
Pointing to the full host:port string representation.
Represents a URI used in parse_uri and elsewhere.
Buffer used in parsing http messages, urls, etc. Generally this simply holds a pointer into a larger ...
Represents a host port, e.g. "[::1]:443".
Authority component of a URI reference.
Base class of a component.
std::string m_component
Name of the component.
STATE
Defines the possible states of a URI component.
Fragment component of a URI reference.
Host subcomponent from an authority component of a URI reference.
Path component of a URI reference.
Port subcomponent from an authority component of a URI reference.
Internal class to prepare the input URI string, Not publicly usable.
Query component of a URI reference.
Scheme component of a URI.
Representing a URI that can be modified with a relative reference.
CUriRef target
Resulting URI of merged relative reference to the base URI.
Userinfo subcomponent from an authority component of a URI reference.
UPnPsdk_VIS int parse_uri(const char *in, size_t max, uri_type *out)
Parses a uri as defined in RFC 3986 (Uniform Resource Identifier).
UPnPsdk_VIS void remove_dot_segments(std::string &a_path)
Remove dot segments from a path.
Reengineered Object Oriented UPnP+ program code.
UPnPsdk_VIS void decode_esc_chars(std::string &a_encoded)
Replaces http percent encoded characters with their character representation.
Specifications to be portable between different platforms.
Specifications to be portable with sockets between different platforms.
Macros to support visibility of external symbols.
#define UPnPsdk_VIS
Prefix to export symbol for external use.