pub struct CKB2021 { /* private fields */ }
Expand description

A switch to select hard fork features base on the epoch number.

For safety, all fields are private and not allowed to update. This structure can only be constructed by CKB2021Builder.

Implementations§

source§

impl CKB2021

source

pub fn new_builder() -> CKB2021Builder

Creates a new builder to build an instance.

source

pub fn as_builder(&self) -> CKB2021Builder

Creates a new builder based on the current instance.

source

pub fn new_mirana() -> Self

Creates a new mirana instance.

source

pub fn new_dev_default() -> Self

Creates a new dev instance.

source

pub fn script_result_changed_at(&self) -> Vec<EpochNumber>

Returns a vector of epoch numbers, and there are new features which require refresh tx-pool caches will be enabled at those epochs.

source§

impl CKB2021

source

pub fn rfc_0028(&self) -> EpochNumber

Return the first epoch number when the RFC PR 0028 is enabled.

source

pub fn block_ts_as_relative_since_start(&self) -> EpochNumber

An alias for the method rfc_0028(&self) to let the code to be more readable.

source

pub fn is_block_ts_as_relative_since_start_enabled( &self, epoch_number: EpochNumber ) -> bool

If the RFC PR 0028 is enabled at the provided epoch.

source§

impl CKB2021

source

pub fn rfc_0029(&self) -> EpochNumber

Return the first epoch number when the RFC PR 0029 is enabled.

source

pub fn allow_multiple_matches_on_identical_data(&self) -> EpochNumber

An alias for the method rfc_0029(&self) to let the code to be more readable.

source

pub fn is_allow_multiple_matches_on_identical_data_enabled( &self, epoch_number: EpochNumber ) -> bool

If the RFC PR 0029 is enabled at the provided epoch.

source§

impl CKB2021

source

pub fn rfc_0030(&self) -> EpochNumber

Return the first epoch number when the RFC PR 0030 is enabled.

source

pub fn check_length_in_epoch_since(&self) -> EpochNumber

An alias for the method rfc_0030(&self) to let the code to be more readable.

source

pub fn is_check_length_in_epoch_since_enabled( &self, epoch_number: EpochNumber ) -> bool

If the RFC PR 0030 is enabled at the provided epoch.

source§

impl CKB2021

source

pub fn rfc_0031(&self) -> EpochNumber

Return the first epoch number when the RFC PR 0031 is enabled.

source

pub fn reuse_uncles_hash_as_extra_hash(&self) -> EpochNumber

An alias for the method rfc_0031(&self) to let the code to be more readable.

source

pub fn is_reuse_uncles_hash_as_extra_hash_enabled( &self, epoch_number: EpochNumber ) -> bool

If the RFC PR 0031 is enabled at the provided epoch.

source§

impl CKB2021

source

pub fn rfc_0032(&self) -> EpochNumber

Return the first epoch number when the RFC PR 0032 is enabled.

source

pub fn vm_version_1_and_syscalls_2(&self) -> EpochNumber

An alias for the method rfc_0032(&self) to let the code to be more readable.

source

pub fn is_vm_version_1_and_syscalls_2_enabled( &self, epoch_number: EpochNumber ) -> bool

If the RFC PR 0032 is enabled at the provided epoch.

source§

impl CKB2021

source

pub fn rfc_0036(&self) -> EpochNumber

Return the first epoch number when the RFC PR 0036 is enabled.

source

pub fn remove_header_deps_immature_rule(&self) -> EpochNumber

An alias for the method rfc_0036(&self) to let the code to be more readable.

source

pub fn is_remove_header_deps_immature_rule_enabled( &self, epoch_number: EpochNumber ) -> bool

If the RFC PR 0036 is enabled at the provided epoch.

source§

impl CKB2021

source

pub fn rfc_0038(&self) -> EpochNumber

Return the first epoch number when the RFC PR 0038 is enabled.

source

pub fn disallow_over_max_dep_expansion_limit(&self) -> EpochNumber

An alias for the method rfc_0038(&self) to let the code to be more readable.

source

pub fn is_disallow_over_max_dep_expansion_limit_enabled( &self, epoch_number: EpochNumber ) -> bool

If the RFC PR 0038 is enabled at the provided epoch.

Trait Implementations§

source§

impl Clone for CKB2021

source§

fn clone(&self) -> CKB2021

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for CKB2021

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V