Ballot
A Ballot represents a User's votes in a Poll, as well as their next valid nonce.
Table of contents
Constructors
Properties
Methods
Constructors
constructor
• new Ballot(_numVoteOptions
, _voteOptionTreeDepth
): Ballot
Create a new Ballot instance
Parameters
Name | Type | Description |
---|---|---|
_numVoteOptions | number | How many vote options are available in the poll |
_voteOptionTreeDepth | number | The depth of the merkle tree holding the vote options |
Returns
Defined in
Properties
nonce
• nonce: bigint
Defined in
voteOptionTreeDepth
• voteOptionTreeDepth: number
Defined in
votes
• votes: bigint
[] = []
Defined in
Methods
asArray
▸ asArray(): bigint
[]
Convert in a an array of bigints
Returns
bigint
[]
the ballot as a bigint array
Notice
this is the nonce and the root of the vote option tree
Defined in
asCircuitInputs
▸ asCircuitInputs(): bigint
[]
Convert in a format suitable for the circuit
Returns
bigint
[]
the ballot as a BigInt array
Defined in
copy
▸ copy(): Ballot
Create a deep clone of this Ballot
Returns
a copy of the ballot
Defined in
equals
▸ equals(b
): boolean
Check if two ballots are equal (same votes and same nonce)
Parameters
Name | Type | Description |
---|---|---|
b | Ballot | The ballot to compare with |
Returns
boolean
whether the two ballots are equal
Defined in
hash
▸ hash(): bigint
Generate an hash of this ballot
Returns
bigint
The hash of the ballot
Defined in
toJSON
▸ toJSON(): IJsonBallot
Serialize to a JSON object
Returns
Defined in
fromJSON
▸ fromJSON(json
): Ballot
Deserialize into a Ballot instance
Parameters
Name | Type | Description |
---|---|---|
json | IJsonBallot | the json representation |
Returns
the deserialized object as a Ballot instance
Defined in
genBlankBallot
▸ genBlankBallot(numVoteOptions
, voteOptionTreeDepth
): Ballot
Generate a blank ballot
Parameters
Name | Type | Description |
---|---|---|
numVoteOptions | number | How many vote options are available |
voteOptionTreeDepth | number | How deep is the merkle tree holding the vote options |
Returns
a Blank Ballot object
Defined in
genRandomBallot
▸ genRandomBallot(numVoteOptions
, voteOptionTreeDepth
): Ballot
Generate a random ballot
Parameters
Name | Type | Description |
---|---|---|
numVoteOptions | number | How many vote options are available |
voteOptionTreeDepth | number | How deep is the merkle tree holding the vote options |
Returns
a random Ballot