29template <ranges::input_range urng_t>
39 template <ranges::input_range urng2_t>
43 using alphabet_t = std::ranges::range_reference_t<urng_t>;
46 for (alphabet_t character : range)
48 result *= bio::alphabet::size<alphabet_t>;
49 result += h(character);
Provides overloads for std::hash.
The basis for bio::alphabet::alphabet, but requires only rank interface (not char).
Definition: concept.hpp:562
Additional non-standard concepts for ranges.
size_t operator()(urng2_t &&range) const noexcept
Compute the hash for a range of characters.
Definition: hash.hpp:41
Provides various transformation traits used by the range module.