55 explicit BaseTag(
const std::string& _name) :
56 m_name(_name), m_hash(
std::
hash<
std::string>()(_name))
64 m_name(other.m_name), m_hash(other.m_hash)
73 m_name = other.m_name;
74 m_hash = other.m_hash;
79 inline std::string
name()
const
85 inline std::size_t
hash()
const
117 return first.m_hash == second.m_hash ? first.m_name == second.m_name :
false;
122 return !(first == second);
127 return first.m_name < second.m_name;
140 return basetag.
hash();
146 #endif // _BASETAG_H_
BaseTag & operator=(const BaseTag &other)
bool operator<(const BaseTag &first, const BaseTag &second)
bool operator==(const Any &lhs, const Any &rhs)
Base class for all tags. This class stores name and not the type information for a shogun object...
BaseTag(const std::string &_name)
friend bool operator!=(const BaseTag &first, const BaseTag &second)
bool operator!=(const Any &lhs, const Any &rhs)
friend bool operator<(const BaseTag &first, const BaseTag &second)
friend bool operator==(const BaseTag &first, const BaseTag &second)
std::size_t operator()(const shogun::BaseTag &basetag) const
all of classes and functions are contained in the shogun namespace
BaseTag(const BaseTag &other)