Trait big_strats_pkg::grid::action_module::ActionInterface
source · pub trait ActionInterface {
type UserInfo: Serialize + JsonSchema;
// Required methods
fn on_init(&self, deps: Deps<'_>, config: &Config) -> StdResult<Vec<SubMsg>>;
fn on_grid_creation<SIC: SwapInterfaceCollector + Serialize>(
&self,
deps: DepsMut<'_>,
env: Env,
info: &MessageInfo,
config: &Config,
position: &UserPosition<SIC>
) -> StdResult<Vec<SubMsg>>;
fn on_before_swap_execution(
&self,
deps: DepsMut<'_>,
config: &Config,
position_id: u64
) -> StdResult<Vec<CosmosMsg>>;
fn on_after_swap_execution<SIC: SwapInterfaceCollector>(
&self,
deps: DepsMut<'_>,
config: &Config,
position: &UserPosition<SIC>
) -> StdResult<Vec<SubMsg>>;
fn on_remove_grid<SIC: SwapInterfaceCollector>(
&self,
deps: DepsMut<'_>,
config: &Config,
position: &UserPosition<SIC>
) -> StdResult<Vec<SubMsg>>;
fn on_reply<SIC: SwapInterfaceCollector + Serialize>(
&self,
deps: DepsMut<'_>,
env: Env,
config: &Config,
reply: Reply
) -> StdResult<Vec<SubMsg>>;
fn on_query_check(
&self,
deps: Deps<'_>,
config: &Config,
position_id: u64
) -> StdResult<()>;
fn execute_feature<SIC: SwapInterfaceCollector + Serialize + Clone + DeserializeOwned>(
&self,
deps: DepsMut<'_>,
env: Env,
info: &MessageInfo,
config: &Config,
feature: Binary
) -> StdResult<Vec<SubMsg>>;
fn user_info(
&self,
deps: Deps<'_>,
user: String,
config: &Config
) -> StdResult<Self::UserInfo>;
}Required Associated Types§
type UserInfo: Serialize + JsonSchema
Required Methods§
fn on_init(&self, deps: Deps<'_>, config: &Config) -> StdResult<Vec<SubMsg>>
fn on_grid_creation<SIC: SwapInterfaceCollector + Serialize>( &self, deps: DepsMut<'_>, env: Env, info: &MessageInfo, config: &Config, position: &UserPosition<SIC> ) -> StdResult<Vec<SubMsg>>
fn on_before_swap_execution( &self, deps: DepsMut<'_>, config: &Config, position_id: u64 ) -> StdResult<Vec<CosmosMsg>>
fn on_after_swap_execution<SIC: SwapInterfaceCollector>( &self, deps: DepsMut<'_>, config: &Config, position: &UserPosition<SIC> ) -> StdResult<Vec<SubMsg>>
fn on_remove_grid<SIC: SwapInterfaceCollector>( &self, deps: DepsMut<'_>, config: &Config, position: &UserPosition<SIC> ) -> StdResult<Vec<SubMsg>>
fn on_reply<SIC: SwapInterfaceCollector + Serialize>( &self, deps: DepsMut<'_>, env: Env, config: &Config, reply: Reply ) -> StdResult<Vec<SubMsg>>
fn on_query_check( &self, deps: Deps<'_>, config: &Config, position_id: u64 ) -> StdResult<()>
fn execute_feature<SIC: SwapInterfaceCollector + Serialize + Clone + DeserializeOwned>( &self, deps: DepsMut<'_>, env: Env, info: &MessageInfo, config: &Config, feature: Binary ) -> StdResult<Vec<SubMsg>>
fn user_info( &self, deps: Deps<'_>, user: String, config: &Config ) -> StdResult<Self::UserInfo>
Object Safety§
This trait is not object safe.