Struct ibc_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: 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
allow_update_after_expiry is deprecated
allow_update_after_misbehaviour: bool
allow_update_after_misbehaviour is deprecated
Trait Implementations§
source§impl Clone for ClientState
impl Clone for ClientState
source§fn clone(&self) -> ClientState
fn clone(&self) -> ClientState
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for ClientState
impl Debug for ClientState
source§impl Default for ClientState
impl Default for ClientState
source§impl<'de> Deserialize<'de> for ClientState
impl<'de> Deserialize<'de> for ClientState
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 Message for ClientState
impl Message for ClientState
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn 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,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where Self: Sized,
source§fn 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,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where Self: Sized,
source§fn 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,
source§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,
source§fn 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 moresource§fn 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
.source§impl PartialEq for ClientState
impl PartialEq for ClientState
source§fn eq(&self, other: &ClientState) -> bool
fn eq(&self, other: &ClientState) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl Serialize for ClientState
impl Serialize for ClientState
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§
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request