5 #ifndef VCCC_FUNCTIONAL_HASH_ARRAY_HPP_
6 #define VCCC_FUNCTIONAL_HASH_ARRAY_HPP_
10 #include <type_traits>
19 template<
typename T, std::
size_t Bytes = sizeof(T) * CHAR_BIT>
32 template<
typename T, std::
size_t Bytes = sizeof(T) * CHAR_BIT>
64 inline std::size_t
FNV_1(std::size_t
value,
const unsigned char*
const bytes, std::size_t
size) {
65 for (std::size_t i = 0; i <
size; ++i) {
79 inline std::size_t
FNV_1a(std::size_t
value,
const unsigned char*
const bytes, std::size_t
size) {
80 for (std::size_t i = 0; i <
size; ++i) {
96 template<
typename T, std::
size_t N>
std::size_t FNV_1a(std::size_t value, const T &byte)
Definition: hash_array.hpp:72
std::size_t FNV_1(std::size_t value, const T &byte)
Definition: hash_array.hpp:57
std::size_t hash_array(const T *bytes, std::size_t size)
Definition: hash_array.hpp:91
Definition: directory.h:12
constexpr auto size(const C &c) -> decltype(c.size())
Definition: size.hpp:16
constexpr VCCC_INLINE_OR_STATIC detail::element_niebloid< 1 > value
Definition: key_value.hpp:35
Definition: hash_array.hpp:33
Definition: hash_array.hpp:20