Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
Aleph::CA::ca_metrics_detail Namespace Reference

Concepts

concept  HasAtNode
 Detect whether L exposes a graph-style at_node(size_t) accessor.
 

Functions

constexpr std::uint64_t fnv1a_step (std::uint64_t h, const std::uint8_t b) noexcept
 Mix one byte into an FNV-1a hash.
 
template<typename T >
std::uint64_t fnv1a_mix (std::uint64_t h, const T &value) noexcept
 Mix every byte of value (in little-endian order) into an FNV-1a hash.
 

Variables

constexpr std::uint64_t fnv_basis = 14695981039346656037ull
 FNV-1a 64-bit basis and prime constants.
 
constexpr std::uint64_t fnv_prime = 1099511628211ull
 

Function Documentation

◆ fnv1a_mix()

template<typename T >
std::uint64_t Aleph::CA::ca_metrics_detail::fnv1a_mix ( std::uint64_t  h,
const T &  value 
)
inlinenoexcept

Mix every byte of value (in little-endian order) into an FNV-1a hash.

Definition at line 100 of file ca-metrics.H.

References Aleph::blossom_maximum_cardinality_matching(), fnv1a_step(), h, and value.

◆ fnv1a_step()

constexpr std::uint64_t Aleph::CA::ca_metrics_detail::fnv1a_step ( std::uint64_t  h,
const std::uint8_t  b 
)
inlineconstexprnoexcept

Mix one byte into an FNV-1a hash.

Definition at line 91 of file ca-metrics.H.

References fnv_prime, and h.

Referenced by fnv1a_mix().

Variable Documentation

◆ fnv_basis

constexpr std::uint64_t Aleph::CA::ca_metrics_detail::fnv_basis = 14695981039346656037ull
inlineconstexpr

FNV-1a 64-bit basis and prime constants.

Definition at line 87 of file ca-metrics.H.

◆ fnv_prime

constexpr std::uint64_t Aleph::CA::ca_metrics_detail::fnv_prime = 1099511628211ull
inlineconstexpr

Definition at line 88 of file ca-metrics.H.

Referenced by fnv1a_step().