nil::crypto3::hashes::detail::poseidon_policy< FieldType, 8, PartRounds, std::enable_if_t< PartRounds==72||PartRounds==57 > > Struct Template Reference

#include <poseidon_policy.hpp>

+ Inheritance diagram for nil::crypto3::hashes::detail::poseidon_policy< FieldType, 8, PartRounds, std::enable_if_t< PartRounds==72||PartRounds==57 > >:
+ Collaboration diagram for nil::crypto3::hashes::detail::poseidon_policy< FieldType, 8, PartRounds, std::enable_if_t< PartRounds==72||PartRounds==57 > >:

Public Types

typedef std::array< element_type, Arity > block_type
 
typedef element_type digest_type
 
typedef field_type::value_type element_type
 
typedef FieldType field_type
 
typedef std::array< element_type, Arity+1 > state_type
 
typedef element_type word_type
 

Static Public Attributes

constexpr static const std::size_t block_bits
 
constexpr static const std::size_t block_words
 
constexpr static const std::size_t digest_bits
 
constexpr static const std::size_t full_rounds
 
constexpr static const std::size_t half_full_rounds
 
constexpr static const std::size_t part_rounds
 
constexpr static const std::size_t state_bits
 
constexpr static const std::size_t state_words
 
constexpr static const std::size_t word_bits
 

Member Typedef Documentation

◆ block_type

typedef std::array<element_type, Arity> nil::crypto3::hashes::detail::base_poseidon_policy< FieldType, Arity, PartRounds >::block_type
inherited

◆ digest_type

typedef element_type nil::crypto3::hashes::detail::base_poseidon_policy< FieldType, Arity, PartRounds >::digest_type
inherited

◆ element_type

typedef field_type::value_type nil::crypto3::hashes::detail::base_poseidon_policy< FieldType, Arity, PartRounds >::element_type
inherited

◆ field_type

typedef FieldType nil::crypto3::hashes::detail::base_poseidon_policy< FieldType, Arity, PartRounds >::field_type
inherited

◆ state_type

typedef std::array<element_type, Arity + 1> nil::crypto3::hashes::detail::base_poseidon_policy< FieldType, Arity, PartRounds >::state_type
inherited

◆ word_type

typedef element_type nil::crypto3::hashes::detail::base_poseidon_policy< FieldType, Arity, PartRounds >::word_type
inherited

Member Data Documentation

◆ block_bits

constexpr static const std::size_t nil::crypto3::hashes::detail::base_poseidon_policy< FieldType, Arity, PartRounds >::block_bits
staticconstexprinherited

◆ block_words

constexpr static const std::size_t nil::crypto3::hashes::detail::base_poseidon_policy< FieldType, Arity, PartRounds >::block_words
staticconstexprinherited

◆ digest_bits

constexpr static const std::size_t nil::crypto3::hashes::detail::base_poseidon_policy< FieldType, Arity, PartRounds >::digest_bits
staticconstexprinherited

◆ full_rounds

constexpr static const std::size_t nil::crypto3::hashes::detail::base_poseidon_policy< FieldType, Arity, PartRounds >::full_rounds
staticconstexprinherited

◆ half_full_rounds

constexpr static const std::size_t nil::crypto3::hashes::detail::base_poseidon_policy< FieldType, Arity, PartRounds >::half_full_rounds
staticconstexprinherited

◆ part_rounds

constexpr static const std::size_t nil::crypto3::hashes::detail::base_poseidon_policy< FieldType, Arity, PartRounds >::part_rounds
staticconstexprinherited

◆ state_bits

constexpr static const std::size_t nil::crypto3::hashes::detail::base_poseidon_policy< FieldType, Arity, PartRounds >::state_bits
staticconstexprinherited

◆ state_words

constexpr static const std::size_t nil::crypto3::hashes::detail::base_poseidon_policy< FieldType, Arity, PartRounds >::state_words
staticconstexprinherited

◆ word_bits

constexpr static const std::size_t nil::crypto3::hashes::detail::base_poseidon_policy< FieldType, Arity, PartRounds >::word_bits
staticconstexprinherited

The documentation for this struct was generated from the following file: