[][src]Struct exonum::blockchain::GenesisConfig

pub struct GenesisConfig {
    pub consensus: ConsensusConfig,
    pub validator_keys: Vec<ValidatorKeys>,
}

The initial configuration which is committed into the genesis block.

The genesis block is the first block in the blockchain which is created when the blockchain is initially launched. This block can contain some service data, but does not include transactions.

GenesisConfig includes consensus related configuration and the public keys of validators.

Fields

consensus: ConsensusConfig

Consensus configuration.

validator_keys: Vec<ValidatorKeys>

List of public keys of validators.

Methods

impl GenesisConfig[src]

pub fn new<I: Iterator<Item = ValidatorKeys>>(validators: I) -> Self[src]

Creates a default configuration from the given list of public keys.

pub fn new_with_consensus<I>(
    consensus: ConsensusConfig,
    validator_keys: I
) -> Self where
    I: Iterator<Item = ValidatorKeys>, 
[src]

Creates a configuration from the given consensus configuration and list of public keys.

Trait Implementations

impl Clone for GenesisConfig[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Debug for GenesisConfig[src]

impl Serialize for GenesisConfig[src]

impl<'de> Deserialize<'de> for GenesisConfig[src]

Auto Trait Implementations

Blanket Implementations

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: Deserialize<'de>, 
[src]

impl<T> Erased for T

impl<T> Same for T

type Output = T

Should always be Self

impl<T> Serialize for T where
    T: Serialize + ?Sized
[src]