#include <Keccak-fPropagation.h>
Public Member Functions | |
| ReverseStateIterator (const vector< SliceValue > &stateAfterChi, const KeccakFPropagation &DCorLC, unsigned int aMaxWeight=0) | |
| bool | isEnd () const |
| bool | isEmpty () const |
| void | operator++ () |
| const vector< SliceValue > & | operator* () const |
| unsigned int | getCurrentWeight () const |
| ReverseStateIterator::ReverseStateIterator | ( | const vector< SliceValue > & | stateAfterChi, | |
| const KeccakFPropagation & | DCorLC, | |||
| unsigned int | aMaxWeight = 0 | |||
| ) |
This constructor initializes the iterator based on a state value after χ, the KeccakFPropagation instance, which determines the compatible states, and an optional maximum of the propagation weight.
| stateAfterChi | The state value after χ as a vector of slices. | |
| DCorLC | A reference to the KeccakFPropagation instance that determines the type of propagation. | |
| aMaxWeight | The iterator will run through the states whose propagation weight is not higher than this parameter. If 0, the iterator runs through all the possible states. |
| bool ReverseStateIterator::isEnd | ( | ) | const |
This method tells whether the iterator has reached the end of the possible states.
| bool ReverseStateIterator::isEmpty | ( | ) | const |
This method tells wether the set of states to run through is empty.
| void ReverseStateIterator::operator++ | ( | ) |
This method moves the iterator to the next state.
| const vector< SliceValue > & ReverseStateIterator::operator* | ( | ) | const |
This method returns a constant reference to the current state.
| unsigned int ReverseStateIterator::getCurrentWeight | ( | ) | const |
This method returns the propagation weight of the current state.
1.5.6