Struct ibc_proto::ibc::lightclients::tendermint::v1::ClientState [−][src]
pub struct ClientState {
pub chain_id: String,
pub trust_level: Option<Fraction>,
pub trusting_period: Option<Duration>,
pub unbonding_period: Option<Duration>,
pub max_clock_drift: Option<Duration>,
pub frozen_height: Option<Height>,
pub latest_height: Option<Height>,
pub proof_specs: Vec<ProofSpec>,
pub upgrade_path: Vec<String>,
pub allow_update_after_expiry: bool,
pub allow_update_after_misbehaviour: bool,
}
Expand description
ClientState from Tendermint tracks the current validator set, latest height, and a possible frozen height.
Fields
chain_id: String
trust_level: Option<Fraction>
trusting_period: Option<Duration>
duration of the period since the LastestTimestamp during which the submitted headers are valid for upgrade
unbonding_period: Option<Duration>
duration of the staking unbonding period
max_clock_drift: Option<Duration>
defines how much new (untrusted) header’s Time can drift into the future.
frozen_height: Option<Height>
Block height when the client was frozen due to a misbehaviour
latest_height: Option<Height>
Latest height the client was updated to
proof_specs: Vec<ProofSpec>
Proof specifications used in verifying counterparty state
upgrade_path: Vec<String>
Path at which next upgraded client will be committed.
Each element corresponds to the key for a single CommitmentProof in the
chained proof. NOTE: ClientState must stored under
{upgradePath}/{upgradeHeight}/clientState
ConsensusState must be stored
under {upgradepath}/{upgradeHeight}/consensusState
For SDK chains using
the default upgrade module, upgrade_path should be []string{“upgrade”,
“upgradedIBCState”}`
allow_update_after_expiry: bool
This flag, when set to true, will allow governance to recover a client which has expired
allow_update_after_misbehaviour: bool
This flag, when set to true, will allow governance to unfreeze a client whose chain has experienced a misbehaviour event
Trait Implementations
Returns the encoded length of the message without a length delimiter.
Encodes the message to a buffer. Read more
Encodes the message to a newly allocated buffer.
Encodes the message with a length-delimiter to a buffer. Read more
Encodes the message with a length-delimiter to a newly allocated buffer.
Decodes an instance of the message from a buffer. Read more
fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError> where
B: Buf,
Self: Default,
fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError> where
B: Buf,
Self: Default,
Decodes a length-delimited instance of the message from the buffer.
Decodes an instance of the message from a buffer, and merges it into self
. Read more
Decodes a length-delimited instance of the message from buffer, and
merges it into self
. Read more
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Auto Trait Implementations
impl RefUnwindSafe for ClientState
impl Send for ClientState
impl Sync for ClientState
impl Unpin for ClientState
impl UnwindSafe for ClientState
Blanket Implementations
Mutably borrows from an owned value. Read more
Wrap the input message T
in a tonic::Request
pub fn vzip(self) -> V
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more