22 seed ^=
v + 0x9e3779b97f4a7c15ULL + (
seed << 6) + (
seed >> 2);
29 requires std::derived_from<T, tagval::detail::TagValBaseTag>
31 [[nodiscard]] std::size_t
operator()(
const T& v)
const noexcept {
32 std::size_t s = std::hash<std::string_view>{}(T::kind_id());
CRTP HandleBase used by ClosedEnded and OpenEnded.
std::size_t hash_combine(std::size_t seed, const std::size_t v) noexcept
Definition hash.hpp:20
constexpr TagValDescriptor compute_descriptor() noexcept
Definition base.hpp:38
std::size_t operator()(const T &v) const noexcept
Definition hash.hpp:31