From 08353cb090aea4ad1569c5962a1a92d6327cd2d1 Mon Sep 17 00:00:00 2001 From: Fabien Penso Date: Wed, 1 Nov 2023 13:30:10 +0100 Subject: [PATCH] cosmos-sdk-proto: change `Name` implementations to a macro (#447) --- cosmos-sdk-proto/src/type_names.rs | 864 +++++++++++++---------------- 1 file changed, 378 insertions(+), 486 deletions(-) diff --git a/cosmos-sdk-proto/src/type_names.rs b/cosmos-sdk-proto/src/type_names.rs index 834b1e3d..1fa24797 100644 --- a/cosmos-sdk-proto/src/type_names.rs +++ b/cosmos-sdk-proto/src/type_names.rs @@ -5,498 +5,390 @@ use crate::{cosmos, ibc, traits::Name}; -impl Name for ibc::core::client::v1::ClientUpdateProposal { - const NAME: &'static str = "ClientUpdateProposal"; - const PACKAGE: &'static str = "ibc.core.client.v1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::upgrade::v1beta1::SoftwareUpgradeProposal { - const NAME: &'static str = "SoftwareUpgradeProposal"; - const PACKAGE: &'static str = "cosmos.upgrade.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::params::v1beta1::ParameterChangeProposal { - const NAME: &'static str = "ParameterChangeProposal"; - const PACKAGE: &'static str = "cosmos.params.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::distribution::v1beta1::CommunityPoolSpendProposal { - const NAME: &'static str = "CommunityPoolSpendProposal"; - const PACKAGE: &'static str = "cosmos.distribution.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::gov::v1beta1::TextProposal { - const NAME: &'static str = "TextProposal"; - const PACKAGE: &'static str = "cosmos.gov.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::crypto::secp256k1::PubKey { - const NAME: &'static str = "PubKey"; - const PACKAGE: &'static str = "cosmos.crypto.secp256k1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::vesting::v1beta1::PeriodicVestingAccount { - const NAME: &'static str = "PeriodicVestingAccount"; - const PACKAGE: &'static str = "cosmos.vesting.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::bank::v1beta1::MsgSend { - const NAME: &'static str = "MsgSend"; - const PACKAGE: &'static str = "cosmos.bank.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::bank::v1beta1::MsgMultiSend { - const NAME: &'static str = "MsgMultiSend"; - const PACKAGE: &'static str = "cosmos.bank.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::distribution::v1beta1::MsgSetWithdrawAddress { - const NAME: &'static str = "MsgSetWithdrawAddress"; - const PACKAGE: &'static str = "cosmos.distribution.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::distribution::v1beta1::MsgWithdrawDelegatorReward { - const NAME: &'static str = "MsgWithdrawDelegatorReward"; - const PACKAGE: &'static str = "cosmos.distribution.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::distribution::v1beta1::MsgWithdrawValidatorCommission { - const NAME: &'static str = "MsgWithdrawValidatorCommission"; - const PACKAGE: &'static str = "cosmos.distribution.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::distribution::v1beta1::MsgFundCommunityPool { - const NAME: &'static str = "MsgFundCommunityPool"; - const PACKAGE: &'static str = "cosmos.distribution.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::feegrant::v1beta1::MsgGrantAllowance { - const NAME: &'static str = "MsgGrantAllowance"; - const PACKAGE: &'static str = "cosmos.feegrant.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::feegrant::v1beta1::MsgRevokeAllowance { - const NAME: &'static str = "MsgRevokeAllowance"; - const PACKAGE: &'static str = "cosmos.feegrant.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::feegrant::v1beta1::BasicAllowance { - const NAME: &'static str = "BasicAllowance"; - const PACKAGE: &'static str = "cosmos.feegrant.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::feegrant::v1beta1::PeriodicAllowance { - const NAME: &'static str = "PeriodicAllowance"; - const PACKAGE: &'static str = "cosmos.feegrant.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::feegrant::v1beta1::AllowedMsgAllowance { - const NAME: &'static str = "AllowedMsgAllowance"; - const PACKAGE: &'static str = "cosmos.feegrant.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::staking::v1beta1::MsgDelegate { - const NAME: &'static str = "MsgDelegate"; - const PACKAGE: &'static str = "cosmos.staking.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::staking::v1beta1::MsgUndelegate { - const NAME: &'static str = "MsgUndelegate"; - const PACKAGE: &'static str = "cosmos.staking.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::staking::v1beta1::MsgBeginRedelegate { - const NAME: &'static str = "MsgBeginRedelegate"; - const PACKAGE: &'static str = "cosmos.staking.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::base::abci::v1beta1::MsgData { - const NAME: &'static str = "MsgData"; - const PACKAGE: &'static str = "cosmos.base.v1beta1.abci"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::base::abci::v1beta1::TxMsgData { - const NAME: &'static str = "TxMsgData"; - const PACKAGE: &'static str = "cosmos.base.v1beta1.abci"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::auth::v1beta1::BaseAccount { - const NAME: &'static str = "BaseAccount"; - const PACKAGE: &'static str = "cosmos.auth.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::auth::v1beta1::ModuleAccount { - const NAME: &'static str = "ModuleAccount"; - const PACKAGE: &'static str = "cosmos.auth.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::tx::v1beta1::Tx { - const NAME: &'static str = "Tx"; - const PACKAGE: &'static str = "cosmos.tx.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::tx::v1beta1::AuthInfo { - const NAME: &'static str = "AuthInfo"; - const PACKAGE: &'static str = "cosmos.tx.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::tx::v1beta1::Fee { - const NAME: &'static str = "Fee"; - const PACKAGE: &'static str = "cosmos.tx.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::tx::v1beta1::TxBody { - const NAME: &'static str = "TxBody"; - const PACKAGE: &'static str = "cosmos.tx.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::tx::v1beta1::SignerInfo { - const NAME: &'static str = "SingerInfo"; - const PACKAGE: &'static str = "cosmos.tx.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for cosmos::tx::v1beta1::ModeInfo { - const NAME: &'static str = "ModeInfo"; - const PACKAGE: &'static str = "cosmos.tx.v1beta1"; - - fn full_name() -> String { - full_name::() - } -} - -impl Name for ibc::applications::transfer::v1::MsgTransfer { - const NAME: &'static str = "MsgTransfer"; - const PACKAGE: &'static str = "ibc.applications.transfer.v1"; - - fn full_name() -> String { - full_name::() - } -} +macro_rules! impl_name { + ($type:ty, $package:expr, $name:expr) => { + impl Name for $type { + const NAME: &'static str = $name; + const PACKAGE: &'static str = $package; + + fn full_name() -> String { + full_name::() + } + } + }; +} + +impl_name!( + ibc::core::client::v1::ClientUpdateProposal, + "ibc.core.client.v1", + "ClientUpdateProposal" +); +impl_name!( + ibc::core::client::v1::MsgUpdateClient, + "ibc.core.client.v1", + "MsgUpdateClient" +); + +impl_name!( + ibc::core::channel::v1::MsgChannelOpenConfirm, + "ibc.core.channel.v1", + "MsgChannelOpenConfirm" +); +impl_name!( + ibc::core::channel::v1::MsgAcknowledgement, + "ibc.core.channel.v1", + "MsgAcknowledgement" +); +impl_name!( + ibc::core::channel::v1::MsgChannelOpenAck, + "ibc.core.channel.v1", + "MsgChannelOpenAck" +); +impl_name!( + ibc::core::channel::v1::MsgTimeout, + "ibc.core.channel.v1", + "MsgTimeout" +); +impl_name!( + ibc::core::channel::v1::MsgRecvPacket, + "ibc.core.channel.v1", + "MsgRecvPacket" +); + +impl_name!( + ibc::applications::transfer::v1::MsgTransfer, + "ibc.applications.transfer.v1", + "MsgTransfer" +); + +impl_name!( + cosmos::upgrade::v1beta1::SoftwareUpgradeProposal, + "cosmos.upgrade.v1beta1", + "SoftwareUpgradeProposal" +); + +impl_name!( + cosmos::params::v1beta1::ParameterChangeProposal, + "cosmos.params.v1beta1", + "ParameterChangeProposal" +); + +impl_name!( + cosmos::gov::v1beta1::TextProposal, + "cosmos.gov.v1beta1", + "TextProposal" +); +impl_name!( + cosmos::gov::v1beta1::MsgSubmitProposal, + "cosmos.gov.v1beta1", + "MsgSubmitProposal" +); +impl_name!( + cosmos::gov::v1beta1::MsgDeposit, + "cosmos.gov.v1beta1", + "MsgDeposit" +); +impl_name!( + cosmos::gov::v1beta1::MsgVote, + "cosmos.gov.v1beta1", + "MsgVote" +); + +impl_name!( + cosmos::crypto::secp256k1::PubKey, + "cosmos.crypto.secp256k1", + "PubKey" +); + +impl_name!( + cosmos::distribution::v1beta1::MsgWithdrawDelegatorReward, + "cosmos.distribution.v1beta1", + "MsgWithdrawDelegatorReward" +); +impl_name!( + cosmos::distribution::v1beta1::MsgWithdrawValidatorCommission, + "cosmos.distribution.v1beta1", + "MsgWithdrawValidatorCommission" +); +impl_name!( + cosmos::distribution::v1beta1::MsgFundCommunityPool, + "cosmos.distribution.v1beta1", + "MsgFundCommunityPool" +); +impl_name!( + cosmos::distribution::v1beta1::CommunityPoolSpendProposal, + "cosmos.distribution.v1beta1", + "CommunityPoolSpendProposal" +); +impl_name!( + cosmos::distribution::v1beta1::MsgSetWithdrawAddress, + "cosmos.distribution.v1beta1", + "MsgSetWithdrawAddress" +); + +impl_name!( + cosmos::vesting::v1beta1::PeriodicVestingAccount, + "cosmos.vesting.v1beta1", + "PeriodicVestingAccount" +); + +impl_name!( + cosmos::bank::v1beta1::MsgSend, + "cosmos.bank.v1beta1", + "MsgSend" +); +impl_name!( + cosmos::bank::v1beta1::MsgMultiSend, + "cosmos.bank.v1beta1", + "MsgMultiSend" +); + +impl_name!( + cosmos::feegrant::v1beta1::MsgGrantAllowance, + "cosmos.feegrant.v1beta1", + "MsgGrantAllowance" +); +impl_name!( + cosmos::feegrant::v1beta1::MsgRevokeAllowance, + "cosmos.feegrant.v1beta1", + "MsgRevokeAllowance" +); +impl_name!( + cosmos::feegrant::v1beta1::BasicAllowance, + "cosmos.feegrant.v1beta1", + "BasicAllowance" +); +impl_name!( + cosmos::feegrant::v1beta1::PeriodicAllowance, + "cosmos.feegrant.v1beta1", + "PeriodicAllowance" +); +impl_name!( + cosmos::feegrant::v1beta1::AllowedMsgAllowance, + "cosmos.feegrant.v1beta1", + "AllowedMsgAllowance" +); + +impl_name!( + cosmos::staking::v1beta1::MsgEditValidatorResponse, + "cosmos.staking.v1beta1", + "MsgEditValidatorResponse" +); +impl_name!( + cosmos::staking::v1beta1::MsgCreateValidator, + "cosmos.staking.v1beta1", + "MsgCreateValidator" +); +impl_name!( + cosmos::staking::v1beta1::MsgEditValidator, + "cosmos.staking.v1beta1", + "MsgEditValidator" +); +impl_name!( + cosmos::staking::v1beta1::MsgDelegate, + "cosmos.staking.v1beta1", + "MsgDelegate" +); +impl_name!( + cosmos::staking::v1beta1::MsgUndelegate, + "cosmos.staking.v1beta1", + "MsgUndelegate" +); +impl_name!( + cosmos::staking::v1beta1::MsgBeginRedelegate, + "cosmos.staking.v1beta1", + "MsgBeginRedelegate" +); +impl_name!( + cosmos::staking::v1beta1::MsgCreateValidatorResponse, + "cosmos.staking.v1beta1", + "MsgCreateValidatorResponse" +); +impl_name!( + cosmos::staking::v1beta1::MsgDelegateResponse, + "cosmos.staking.v1beta1", + "MsgDelegateResponse" +); + +impl_name!( + cosmos::base::abci::v1beta1::MsgData, + "cosmos.base.v1beta1.abci", + "MsgData" +); +impl_name!( + cosmos::base::abci::v1beta1::TxMsgData, + "cosmos.base.v1beta1.abci", + "TxMsgData" +); + +impl_name!( + cosmos::auth::v1beta1::BaseAccount, + "cosmos.auth.v1beta1", + "BaseAccount" +); +impl_name!( + cosmos::auth::v1beta1::ModuleAccount, + "cosmos.auth.v1beta1", + "ModuleAccount" +); + +impl_name!( + cosmos::authz::v1beta1::MsgExec, + "cosmos.authz.v1beta1", + "MsgExec" +); + +impl_name!(cosmos::tx::v1beta1::Tx, "cosmos.tx.v1beta1", "Tx"); +impl_name!( + cosmos::tx::v1beta1::AuthInfo, + "cosmos.tx.v1beta1", + "AuthInfo" +); +impl_name!(cosmos::tx::v1beta1::Fee, "cosmos.tx.v1beta1", "Fee"); +impl_name!(cosmos::tx::v1beta1::TxBody, "cosmos.tx.v1beta1", "TxBody"); +impl_name!( + cosmos::tx::v1beta1::SignerInfo, + "cosmos.tx.v1beta1", + "SingerInfo" +); +impl_name!( + cosmos::tx::v1beta1::ModeInfo, + "cosmos.tx.v1beta1", + "ModeInfo" +); #[cfg(feature = "cosmwasm")] mod wasm { use super::full_name; use crate::{cosmwasm, traits::Name}; - const PACKAGE: &str = "cosmwasm.wasm.v1"; - - impl Name for cosmwasm::wasm::v1::MigrateContractProposal { - const NAME: &'static str = "MigrateContractProposal"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::UpdateInstantiateConfigProposal { - const NAME: &'static str = "UpdateInstantiateConfigProposal"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::SudoContractProposal { - const NAME: &'static str = "SudoContractProposal"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::ExecuteContractProposal { - const NAME: &'static str = "ExecuteContractProposal"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::UpdateAdminProposal { - const NAME: &'static str = "UpdateAdminProposal"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::ClearAdminProposal { - const NAME: &'static str = "ClearAdminProposal"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::PinCodesProposal { - const NAME: &'static str = "PinCodesProposal"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::UnpinCodesProposal { - const NAME: &'static str = "UnpinCodesProposal"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::InstantiateContractProposal { - const NAME: &'static str = "InstantiateContractProposal"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::StoreCodeProposal { - const NAME: &'static str = "StoreCodeProposal"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::MsgStoreCode { - const NAME: &'static str = "MsgStoreCode"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::MsgInstantiateContract { - const NAME: &'static str = "MsgInstantiateContract"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::MsgExecuteContract { - const NAME: &'static str = "MsgExecuteContract"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::MsgMigrateContract { - const NAME: &'static str = "MsgMigrateContract"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::MsgUpdateAdmin { - const NAME: &'static str = "MsgUpdateAdmin"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::MsgClearAdmin { - const NAME: &'static str = "MsgClearAdmin"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::MsgStoreCodeResponse { - const NAME: &'static str = "MsgStoreCodeResponse"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::MsgInstantiateContractResponse { - const NAME: &'static str = "MsgInstantiateContractResponse"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::MsgExecuteContractResponse { - const NAME: &'static str = "MsgExecuteContractResponse"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::MsgMigrateContractResponse { - const NAME: &'static str = "MsgMigrateContractResponse"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::MsgUpdateAdminResponse { - const NAME: &'static str = "MsgUpdateAdminResponse"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } - - impl Name for cosmwasm::wasm::v1::MsgClearAdminResponse { - const NAME: &'static str = "MsgClearAdminResponse"; - const PACKAGE: &'static str = PACKAGE; - - fn full_name() -> String { - full_name::() - } - } + const COSMWASM_PACKAGE: &str = "cosmwasm.wasm.v1"; + + impl_name!( + cosmwasm::wasm::v1::AccessConfigUpdate, + COSMWASM_PACKAGE, + "AccessConfigUpdate" + ); + impl_name!( + cosmwasm::wasm::v1::AccessConfig, + COSMWASM_PACKAGE, + "AccessConfig" + ); + impl_name!( + cosmwasm::wasm::v1::MigrateContractProposal, + COSMWASM_PACKAGE, + "MigrateContractProposal" + ); + impl_name!( + cosmwasm::wasm::v1::UpdateInstantiateConfigProposal, + COSMWASM_PACKAGE, + "UpdateInstantiateConfigProposal" + ); + impl_name!( + cosmwasm::wasm::v1::SudoContractProposal, + COSMWASM_PACKAGE, + "SudoContractProposal" + ); + impl_name!( + cosmwasm::wasm::v1::ExecuteContractProposal, + COSMWASM_PACKAGE, + "ExecuteContractProposal" + ); + impl_name!( + cosmwasm::wasm::v1::UpdateAdminProposal, + COSMWASM_PACKAGE, + "UpdateAdminProposal" + ); + impl_name!( + cosmwasm::wasm::v1::ClearAdminProposal, + COSMWASM_PACKAGE, + "ClearAdminProposal" + ); + impl_name!( + cosmwasm::wasm::v1::PinCodesProposal, + COSMWASM_PACKAGE, + "PinCodesProposal" + ); + impl_name!( + cosmwasm::wasm::v1::UnpinCodesProposal, + COSMWASM_PACKAGE, + "UnpinCodesProposal" + ); + impl_name!( + cosmwasm::wasm::v1::InstantiateContractProposal, + COSMWASM_PACKAGE, + "InstantiateContractProposal" + ); + impl_name!( + cosmwasm::wasm::v1::StoreCodeProposal, + COSMWASM_PACKAGE, + "StoreCodeProposal" + ); + impl_name!( + cosmwasm::wasm::v1::MsgStoreCode, + COSMWASM_PACKAGE, + "MsgStoreCode" + ); + impl_name!( + cosmwasm::wasm::v1::MsgInstantiateContract, + COSMWASM_PACKAGE, + "MsgInstantiateContract" + ); + impl_name!( + cosmwasm::wasm::v1::MsgInstantiateContract2, + COSMWASM_PACKAGE, + "MsgInstantiateContract2" + ); + impl_name!( + cosmwasm::wasm::v1::MsgExecuteContract, + COSMWASM_PACKAGE, + "MsgExecuteContract" + ); + impl_name!( + cosmwasm::wasm::v1::MsgMigrateContract, + COSMWASM_PACKAGE, + "MsgMigrateContract" + ); + impl_name!( + cosmwasm::wasm::v1::MsgUpdateAdmin, + COSMWASM_PACKAGE, + "MsgUpdateAdmin" + ); + impl_name!( + cosmwasm::wasm::v1::MsgClearAdmin, + COSMWASM_PACKAGE, + "MsgClearAdmin" + ); + impl_name!( + cosmwasm::wasm::v1::MsgStoreCodeResponse, + COSMWASM_PACKAGE, + "MsgStoreCodeResponse" + ); + impl_name!( + cosmwasm::wasm::v1::MsgInstantiateContractResponse, + COSMWASM_PACKAGE, + "MsgInstantiateContractResponse" + ); + impl_name!( + cosmwasm::wasm::v1::MsgExecuteContractResponse, + COSMWASM_PACKAGE, + "MsgExecuteContractResponse" + ); + impl_name!( + cosmwasm::wasm::v1::MsgMigrateContractResponse, + COSMWASM_PACKAGE, + "MsgMigrateContractResponse" + ); + impl_name!( + cosmwasm::wasm::v1::MsgUpdateAdminResponse, + COSMWASM_PACKAGE, + "MsgUpdateAdminResponse" + ); + impl_name!( + cosmwasm::wasm::v1::MsgClearAdminResponse, + COSMWASM_PACKAGE, + "MsgClearAdminResponse" + ); } // TODO(tarcieri): remove this when tokio-rs/prost#923 is released (v0.12.1?)