14constexpr size_t FnvOffsetBasis = 14695981039346656037ull;
15constexpr size_t FnvPrime = 1099511628211ull;
20constexpr auto Fnv1a(std::string_view path) ->
size_t
22 auto hash = detail::FnvOffsetBasis;
25 hash = (hash ^
static_cast<uint8_t
>(c)) * detail::FnvPrime;
34 constexpr explicit StringHash(std::string_view path)
39 constexpr auto Hash()
const noexcept ->
size_t
50 return lhs.Hash() == rhs.Hash();
53constexpr bool operator!=(StringHash lhs, StringHash rhs)
constexpr auto Fnv1a(std::string_view path) -> size_t
FNV1-a hash algorithm.
Definition: Hash.h:20
A constexpr string hash wrapper.
Definition: Hash.h:32