13namespace hi::inline
v1 {
18 return hash1 + 0x9e3779b97f681800 + (hash2 << 6) + (hash2 >> 2);
20 return hash1 + 0x9e3779b9 + (hash2 << 6) + (hash2 >> 2);
26template<
typename First,
typename Second,
typename... Args>
27[[nodiscard]]
constexpr std::size_t hash_mix(First &&first, Second &&second, Args &&...args)
noexcept
29 if constexpr (
sizeof...(args) == 0) {
31 std::hash<std::remove_cvref_t<First>>{}(std::forward<First>(first)),
32 std::hash<std::remove_cvref_t<Second>>{}(std::forward<Second>(second)));
35 std::hash<std::remove_cvref_t<First>>{}(std::forward<First>(first)),
36 hash_mix(std::forward<Second>(second), std::forward<Args>(args)...));
Utilities to assert and bound check.
#define hi_not_implemented()
This part of the code has not been implemented yet.
Definition assert.hpp:182
Utilities used by the HikoGUI library itself.
DOXYGEN BUG.
Definition algorithm.hpp:15