hash.h File Reference
`#include <cstdint>`
`#include <span>`
`#include <string_view>`
Include dependency graph for hash.h:

Go to the source code of this file.

## Namespaces

namespace | sdi_toolBox
| Root namespace for the sdi_toolBox library.
namespace | sdi_toolBox::common
| Cross-platform, reusable components shared across all sdi_toolBox modules.
namespace | sdi_toolBox::common::utils
| General-purpose utility functions shared across all sdi_toolBox modules.
namespace | sdi_toolBox::common::utils::hash
| Lightweight hashing utilities (FNV-1a implementations).

## Functions

constexpr std::uint32_t | fnv1a (std::span< const std::byte > data) noexcept
| Compute the FNV-1a 32-bit hash for a span of bytes.
constexpr std::uint32_t | fnv1a (std::string_view sv) noexcept
| Compute the FNV-1a 32-bit hash for a std::string_view.
template<typename T > requires std::is_trivially_copyable_v<T>
constexpr std::uint32_t | fnv1a (const T &value) noexcept
| Compute the FNV-1a 32-bit hash for a trivially copyable POD object.
constexpr std::uint64_t | fnv1a_64 (std::span< const std::byte > data) noexcept
| Compute the FNV-1a 64-bit hash for a span of bytes.
constexpr std::uint64_t | fnv1a_64 (std::string_view sv) noexcept
| Compute the FNV-1a 64-bit hash for a std::string_view.
template<typename T > requires std::is_trivially_copyable_v<T>
constexpr std::uint64_t | fnv1a_64 (const T &value) noexcept
| Compute the FNV-1a 64-bit hash for a trivially copyable POD object.