juno_std/types/tendermint/
version.rs

1use juno_std_derive::CosmwasmExt;
2/// App includes the protocol and software version for the application.
3/// This information is included in ResponseInfo. The App.Protocol can be
4/// updated in ResponseEndBlock.
5#[allow(clippy::derive_partial_eq_without_eq)]
6#[derive(
7	Clone,
8	PartialEq,
9	Eq,
10	::prost::Message,
11	::serde::Serialize,
12	::serde::Deserialize,
13	::schemars::JsonSchema,
14	CosmwasmExt,
15)]
16#[proto_message(type_url = "/tendermint.version.App")]
17pub struct App {
18	#[prost(uint64, tag = "1")]
19	#[serde(
20		serialize_with = "crate::serde::as_str::serialize",
21		deserialize_with = "crate::serde::as_str::deserialize"
22	)]
23	pub protocol: u64,
24	#[prost(string, tag = "2")]
25	pub software: ::prost::alloc::string::String,
26}
27/// Consensus captures the consensus rules for processing a block in the blockchain,
28/// including all blockchain data structures and the rules of the application's
29/// state transition machine.
30#[allow(clippy::derive_partial_eq_without_eq)]
31#[derive(
32	Clone,
33	PartialEq,
34	Eq,
35	::prost::Message,
36	::serde::Serialize,
37	::serde::Deserialize,
38	::schemars::JsonSchema,
39	CosmwasmExt,
40)]
41#[proto_message(type_url = "/tendermint.version.Consensus")]
42pub struct Consensus {
43	#[prost(uint64, tag = "1")]
44	#[serde(
45		serialize_with = "crate::serde::as_str::serialize",
46		deserialize_with = "crate::serde::as_str::deserialize"
47	)]
48	pub block: u64,
49	#[prost(uint64, tag = "2")]
50	#[serde(
51		serialize_with = "crate::serde::as_str::serialize",
52		deserialize_with = "crate::serde::as_str::deserialize"
53	)]
54	pub app: u64,
55}