ResultComputation
Computes vote results.
The result is the mode of the added votes. Otherwise, the vote is unresolved.
addVote(struct ResultComputation.Data data, int256 votePrice, struct FixedPoint.Unsigned numberTokens) internal
Adds a new vote to be used when computing the result.
Parameters:
-
data: contains information to which the vote is applied. -
votePrice: value specified in the vote for the givennumberTokens. -
numberTokens: number of tokens that voted on thevotePrice.
getResolvedPrice(struct ResultComputation.Data data, struct FixedPoint.Unsigned minVoteThreshold) → bool isResolved, int256 price internal
Returns whether the result is resolved, and if so, what value it resolved to.
price should be ignored if isResolved is false.
Parameters:
-
data: contains information against which theminVoteThresholdis applied. -
minVoteThreshold: min (exclusive) number of tokens that must have voted for the result to be valid. Can be used to enforce a minimum voter participation rate, regardless of how the votes are distributed.
wasVoteCorrect(struct ResultComputation.Data data, bytes32 voteHash) → bool internal
Checks whether a voteHash is considered correct.
Should only be called after a vote is resolved, i.e., via getResolvedPrice.
Parameters:
-
data: contains information against which thevoteHashis checked. -
voteHash: committed hash submitted by the voter.
getTotalCorrectlyVotedTokens(struct ResultComputation.Data data) → struct FixedPoint.Unsigned internal
Gets the total number of tokens whose votes are considered correct.
Should only be called after a vote is resolved, i.e., via getResolvedPrice.
Parameters:
-
data: contains all votes against which the correctly voted tokens are counted.