Struct tendermint::vote::Vote
source · pub struct Vote {
pub vote_type: Type,
pub height: Height,
pub round: Round,
pub block_id: Option<Id>,
pub timestamp: Option<Time>,
pub validator_address: Id,
pub validator_index: ValidatorIndex,
pub signature: Option<Signature>,
}
Expand description
Votes are signed messages from validators for a particular block which include information about the validator signing it.
Fields§
§vote_type: Type
Type of vote (prevote or precommit)
height: Height
Block height
round: Round
Round
block_id: Option<Id>
Block ID
timestamp: Option<Time>
Timestamp
validator_address: Id
Validator address
validator_index: ValidatorIndex
Validator index
signature: Option<Signature>
Signature
Implementations§
source§impl Vote
impl Vote
sourcepub fn is_prevote(&self) -> bool
pub fn is_prevote(&self) -> bool
Is this vote a prevote?
sourcepub fn is_precommit(&self) -> bool
pub fn is_precommit(&self) -> bool
Is this vote a precommit?
sourcepub fn header_hash(&self) -> Option<Hash>
pub fn header_hash(&self) -> Option<Hash>
Returns block_id.hash
sourcepub fn to_signable_bytes<B>(
&self,
chain_id: ChainId,
sign_bytes: &mut B
) -> Result<bool, ProtobufError>where
B: BufMut,
pub fn to_signable_bytes<B>(
&self,
chain_id: ChainId,
sign_bytes: &mut B
) -> Result<bool, ProtobufError>where
B: BufMut,
Create signable bytes from Vote.
sourcepub fn to_signable_vec(
&self,
chain_id: ChainId
) -> Result<Vec<u8>, ProtobufError>
pub fn to_signable_vec(
&self,
chain_id: ChainId
) -> Result<Vec<u8>, ProtobufError>
Create signable vector from Vote.
sourcepub fn consensus_state(&self) -> State
👎Deprecated since 0.17.0: This seems unnecessary, please raise it to the team, if you need it.
pub fn consensus_state(&self) -> State
Consensus state from this vote - This doesn’t seem to be used anywhere.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Vote
impl<'de> Deserialize<'de> for Vote
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>,
Deserialize this value from the given Serde deserializer. Read more
source§impl Protobuf<Vote> for Vote
impl Protobuf<Vote> for Vote
source§fn encode<B>(&self, buf: &mut B) -> Result<(), Error>where
B: BufMut,
fn encode<B>(&self, buf: &mut B) -> Result<(), Error>where
B: BufMut,
Encode into a buffer in Protobuf format. Read more
source§fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), Error>where
B: BufMut,
fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), Error>where
B: BufMut,
Encode with a length-delimiter to a buffer in Protobuf format. Read more
source§fn decode<B>(buf: B) -> Result<Self, Error>where
B: Buf,
fn decode<B>(buf: B) -> Result<Self, Error>where
B: Buf,
Constructor that attempts to decode an instance from a buffer. Read more
source§fn decode_length_delimited<B>(buf: B) -> Result<Self, Error>where
B: Buf,
fn decode_length_delimited<B>(buf: B) -> Result<Self, Error>where
B: Buf,
Constructor that attempts to decode a length-delimited instance from
the buffer. Read more
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter. Read more
source§fn encode_vec(&self) -> Result<Vec<u8, Global>, Error>
fn encode_vec(&self) -> Result<Vec<u8, Global>, Error>
Encodes into a Protobuf-encoded
Vec<u8>
.source§fn decode_vec(v: &[u8]) -> Result<Self, Error>
fn decode_vec(v: &[u8]) -> Result<Self, Error>
Constructor that attempts to decode a Protobuf-encoded instance from a
Vec<u8>
(or equivalent). Read more