Struct cosmwasm_std::SubMsg [−][src]
pub struct SubMsg<T = Empty> where
T: Clone + Debug + PartialEq + JsonSchema, {
pub id: u64,
pub msg: CosmosMsg<T>,
pub gas_limit: Option<u64>,
pub reply_on: ReplyOn,
}
Expand description
A submessage that will guarantee a reply
call on success or error, depending on
the reply_on
setting. If you do not need to process the result, use regular messages instead.
Note: On error the submessage execution will revert any partial state changes due to this message,
but not revert any state changes in the calling contract. If this is required, it must be done
manually in the reply
entry point.
Fields
id: u64
An arbitrary ID chosen by the contract.
This is typically used to match Reply
s in the reply
entry point to the submessage.
msg: CosmosMsg<T>
gas_limit: Option<u64>
reply_on: ReplyOn
Implementations
new creates a “fire and forget” message with the pre-0.14 semantics
create a SubMsg
that will provide a reply
with the given id if the message returns Ok
create a SubMsg
that will provide a reply
with the given id if the message returns Err
create a SubMsg
that will always provide a reply
with the given id
Add a gas limit to the message.
Examples
let sub_msg: SubMsg = SubMsg::reply_always(msg, 1234).with_gas_limit(60_000);
assert_eq!(sub_msg.id, 1234);
assert_eq!(sub_msg.gas_limit, Some(60_000));
assert_eq!(sub_msg.reply_on, ReplyOn::Always);
Trait Implementations
impl<'de, T> Deserialize<'de> for SubMsg<T> where
T: Clone + Debug + PartialEq + JsonSchema,
T: Deserialize<'de>,
impl<'de, T> Deserialize<'de> for SubMsg<T> where
T: Clone + Debug + PartialEq + JsonSchema,
T: Deserialize<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations
impl<T> RefUnwindSafe for SubMsg<T> where
T: RefUnwindSafe,
impl<T> UnwindSafe for SubMsg<T> where
T: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more