pub struct Consensus {Show 24 fields
pub id: String,
pub genesis_hash: H256,
pub dao_type_hash: H256,
pub secp256k1_blake160_sighash_all_type_hash: Option<H256>,
pub secp256k1_blake160_multisig_all_type_hash: Option<H256>,
pub initial_primary_epoch_reward: Capacity,
pub secondary_epoch_reward: Capacity,
pub max_uncles_num: Uint64,
pub orphan_rate_target: RationalU256,
pub epoch_duration_target: Uint64,
pub tx_proposal_window: ProposalWindow,
pub proposer_reward_ratio: RationalU256,
pub cellbase_maturity: EpochNumberWithFraction,
pub median_time_block_count: Uint64,
pub max_block_cycles: Cycle,
pub max_block_bytes: Uint64,
pub block_version: Version,
pub tx_version: Version,
pub type_id_code_hash: H256,
pub max_block_proposals_limit: Uint64,
pub primary_epoch_reward_halving_interval: Uint64,
pub permanent_difficulty_in_dummy: bool,
pub hardfork_features: HardForks,
pub softforks: HashMap<DeploymentPos, SoftFork>,
}
Expand description
Consensus defines various parameters that influence chain consensus
Fields§
§id: String
Names the network.
genesis_hash: H256
The genesis block hash
dao_type_hash: H256
The dao type hash
secp256k1_blake160_sighash_all_type_hash: Option<H256>
The secp256k1_blake160_sighash_all_type_hash
secp256k1_blake160_multisig_all_type_hash: Option<H256>
The secp256k1_blake160_multisig_all_type_hash
initial_primary_epoch_reward: Capacity
The initial primary_epoch_reward
secondary_epoch_reward: Capacity
The secondary primary_epoch_reward
max_uncles_num: Uint64
The maximum amount of uncles allowed for a block
orphan_rate_target: RationalU256
The expected orphan_rate
epoch_duration_target: Uint64
The expected epoch_duration
tx_proposal_window: ProposalWindow
The two-step-transaction-confirmation proposal window
proposer_reward_ratio: RationalU256
The two-step-transaction-confirmation proposer reward ratio
cellbase_maturity: EpochNumberWithFraction
The Cellbase maturity
median_time_block_count: Uint64
This parameter indicates the count of past blocks used in the median time calculation
max_block_cycles: Cycle
Maximum cycles that all the scripts in all the commit transactions can take
max_block_bytes: Uint64
Maximum number of bytes to use for the entire block
block_version: Version
The block version number supported
tx_version: Version
The tx version number supported
type_id_code_hash: H256
The “TYPE_ID” in hex
max_block_proposals_limit: Uint64
The Limit to the number of proposals per block
primary_epoch_reward_halving_interval: Uint64
Primary reward is cut in half every halving_interval epoch
permanent_difficulty_in_dummy: bool
Keep difficulty be permanent if the pow is dummy
hardfork_features: HardForks
Hardfork features
softforks: HashMap<DeploymentPos, SoftFork>
HashMap<DeploymentPos, SoftFork>
- Softforks
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Consensus
impl<'de> Deserialize<'de> for Consensus
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for Consensus
impl JsonSchema for Consensus
Source§fn schema_name() -> String
fn schema_name() -> String
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(gen: &mut SchemaGenerator) -> Schema
fn json_schema(gen: &mut SchemaGenerator) -> Schema
Source§fn is_referenceable() -> bool
fn is_referenceable() -> bool
$ref
keyword. Read moreAuto Trait Implementations§
impl Freeze for Consensus
impl RefUnwindSafe for Consensus
impl Send for Consensus
impl Sync for Consensus
impl Unpin for Consensus
impl UnwindSafe for Consensus
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)