8#ifndef GALAXY_MATH_FNV1A_HPP_
9#define GALAXY_MATH_FNV1A_HPP_
23 concept valid_fnv_bits = std::is_same_v<T, std::uint32_t> || std::is_same_v<T, std::uint64_t>;
30 template<val
id_fnv_bits bits = std::u
int64_t>
39 static constexpr auto offset = 2166136261;
40 static constexpr auto prime = 16777619;
49 static constexpr auto offset = 14695981039346656037ull;
50 static constexpr auto prime = 1099511628211ull;
63 template<val
id_fnv_bits bits = std::u
int64_t>
78 inline constexpr std::uint32_t
fnv1a_32(
const char*
const str)
noexcept
92 inline constexpr std::uint64_t
fnv1a_64(
const char*
const str)
noexcept
Concept to enforce fnv bit types.
constexpr std::uint64_t fnv1a_64(const char *const str) noexcept
Convert string to 64bit hash.
constexpr bits fnv1a(const char *const str, const bits value=fnv_1a_params< bits >::offset) noexcept
Convert string to hash.
constexpr std::uint32_t fnv1a_32(const char *const str) noexcept
Convert string to 32bit hash.
Base specialization for fnv1a params.