Struct ckb_jsonrpc_types::ProposalWindow [−][src]
pub struct ProposalWindow { pub closest: BlockNumber, pub farthest: BlockNumber, }
Expand description
Two protocol parameters closest
and farthest
define the closest
and farthest on-chain distance between a transaction’s proposal
and commitment.
A non-cellbase transaction is committed at height h_c if all of the following conditions are met:
- it is proposed at height h_p of the same chain, where w_close <= h_c − h_p <= w_far ;
- it is in the commitment zone of the main chain block with height h_c ;
ProposalWindow { closest: 2, farthest: 10 }
propose
\
\
13 14 [15 16 17 18 19 20 21 22 23]
\_______________________/
\
commit
Fields
closest: BlockNumber
The closest distance between the proposal and the commitment.
farthest: BlockNumber
The farthest distance between the proposal and the commitment.
Trait Implementations
impl Clone for ProposalWindow
[src]
impl Clone for ProposalWindow
[src]fn clone(&self) -> ProposalWindow
[src]
fn clone(&self) -> ProposalWindow
[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 Debug for ProposalWindow
[src]
impl Debug for ProposalWindow
[src]impl<'de> Deserialize<'de> for ProposalWindow
[src]
impl<'de> Deserialize<'de> for ProposalWindow
[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 PartialEq<ProposalWindow> for ProposalWindow
[src]
impl PartialEq<ProposalWindow> for ProposalWindow
[src]fn eq(&self, other: &ProposalWindow) -> bool
[src]
fn eq(&self, other: &ProposalWindow) -> bool
[src]This method tests for self
and other
values to be equal, and is used
by ==
. Read more
fn ne(&self, other: &ProposalWindow) -> bool
[src]
fn ne(&self, other: &ProposalWindow) -> bool
[src]This method tests for !=
.
impl Serialize for ProposalWindow
[src]
impl Serialize for ProposalWindow
[src]impl Eq for ProposalWindow
[src]
impl StructuralEq for ProposalWindow
[src]
impl StructuralPartialEq for ProposalWindow
[src]
Auto Trait Implementations
impl RefUnwindSafe for ProposalWindow
impl Send for ProposalWindow
impl Sync for ProposalWindow
impl Unpin for ProposalWindow
impl UnwindSafe for ProposalWindow
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> 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<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
pub fn vzip(self) -> V
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,