Struct cosmos_sdk_proto::ibc::lightclients::tendermint::v1::ClientState
source · 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: Stringtrust_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: boolThis flag, when set to true, will allow governance to recover a client which has expired
allow_update_after_misbehaviour: boolThis flag, when set to true, will allow governance to unfreeze a client whose chain has experienced a misbehaviour event
Trait Implementations
sourceimpl Clone for ClientState
impl Clone for ClientState
sourcefn clone(&self) -> ClientState
fn clone(&self) -> ClientState
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresourceimpl Debug for ClientState
impl Debug for ClientState
sourceimpl Default for ClientState
impl Default for ClientState
sourceimpl Message for ClientState
impl Message for ClientState
sourcefn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
sourcefn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>where
B: BufMut,
Self: Sized,
fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>where
B: BufMut,
Self: Sized,
sourcefn encode_to_vec(&self) -> Vec<u8, Global>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8, Global>where
Self: Sized,
sourcefn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>where
B: BufMut,
Self: Sized,
fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>where
B: BufMut,
Self: Sized,
sourcefn encode_length_delimited_to_vec(&self) -> Vec<u8, Global>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8, Global>where
Self: Sized,
sourcefn decode<B>(buf: B) -> Result<Self, DecodeError>where
B: Buf,
Self: Default,
fn decode<B>(buf: B) -> Result<Self, DecodeError>where
B: Buf,
Self: Default,
sourcefn 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,
sourcefn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>where
B: Buf,
Self: Sized,
fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>where
B: Buf,
Self: Sized,
self. Read moresourcefn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>where
B: Buf,
Self: Sized,
fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>where
B: Buf,
Self: Sized,
self. Read moresourceimpl PartialEq<ClientState> for ClientState
impl PartialEq<ClientState> for ClientState
sourcefn eq(&self, other: &ClientState) -> bool
fn eq(&self, other: &ClientState) -> bool
impl StructuralPartialEq for ClientState
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
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
sourcefn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request