@@ -77,7 +77,7 @@ class algorithm
7777 using iblocks_t = iterable<block_t >;
7878 using digests_t = std::vector<digest_t >;
7979
80- // / Constants .
80+ // / Count types .
8181 // / -----------------------------------------------------------------------
8282
8383 // / count_t is uint64_t (sha160/256) or uint128_t (sha512).
@@ -92,12 +92,14 @@ class algorithm
9292
9393 // / Single hashing.
9494 // / -----------------------------------------------------------------------
95+
9596 template <size_t Size>
9697 static constexpr digest_t hash (const ablocks_t <Size>& blocks) NOEXCEPT;
9798 static constexpr digest_t hash (const block_t & block) NOEXCEPT;
9899 static constexpr digest_t hash (const half_t & half) NOEXCEPT;
99100 static constexpr digest_t hash (const half_t & left, const half_t & right) NOEXCEPT;
100101 static constexpr digest_t hash (const quart_t & left, const quart_t & right) NOEXCEPT;
102+ static constexpr digest_t hash (uint8_t byte) NOEXCEPT;
101103 static digest_t hash (iblocks_t && blocks) NOEXCEPT;
102104
103105 // / Double hashing (sha256/512).
@@ -407,6 +409,7 @@ class algorithm
407409 static digest_t native_hash (const block_t & block) NOEXCEPT;
408410 static digest_t native_hash (const half_t & half) NOEXCEPT;
409411 static digest_t native_hash (const half_t & left, const half_t & right) NOEXCEPT;
412+ static digest_t native_hash (uint8_t byte) NOEXCEPT;
410413
411414 static digest_t native_double_hash (const block_t & block) NOEXCEPT;
412415 static digest_t native_double_hash (const half_t & half) NOEXCEPT;
0 commit comments