17 #ifndef IGNITION_COMMON_URI_HH_ 18 #define IGNITION_COMMON_URI_HH_ 24 #include <ignition/common/Export.hh> 32 class URIAuthorityPrivate;
34 class URIQueryPrivate;
35 class URIFragmentPrivate;
88 public:
void SetUserInfo(
const std::string &_userInfo)
const;
96 public:
void SetHost(
const std::string &_host)
const;
100 public:
bool EmptyHostValid()
const;
106 public:
void SetEmptyHostValid(
bool _valid)
const;
110 public: std::optional<int> Port()
const;
113 public:
void SetPort(
int _port)
const;
118 public:
bool operator==(
const URIAuthority &_auth)
const;
136 bool _emptyHostValid =
false);
140 public:
bool Valid()
const;
149 bool _emptyHostValid =
false);
184 public:
void Clear();
188 public:
bool IsAbsolute()
const;
195 public:
void SetAbsolute(
bool _absolute =
true);
200 public:
void SetRelative();
245 public:
bool operator==(
const URIPath &_path)
const;
260 public:
static bool Valid(
const std::string &_str);
264 public:
bool Valid()
const;
296 public:
void Clear();
312 public:
bool operator==(
const URIQuery &_query)
const;
323 public:
static bool Valid(
const std::string &_str);
327 public:
bool Valid()
const;
359 public:
void Clear();
374 public:
bool operator==(
const URIFragment &_fragment)
const;
383 public:
static bool Valid(
const std::string &_str);
387 public:
bool Valid()
const;
406 class IGNITION_COMMON_VISIBLE
URI 416 bool _hasAuthority =
false);
420 public:
URI(
const URI &_uri);
433 public:
void Clear();
441 public:
void SetScheme(
const std::string &_scheme);
445 public:
void SetAuthority(
const URIAuthority &_authority);
452 public: std::optional<URIAuthority> Authority()
const;
460 public:
const URIPath &Path()
const;
468 public:
const URIQuery &Query()
const;
481 public:
URI &operator=(
const URI &_uri);
486 public:
bool operator==(
const URI &_uri)
const;
490 public:
bool Valid()
const;
495 public:
static bool Valid(
const std::string &_str);
The query component of a URI.
Definition: URI.hh:279
#define IGN_COMMON_WARN_RESUME__DLL_INTERFACE_MISSING
Definition: SuppressWarning.hh:67
A URI path contains a sequence of segments separated by /. The path may be empty in a valid URI...
Definition: URI.hh:167
A complete URI which has the following components:
Definition: URI.hh:406
The fragment component of a URI.
Definition: URI.hh:342
Forward declarations for the common classes.
#define IGN_COMMON_WARN_IGNORE__DLL_INTERFACE_MISSING
Microsoft Visual Studio does not automatically export the interface information for member variables ...
Definition: SuppressWarning.hh:64