17#include <boost/any.hpp>
18#include <boost/functional/hash.hpp>
23#include "opflex/ofcore/OFTypes.h"
48 explicit URI(
const OF_SHARED_PTR<const std::string>& uri);
53 explicit URI(
const std::string& uri);
87 OF_SHARED_PTR<const std::string> uri;
125#if __cplusplus > 199711L
132template<>
struct hash<opflex::modb::URI> {
A URI is used to identify managed objects in the MODB.
Definition URI.h:43
size_t hash_value(MAC const &mac)
Compute a hash value for the MAC, making MAC suitable as a key in a boost::unordered_map.
friend bool operator<(const URI &lhs, const URI &rhs)
Comparison operator for sorting.
std::ostream & operator<<(std::ostream &os, const MAC &mac)
Stream insertion operator.
URI & operator=(const URI &rhs)
Assignment operator.
friend bool operator==(const URI &lhs, const URI &rhs)
Check for URI equality.
bool operator!=(const MAC &lhs, const MAC &rhs)
Check for MAC inequality.
friend bool operator!=(const URI &lhs, const URI &rhs)
Check for URI inequality.
URI(const URI &uri)
Construct a deep copy of the URI using the given URI.
static const URI ROOT
Static root URI.
Definition URI.h:84
const std::string & toString() const
Get the URI represented as a string.
URI(const std::string &uri)
Construct a URI using the given string representation.
friend size_t hash_value(URI const &uri)
Compute a hash value for the URI, making URI suitable as a key in a boost::unordered_map.
bool operator<(const URI &lhs, const URI &rhs)
Comparison operator for sorting.
URI(const OF_SHARED_PTR< const std::string > &uri)
Construct a URI using the given string representation.
bool operator==(const MAC &lhs, const MAC &rhs)
Check for MAC equality.
void getElements(std::vector< std::string > &elements) const
Parse the URI and get the unescaped path elements from the URI.