algorithm/hash.hpp File Reference
#include <nil/crypto3/hash/hash_value.hpp>
#include <nil/crypto3/hash/hash_state.hpp>
#include <nil/crypto3/detail/type_traits.hpp>
+ Include dependency graph for algorithm/hash.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 nil
 
 nil::crypto3
 

Functions

template<typename Hash , typename SinglePassRange , typename HashAccumulator = accumulator_set<Hash>>
hashes::detail::range_hash_impl< hashes::detail::value_hash_impl< HashAccumulator > > nil::crypto3::hash (const SinglePassRange &r)
 
template<typename Hash , typename SinglePassRange , typename HashAccumulator = accumulator_set<Hash>>
std::enable_if< boost::accumulators::detail::is_accumulator_set< HashAccumulator >::value, HashAccumulator >::type & nil::crypto3::hash (const SinglePassRange &rng, HashAccumulator &sh)
 
template<typename Hash , typename SinglePassRange , typename OutputIterator >
std::enable_if<::nil::crypto3::detail::is_iterator< OutputIterator >::value, OutputIterator >::type nil::crypto3::hash (const SinglePassRange &rng, OutputIterator out)
 
template<typename Hash , typename InputIterator , typename HashAccumulator = accumulator_set<Hash>>
hashes::detail::range_hash_impl< hashes::detail::value_hash_impl< typename std::enable_if< boost::accumulators::detail::is_accumulator_set< HashAccumulator >::value, HashAccumulator >::type > > nil::crypto3::hash (InputIterator first, InputIterator last)
 
template<typename Hash , typename InputIterator , typename HashAccumulator = accumulator_set<Hash>>
std::enable_if< boost::accumulators::detail::is_accumulator_set< HashAccumulator >::value, HashAccumulator >::type & nil::crypto3::hash (InputIterator first, InputIterator last, HashAccumulator &sh)
 
template<typename Hash , typename InputIterator , typename OutputIterator >
std::enable_if<!boost::accumulators::detail::is_accumulator_set< OutputIterator >::value, OutputIterator >::type nil::crypto3::hash (InputIterator first, InputIterator last, OutputIterator out)
 
template<typename Hash , typename T , typename OutputIterator >
std::enable_if<::nil::crypto3::detail::is_iterator< OutputIterator >::value, OutputIterator >::type nil::crypto3::hash (std::initializer_list< T > list, OutputIterator out)
 
template<typename Hash , typename T , typename HashAccumulator = accumulator_set<Hash>>
hashes::detail::range_hash_impl< hashes::detail::value_hash_impl< HashAccumulator > > nil::crypto3::hash (std::initializer_list< T > r)
 
template<typename Hash , typename T , typename HashAccumulator = accumulator_set<Hash>>
std::enable_if< boost::accumulators::detail::is_accumulator_set< HashAccumulator >::value, HashAccumulator >::type & nil::crypto3::hash (std::initializer_list< T > rng, HashAccumulator &sh)