pub struct ConsensusValidator {
pub provider_cons_addr: Vec<u8>,
pub power: i64,
pub public_key: Option<PublicKey>,
pub join_height: i64,
}
Expand description
ConsensusValidator is used to express a validator that should be validating on a chain. It contains relevant info for a validator that is expected to validate on either the provider or a consumer chain.
Fields§
§provider_cons_addr: Vec<u8>
validator’s consensus address on the provider chain
power: i64
voting power the validator has during this epoch
public_key: Option<PublicKey>
public key the validator uses on the consumer chain during this epoch
join_height: i64
height the validator had when it FIRST became a consumer validator
If a validator becomes a consumer validator at height H
and is continuously a consumer validator for all the upcoming
epochs, then the height of the validator SHOULD remain H
. This height only resets to a different height if a validator
stops being a consumer validator during an epoch and later becomes again a consumer validator.
Trait Implementations§
Source§impl Clone for ConsensusValidator
impl Clone for ConsensusValidator
Source§fn clone(&self) -> ConsensusValidator
fn clone(&self) -> ConsensusValidator
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for ConsensusValidator
impl Debug for ConsensusValidator
Source§impl Default for ConsensusValidator
impl Default for ConsensusValidator
Source§impl Message for ConsensusValidator
impl Message for ConsensusValidator
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
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(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
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(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.Source§impl Name for ConsensusValidator
impl Name for ConsensusValidator
Source§const NAME: &'static str = "ConsensusValidator"
const NAME: &'static str = "ConsensusValidator"
Message
.
This name is the same as it appears in the source .proto file, e.g. FooBar
.Source§const PACKAGE: &'static str = "interchain_security.ccv.provider.v1"
const PACKAGE: &'static str = "interchain_security.ccv.provider.v1"
.
, e.g. google.protobuf
.Source§fn full_name() -> String
fn full_name() -> String
Message
.
It’s prefixed with the package name and names of any parent messages,
e.g. google.rpc.BadRequest.FieldViolation
.
By default, this is the package name followed by the message name.
Fully-qualified names must be unique within a domain of Type URLs.Source§impl PartialEq for ConsensusValidator
impl PartialEq for ConsensusValidator
impl StructuralPartialEq for ConsensusValidator
Auto Trait Implementations§
impl Freeze for ConsensusValidator
impl RefUnwindSafe for ConsensusValidator
impl Send for ConsensusValidator
impl Sync for ConsensusValidator
impl Unpin for ConsensusValidator
impl UnwindSafe for ConsensusValidator
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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