Struct cw_iper_test::IperIbcModule
source · pub struct IperIbcModule { /* private fields */ }
Expand description
The IperIbcModule
is the default struct used in an IperApp
as an IBC module
and contains all IbcApplication
.
This structure implements the Module
and Ibc
traits
from cw-multi-test
.
When an IbcMsg
needs to be handled, if the src channel-id
matches a port
of a saved IbcApplication
within the
IperIbcModule
, the IbcApplication::handle_outgoing_packet
function is called.
IbcApplication
instances must be added to the IperIbcModule
during the creation of the App
via the AppBuilder
. This is achieved using the AppBuilderIperExt::with_ibc_app
function.
It is essential that the IBC module
in the AppBuilder
is set to IperIbcModule
for this integration
to function correctly.
Trait Implementations§
source§impl Default for IperIbcModule
impl Default for IperIbcModule
source§fn default() -> IperIbcModule
fn default() -> IperIbcModule
Returns the “default value” for a type. Read more
source§impl Module for IperIbcModule
impl Module for IperIbcModule
source§fn execute<ExecC, QueryC>(
&self,
api: &dyn Api,
storage: &mut dyn Storage,
router: &dyn CosmosRouter<ExecC = ExecC, QueryC = QueryC>,
block: &BlockInfo,
sender: Addr,
msg: Self::ExecT
) -> Result<AppResponse, Error>where
ExecC: CustomMsg + DeserializeOwned + 'static,
QueryC: CustomQuery + DeserializeOwned + 'static,
fn execute<ExecC, QueryC>(
&self,
api: &dyn Api,
storage: &mut dyn Storage,
router: &dyn CosmosRouter<ExecC = ExecC, QueryC = QueryC>,
block: &BlockInfo,
sender: Addr,
msg: Self::ExecT
) -> Result<AppResponse, Error>where
ExecC: CustomMsg + DeserializeOwned + 'static,
QueryC: CustomQuery + DeserializeOwned + 'static,
Runs any ExecT message,
which can be called by any external actor or smart contract.
source§fn query(
&self,
_api: &dyn Api,
_storage: &dyn Storage,
_querier: &dyn Querier,
_block: &BlockInfo,
_request: Self::QueryT
) -> Result<Binary, Error>
fn query( &self, _api: &dyn Api, _storage: &dyn Storage, _querier: &dyn Querier, _block: &BlockInfo, _request: Self::QueryT ) -> Result<Binary, Error>
Runs any QueryT message,
which can be called by any external actor or smart contract.
source§fn sudo<ExecC, QueryC>(
&self,
_api: &dyn Api,
_storage: &mut dyn Storage,
_router: &dyn CosmosRouter<ExecC = ExecC, QueryC = QueryC>,
_block: &BlockInfo,
_msg: Self::SudoT
) -> Result<AppResponse, Error>where
ExecC: CustomMsg + DeserializeOwned + 'static,
QueryC: CustomQuery + DeserializeOwned + 'static,
fn sudo<ExecC, QueryC>(
&self,
_api: &dyn Api,
_storage: &mut dyn Storage,
_router: &dyn CosmosRouter<ExecC = ExecC, QueryC = QueryC>,
_block: &BlockInfo,
_msg: Self::SudoT
) -> Result<AppResponse, Error>where
ExecC: CustomMsg + DeserializeOwned + 'static,
QueryC: CustomQuery + DeserializeOwned + 'static,
Runs privileged actions, like minting tokens, or governance proposals.
This allows modules to have full access to these privileged actions,
that cannot be triggered by smart contracts. Read more
impl Ibc for IperIbcModule
Auto Trait Implementations§
impl Freeze for IperIbcModule
impl !RefUnwindSafe for IperIbcModule
impl !Send for IperIbcModule
impl !Sync for IperIbcModule
impl Unpin for IperIbcModule
impl !UnwindSafe for IperIbcModule
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
Mutably borrows from an owned value. Read more
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> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§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>
Wrap the input message
T
in a tonic::Request