#ifndef DISCOVERY_DNSSD_PUBLIC_DNS_SD_INSTANCE_H_
#define DISCOVERY_DNSSD_PUBLIC_DNS_SD_INSTANCE_H_
#include <string>
#include <utility>
#include <vector>
#include "discovery/dnssd/public/dns_sd_txt_record.h"
#include "platform/base/ip_address.h"
#include "util/std_util.h"
namespace openscreen::discovery {
bool IsInstanceValid(const std::string& instance);
bool IsServiceValid(const std::string& service);
bool IsDomainValid(const std::string& domain);
class DnsSdInstance { … };
bool IsSubtypeValid(const DnsSdInstance::Subtype& subtype);
bool IsValid(const DnsSdInstance::Subtype& subtype);
bool operator<(const DnsSdInstance& lhs, const DnsSdInstance& rhs);
inline bool operator>(const DnsSdInstance& lhs, const DnsSdInstance& rhs) { … }
inline bool operator<=(const DnsSdInstance& lhs, const DnsSdInstance& rhs) { … }
inline bool operator>=(const DnsSdInstance& lhs, const DnsSdInstance& rhs) { … }
inline bool operator==(const DnsSdInstance& lhs, const DnsSdInstance& rhs) { … }
inline bool operator!=(const DnsSdInstance& lhs, const DnsSdInstance& rhs) { … }
}
#endif