Struct cryptoballot::ElectionTransaction [−][src]
pub struct ElectionTransaction { pub id: Identifier, pub authority_public: PublicKey, pub trustees: Vec<Trustee>, pub trustees_threshold: u8, pub authenticators: Vec<Authenticator>, pub authenticators_threshold: u8, pub mix_config: Option<MixConfig>, pub ballots: Vec<Ballot>, pub contests: Vec<Contest>, pub properties: IndexMap<String, Value>, }
Expand description
Transaction 1: Election
Fields
id: Identifier
Expand description
Election Authority Public Key
The election authority’s public key should be posted in a trusted and well-known location.
If using sawtooth, before you can post an Election transation,
you must register an Election Authority’s public key via sawset
.
trustees: Vec<Trustee>
Expand description
List of trustees that have been given a secret key share
trustees_threshold: u8
Expand description
Minimum number of trustees needed to reconstruct the secret key and decrypt votes. This is also the number of mixes that will be performed as part of the mixnet
authenticators: Vec<Authenticator>
Expand description
Authenticators who can authenticate voters
authenticators_threshold: u8
Expand description
Mininum number of authenticators that might provide a signature for a voter for that voter to post a Vote transaction.
mix_config: Option<MixConfig>
Expand description
Mixnet configuration, None implies no mix-net
ballots: Vec<Ballot>
Expand description
List of ballots that can be cast in this election
contests: Vec<Contest>
Expand description
List of contests in this election
properties: IndexMap<String, Value>
Expand description
Application specific properties.
Hashmaps are not allowed because their unstable ordering leads to non-determinism.
Implementations
impl ElectionTransaction
[src]
impl ElectionTransaction
[src]pub fn new(authority_public: PublicKey) -> Self
[src]
pub fn new(authority_public: PublicKey) -> Self
[src]Create a new ElectionTransaction
The returned SecretKey should be distributed to the trustees using Shamir Secret Sharing
pub fn get_authenticator(&self, authn_id: Uuid) -> Option<&Authenticator>
[src]
pub fn get_authenticator(&self, authn_id: Uuid) -> Option<&Authenticator>
[src]Get an authenticator with the given ID
pub fn get_trustee(&self, trustee_index: u8) -> Option<&Trustee>
[src]
pub fn get_trustee(&self, trustee_index: u8) -> Option<&Trustee>
[src]Get a trustee with the given ID
pub fn get_ballot(&self, ballot_id: &str) -> Option<&Ballot>
[src]
pub fn get_full_trustees(&self) -> Vec<Trustee>
[src]
pub fn get_full_trustees(&self) -> Vec<Trustee>
[src]Get all trustees with all info
Trait Implementations
impl AsRef<ElectionTransaction> for SignedTransaction
[src]
impl AsRef<ElectionTransaction> for SignedTransaction
[src]fn as_ref(&self) -> &ElectionTransaction
[src]
fn as_ref(&self) -> &ElectionTransaction
[src]Performs the conversion.
impl Clone for ElectionTransaction
[src]
impl Clone for ElectionTransaction
[src]fn clone(&self) -> ElectionTransaction
[src]
fn clone(&self) -> ElectionTransaction
[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]Performs copy-assignment from source
. Read more
impl CryptoBallotTransaction for ElectionTransaction
[src]
impl CryptoBallotTransaction for ElectionTransaction
[src]fn validate_tx<S: Store>(&self, _store: &S) -> Result<(), ValidationError>
[src]
fn validate_tx<S: Store>(&self, _store: &S) -> Result<(), ValidationError>
[src]Validate the election transaction
fn id(&self) -> Identifier
[src]
fn id(&self) -> Identifier
[src]Get the transaction ID
fn election_id(&self) -> Identifier
[src]
fn election_id(&self) -> Identifier
[src]Get the transaction election ID
fn tx_type() -> TransactionType
[src]
fn tx_type() -> TransactionType
[src]Get the transaction Type
impl<'de> Deserialize<'de> for ElectionTransaction
[src]
impl<'de> Deserialize<'de> for ElectionTransaction
[src]fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]Deserialize this value from the given Serde deserializer. Read more
impl From<SignedTransaction> for ElectionTransaction
[src]
impl From<SignedTransaction> for ElectionTransaction
[src]fn from(tx: SignedTransaction) -> Self
[src]
fn from(tx: SignedTransaction) -> Self
[src]Performs the conversion.
impl Serialize for ElectionTransaction
[src]
impl Serialize for ElectionTransaction
[src]Auto Trait Implementations
impl RefUnwindSafe for ElectionTransaction
impl Send for ElectionTransaction
impl Sync for ElectionTransaction
impl Unpin for ElectionTransaction
impl UnwindSafe for ElectionTransaction
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Pointable for T
[src]
impl<T> Pointable for T
[src]impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,