Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add full Cosmos Type #103

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
140 changes: 126 additions & 14 deletions src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -49,69 +49,176 @@ pub mod cosmos {
}
}
}
pub mod evidence {
pub mod v1beta1 {
include_proto!("cosmos.evidence.v1beta1.rs");
}
}
pub mod staking {

/// Granting of arbitrary privileges from one account to another.
pub mod authz {
pub mod v1beta1 {
include_proto!("cosmos.staking.v1beta1.rs");
include_proto!("cosmos.authz.v1beta1.rs");
}
}

/// Balances.
pub mod bank {
pub mod v1beta1 {
include_proto!("cosmos.bank.v1beta1.rs");
}
}

/// Base functionality.
pub mod base {
/// Application BlockChain Interface (ABCI).
///
/// Interface that defines the boundary between the replication engine
/// (the blockchain), and the state machine (the application).
pub mod abci {
pub mod v1beta1 {
include_proto!("cosmos.base.abci.v1beta1.rs");
}
}

/// Key-value pairs.
pub mod kv {
pub mod v1beta1 {
include_proto!("cosmos.base.kv.v1beta1.rs");
}
}
pub mod node {
pub mod v1beta1 {
include_proto!("cosmos.base.node.v1beta1.rs");
}
}

/// Query support.
pub mod query {
pub mod v1beta1 {
include_proto!("cosmos.base.query.v1beta1.rs");
}
}

/// Reflection support.
pub mod reflection {
pub mod v1beta1 {
include_proto!("cosmos.base.reflection.v1beta1.rs");
}

pub mod v2alpha1 {
include_proto!("cosmos.base.reflection.v2alpha1.rs");
}
}

/// Snapshots containing Tendermint state sync info.
pub mod snapshots {
pub mod v1beta1 {
include_proto!("cosmos.base.snapshots.v1beta1.rs");
}
}

/// Data structure that holds the state of the application.
pub mod store {
pub mod v1beta1 {
include_proto!("cosmos.base.store.v1beta1.rs");
}
}

pub mod v1beta1 {
include_proto!("cosmos.base.v1beta1.rs");
}

pub mod tendermint {
pub mod v1beta1 {
include_proto!("cosmos.base.tendermint.v1beta1.rs");
}
}
}

/// Crisis handling
pub mod crisis {
pub mod v1beta1 {
include_proto!("cosmos.crisis.v1beta1.rs");
}
}

/// Cryptographic primitives.
pub mod crypto {
/// Multi-signature support.
pub mod multisig {
include_proto!("cosmos.crypto.multisig.rs");
pub mod v1beta1 {
include_proto!("cosmos.crypto.multisig.v1beta1.rs");
}
}
pub mod ed25519 {
include_proto!("cosmos.crypto.ed25519.rs");
}
pub mod secp256k1 {
include_proto!("cosmos.crypto.secp256k1.rs");
}
pub mod secp256r1 {
include_proto!("cosmos.crypto.secp256r1.rs");
}
}

/// Messages and services handling token distribution
pub mod distribution {
pub mod v1beta1 {
include_proto!("cosmos.distribution.v1beta1.rs");
}
}

/// Messages and services handling evidence
pub mod evidence {
pub mod v1beta1 {
include_proto!("cosmos.evidence.v1beta1.rs");
}
}

/// Allows accounts to grant fee allowances and to use fees from their accounts.
pub mod feegrant {
pub mod v1beta1 {
include_proto!("cosmos.feegrant.v1beta1.rs");
}
}

/// Messages and services handling gentx's
pub mod genutil {
pub mod v1beta1 {
include_proto!("cosmos.genutil.v1beta1.rs");
}
}

/// Messages and services handling governance
pub mod gov {
pub mod v1beta1 {
include_proto!("cosmos.gov.v1beta1.rs");
}
}

/// Messages and services handling minting
pub mod mint {
pub mod v1beta1 {
include_proto!("cosmos.mint.v1beta1.rs");
}
}

/// Messages and services handling chain parameters
pub mod params {
pub mod v1beta1 {
include_proto!("cosmos.params.v1beta1.rs");
}
}

/// Handling slashing parameters and unjailing
pub mod slashing {
pub mod v1beta1 {
include_proto!("cosmos.slashing.v1beta1.rs");
}
}

/// Proof-of-Stake layer for public blockchains.
pub mod staking {
pub mod v1beta1 {
include_proto!("cosmos.staking.v1beta1.rs");
}
}

/// Transactions.
pub mod tx {
/// Transaction signing support.
pub mod signing {
pub mod v1beta1 {
include_proto!("cosmos.tx.signing.v1beta1.rs");
Expand All @@ -121,16 +228,21 @@ pub mod cosmos {
include_proto!("cosmos.tx.v1beta1.rs");
}
}

/// Services for the upgrade module.
pub mod upgrade {
pub mod v1beta1 {
include_proto!("cosmos.upgrade.v1beta1.rs");
}
}
pub mod gov {

/// Services and tx's for the vesting module.
pub mod vesting {
pub mod v1beta1 {
include_proto!("cosmos.gov.v1beta1.rs");
include_proto!("cosmos.vesting.v1beta1.rs");
}
}

pub mod ics23 {
pub use ics23 as v1;
}
Expand Down
4 changes: 4 additions & 0 deletions src/prost/cosmos.app.module.v1alpha1.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
/// Module is the module config object for the cosmos.app v1 app module.
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Module {}
Loading