ve3_shared/extensions/
env_ext.rs1use cosmwasm_std::{to_json_binary, CosmosMsg, Env, StdResult, WasmMsg};
2use serde::Serialize;
3
4pub trait EnvExt {
5 fn callback_msg<T>(&self, msg: T) -> StdResult<CosmosMsg>
6 where
7 T: Serialize;
8}
9
10impl EnvExt for Env {
11 fn callback_msg<T>(&self, msg: T) -> StdResult<CosmosMsg>
12 where
13 T: Serialize,
14 {
15 Ok(CosmosMsg::Wasm(WasmMsg::Execute {
16 contract_addr: self.contract.address.to_string(),
17 msg: to_json_binary(&msg)?,
18 funds: vec![],
19 }))
20 }
21}