Documentation ¶
Index ¶
- Variables
- func AllCapabilities() []string
- func CustomMessageDecorator(moduleMessengers []ModuleMessenger, accountedpool *accountedpoolkeeper.Keeper, ...) func(wasmkeeper.Messenger) wasmkeeper.Messenger
- func CustomQuerier(qp *QueryPlugin) func(ctx sdk.Context, request json.RawMessage) ([]byte, error)
- type CustomMessenger
- type ElysMsg
- type ElysQuery
- type ModuleMessenger
- type ModuleQuerier
- type QueryPlugin
- type RequestResponse
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrCannotHandleMsg = errors.New("cannot handle message")
ErrCannotHandleMsg is returned by a ModuleMsgHandler when it cannot handle a message.
View Source
var ErrCannotHandleQuery = errors.New("cannot handle query")
ErrCannotHandleQuery is returned by a ModuleQuerier when it cannot handle a query.
Functions ¶
func AllCapabilities ¶
func AllCapabilities() []string
AllCapabilities returns all capabilities available with the current wasmvm See https://github.com/CosmWasm/cosmwasm/blob/main/docs/CAPABILITIES-BUILT-IN.md This functionality is going to be moved upstream: https://github.com/CosmWasm/wasmvm/issues/425
func CustomMessageDecorator ¶
func CustomMessageDecorator( moduleMessengers []ModuleMessenger, accountedpool *accountedpoolkeeper.Keeper, amm *ammkeeper.Keeper, assetprofile *assetprofilekeeper.Keeper, auth *authkeeper.AccountKeeper, bank *bankkeeper.BaseKeeper, burner *burnerkeeper.Keeper, clock *clockkeeper.Keeper, commitment *commitmentkeeper.Keeper, epochs *epochskeeper.Keeper, incentive *incentivekeeper.Keeper, leveragelp *leveragelpkeeper.Keeper, margin *marginkeeper.Keeper, oracle *oraclekeeper.Keeper, parameter *parameterkeeper.Keeper, stablestake *stablestakekeeper.Keeper, staking *stakingkeeper.Keeper, tokenomics *tokenomicskeeper.Keeper, transferhook *transferhookkeeper.Keeper, ) func(wasmkeeper.Messenger) wasmkeeper.Messenger
func CustomQuerier ¶
func CustomQuerier(qp *QueryPlugin) func(ctx sdk.Context, request json.RawMessage) ([]byte, error)
Types ¶
type CustomMessenger ¶
type CustomMessenger struct {
// contains filtered or unexported fields
}
func (*CustomMessenger) DispatchMsg ¶
func (m *CustomMessenger) DispatchMsg(ctx sdk.Context, contractAddr sdk.AccAddress, contractIBCPortID string, msg wasmvmtypes.CosmosMsg) ([]sdk.Event, [][]byte, error)
type ElysMsg ¶
type ElysMsg struct { // amm messages AmmCreatePool *ammtypes.MsgCreatePool `json:"amm_create_pool,omitempty"` AmmJoinPool *ammtypes.MsgJoinPool `json:"amm_join_pool,omitempty"` AmmExitPool *ammtypes.MsgExitPool `json:"amm_exit_pool,omitempty"` AmmSwapExactAmountIn *ammtypes.MsgSwapExactAmountIn `json:"amm_swap_exact_amount_in,omitempty"` AmmSwapExactAmountOut *ammtypes.MsgSwapExactAmountOut `json:"amm_swap_exact_amount_out,omitempty"` AmmSwapByDenom *ammtypes.MsgSwapByDenom `json:"amm_swap_by_denom,omitempty"` // commitment messages CommitmentCommitLiquidTokens *commitmenttypes.MsgCommitLiquidTokens `json:"commitment_commit_liquid_tokens,omitempty"` CommitmentCommitUnclaimedRewards *commitmenttypes.MsgCommitClaimedRewards `json:"commitment_commit_unclaimed_rewards,omitempty"` CommitmentUncommitTokens *commitmenttypes.MsgUncommitTokens `json:"commitment_uncommit_tokens,omitempty"` CommitmentVest *commitmenttypes.MsgVest `json:"commitment_vest"` CommitmentVestNow *commitmenttypes.MsgVestNow `json:"commitment_vest_now"` CommitmentVestLiquid *commitmenttypes.MsgVestLiquid `json:"commitment_vest_liquid"` CommitmentCancelVest *commitmenttypes.MsgCancelVest `json:"commitment_cancel_vest"` CommitmentUpdateVestingInfo *commitmenttypes.MsgUpdateVestingInfo `json:"commitment_update_vesting_info"` CommitmentStake *commitmenttypes.MsgStake `json:"commitment_stake,omitempty"` CommitmentUnstake *commitmenttypes.MsgUnstake `json:"commitment_unstake,omitempty"` // incentive messages IncentiveBeginRedelegate *incentivetypes.MsgBeginRedelegate `json:"incentive_begin_redelegate,omitempty"` IncentiveCancelUnbondingDelegation *incentivetypes.MsgCancelUnbondingDelegation `json:"incentive_cancel_unbonding_delegation"` IncentiveWithdrawRewards *incentivetypes.MsgWithdrawRewards `json:"incentive_withdraw_rewards"` IncentiveWithdrawValidatorCommission *incentivetypes.MsgWithdrawValidatorCommission `json:"incentive_withdraw_validator_commission"` // leveragelp messages LeveragelpOpen *leveragelptypes.MsgOpen `json:"leveragelp_open,omitempty"` LeveragelpClose *leveragelptypes.MsgClose `json:"leveragelp_close,omitempty"` // margin messages MarginOpen *margintypes.MsgOpen `json:"margin_open,omitempty"` MarginClose *margintypes.MsgClose `json:"margin_close,omitempty"` // stablestake messages StakestakeBond *stablestaketypes.MsgBond `json:"stablestake_bond,omitempty"` StakestakeUnbond *stablestaketypes.MsgUnbond `json:"stablestake_unbond,omitempty"` }
type ElysQuery ¶
type ElysQuery struct { // accountedpool queriers AccountedPoolAccountedPool *accountedpooltypes.QueryGetAccountedPoolRequest `json:"accounted_pool_accounted_pool,omitempty"` AccountedPoolAccountedPoolAll *accountedpooltypes.QueryAllAccountedPoolRequest `json:"accounted_pool_accounted_pool_all,omitempty"` // amm queriers AmmParams *ammtypes.QueryParamsRequest `json:"amm_params,omitempty"` AmmPool *ammtypes.QueryGetPoolRequest `json:"amm_pool,omitempty"` AmmPoolAll *ammtypes.QueryAllPoolRequest `json:"amm_pool_all,omitempty"` AmmEarnMiningPoolAll *ammtypes.QueryEarnPoolRequest `json:"amm_earn_mining_pool_all,omitempty"` AmmDenomLiquidity *ammtypes.QueryGetDenomLiquidityRequest `json:"amm_denom_liquidity,omitempty"` AmmDenomLiquidityAll *ammtypes.QueryAllDenomLiquidityRequest `json:"amm_denom_liquidity_all,omitempty"` AmmSwapEstimation *ammtypes.QuerySwapEstimationRequest `json:"amm_swap_estimation,omitempty"` AmmSwapEstimationByDenom *ammtypes.QuerySwapEstimationByDenomRequest `json:"amm_swap_estimation_by_denom,omitempty"` AmmSlippageTrack *ammtypes.QuerySlippageTrackRequest `json:"amm_slippage_track,omitempty"` AmmSlippageTrackAll *ammtypes.QuerySlippageTrackAllRequest `json:"amm_slippage_track_all,omitempty"` AmmBalance *ammtypes.QueryBalanceRequest `json:"amm_balance,omitempty"` AmmInRouteByDenom *ammtypes.QueryInRouteByDenomRequest `json:"amm_in_route_by_denom,omitempty"` AmmOutRouteByDenom *ammtypes.QueryOutRouteByDenomRequest `json:"amm_out_route_by_denom,omitempty"` AmmPriceByDenom *ammtypes.QueryAMMPriceRequest `json:"amm_price_by_denom,omitempty"` // assetprofile queriers AssetProfileParams *assetprofiletypes.QueryParamsRequest `json:"asset_profile_params,omitempty"` AssetProfileEntry *assetprofiletypes.QueryGetEntryRequest `json:"asset_profile_entry,omitempty"` AssetProfileEntryAll *assetprofiletypes.QueryAllEntryRequest `json:"asset_profile_entry_all,omitempty"` // auth queriers AuthAccounts *authtypes.QueryAccountsRequest `json:"auth_accounts,omitempty"` // burner queriers BurnerParams *burnertypes.QueryParamsRequest `json:"burner_params,omitempty"` BurnerHistory *burnertypes.QueryGetHistoryRequest `json:"burner_history,omitempty"` BurnerHistoryAll *burnertypes.QueryAllHistoryRequest `json:"burner_history_all,omitempty"` // clock queriers ClockClockContracts *clocktypes.QueryClockContracts `json:"clock_clock_contracts,omitempty"` ClockParams *clocktypes.QueryParamsRequest `json:"clock_params,omitempty"` // commitment queriers CommitmentParams *commitmenttypes.QueryParamsRequest `json:"commitment_params,omitempty"` CommitmentShowCommitments *commitmenttypes.QueryShowCommitmentsRequest `json:"commitment_show_commitments,omitempty"` CommitmentDelegations *commitmenttypes.QueryDelegatorDelegationsRequest `json:"commitment_delegations,omitempty"` CommitmentUnbondingDelegations *commitmenttypes.QueryDelegatorUnbondingDelegationsRequest `json:"commitment_unbonding_delegations,omitempty"` CommitmentStakedBalanceOfDenom *ammtypes.QueryBalanceRequest `json:"commitment_staked_balance_of_denom,omitempty"` CommitmentRewardsBalanceOfDenom *ammtypes.QueryBalanceRequest `json:"commitment_rewards_balance_of_denom,omitempty"` CommitmentAllValidators *commitmenttypes.QueryValidatorsRequest `json:"commitment_all_validators,omitempty"` CommitmentDelegatorValidators *commitmenttypes.QueryValidatorsRequest `json:"commitment_delegator_validators,omitempty"` CommitmentStakedPositions *commitmenttypes.QueryValidatorsRequest `json:"commitment_staked_positions,omitempty"` CommitmentUnStakedPositions *commitmenttypes.QueryValidatorsRequest `json:"commitment_un_staked_positions,omitempty"` CommitmentRewardsSubBucketBalanceOfDenom *commitmenttypes.QuerySubBucketBalanceRequest `json:"commitment_rewards_sub_bucket_balance_of_denom,omitempty"` CommitmentVestingInfo *commitmenttypes.QueryVestingInfoRequest `json:"commitment_vesting_info,omitempty"` // epochs queriers EpochsEpochInfos *epochstypes.QueryEpochsInfoRequest `json:"epochs_epoch_infos,omitempty"` EpochsCurrentEpoch *epochstypes.QueryCurrentEpochRequest `json:"epochs_current_epoch,omitempty"` // incentive queriers IncentiveParams *incentivetypes.QueryParamsRequest `json:"incentive_params,omitempty"` IncentiveCommunityPool *incentivetypes.QueryCommunityPoolRequest `json:"incentive_community_pool,omitempty"` IncentiveApr *incentivetypes.QueryAprRequest `json:"incentive_apr"` // leveragelp queriers LeveragelpParams *leveragelptypes.ParamsRequest `json:"leveragelp_params,omitempty"` LeveragelpQueryPositions *leveragelptypes.PositionsRequest `json:"leveragelp_query_positions,omitempty"` LeveragelpQueryPositionsByPool *leveragelptypes.PositionsByPoolRequest `json:"leveragelp_query_positions_by_pool,omitempty"` LeveragelpGetStatus *leveragelptypes.StatusRequest `json:"leveragelp_get_status,omitempty"` LeveragelpQueryPositionsForAddress *leveragelptypes.PositionsForAddressRequest `json:"leveragelp_query_positions_for_address,omitempty"` LeveragelpGetWhitelist *leveragelptypes.WhitelistRequest `json:"leveragelp_get_whitelist,omitempty"` LeveragelpIsWhitelisted *leveragelptypes.IsWhitelistedRequest `json:"leveragelp_is_whitelisted,omitempty"` LeveragelpPool *leveragelptypes.QueryGetPoolRequest `json:"leveragelp_pool,omitempty"` LeveragelpPools *leveragelptypes.QueryAllPoolRequest `json:"leveragelp_pools,omitempty"` LeveragelpPosition *leveragelptypes.PositionRequest `json:"leveragelp_position,omitempty"` // margin queriers MarginParams *margintypes.ParamsRequest `json:"margin_params,omitempty"` MarginQueryPositions *margintypes.PositionsRequest `json:"margin_query_positions,omitempty"` MarginQueryPositionsByPool *margintypes.PositionsByPoolRequest `json:"margin_query_positions_by_pool,omitempty"` MarginGetStatus *margintypes.StatusRequest `json:"margin_get_status,omitempty"` MarginGetPositionsForAddress *margintypes.PositionsForAddressRequest `json:"margin_get_positions_for_address,omitempty"` MarginGetWhitelist *margintypes.WhitelistRequest `json:"margin_get_whitelist,omitempty"` MarginIsWhitelisted *margintypes.IsWhitelistedRequest `json:"margin_is_whitelisted,omitempty"` MarginPool *margintypes.QueryGetPoolRequest `json:"margin_pool,omitempty"` MarginPools *margintypes.QueryAllPoolRequest `json:"margin_pools,omitempty"` MarginMTP *margintypes.MTPRequest `json:"margin_mtp,omitempty"` MarginOpenEstimation *margintypes.QueryOpenEstimationRequest `json:"margin_open_estimation,omitempty"` // oracle queriers OracleParams *oracletypes.QueryParamsRequest `json:"oracle_params,omitempty"` OracleBandPriceResult *oracletypes.QueryBandPriceRequest `json:"oracle_band_price_result,omitempty"` OracleLastBandRequestId *oracletypes.QueryLastBandRequestIdRequest `json:"oracle_last_band_request_id,omitempty"` OracleAssetInfo *oracletypes.QueryGetAssetInfoRequest `json:"oracle_asset_info,omitempty"` OracleAssetInfoAll *oracletypes.QueryAllAssetInfoRequest `json:"oracle_asset_info_all,omitempty"` OraclePrice *oracletypes.QueryGetPriceRequest `json:"oracle_price,omitempty"` OraclePriceAll *oracletypes.QueryAllPriceRequest `json:"oracle_price_all,omitempty"` OraclePriceFeeder *oracletypes.QueryGetPriceFeederRequest `json:"oracle_price_feeder,omitempty"` OraclePriceFeederAll *oracletypes.QueryAllPriceFeederRequest `json:"oracle_price_feeder_all,omitempty"` // parameter queriers ParameterParams *parametertypes.QueryParamsRequest `json:"parameter_params,omitempty"` // stablestake queriers StableStakeParams *stablestaketypes.QueryParamsRequest `json:"stable_stake_params,omitempty"` StableStakeBalanceOfBorrow *stablestaketypes.QueryBorrowRatioRequest `json:"stable_stake_balance_of_borrow,omitempty"` // tokenomics queriers TokenomicsParams *tokenomicstypes.QueryParamsRequest `json:"tokenomics_params,omitempty"` TokenomicsAirdrop *tokenomicstypes.QueryGetAirdropRequest `json:"tokenomics_airdrop,omitempty"` TokenomicsAirdropAll *tokenomicstypes.QueryAllAirdropRequest `json:"tokenomics_airdrop_all,omitempty"` TokenomicsGenesisInflation *tokenomicstypes.QueryGetGenesisInflationRequest `json:"tokenomics_genesis_inflation,omitempty"` TokenomicsTimeBasedInflation *tokenomicstypes.QueryGetTimeBasedInflationRequest `json:"tokenomics_time_based_inflation,omitempty"` TokenomicsTimeBasedInflationAll *tokenomicstypes.QueryAllTimeBasedInflationRequest `json:"tokenomics_time_based_inflation_all,omitempty"` // transferhook queriers TransferHookParams *transferhooktypes.QueryParamsRequest `json:"transfer_hook_params,omitempty"` }
type ModuleMessenger ¶
type ModuleMessenger interface { // HandleMsg processes the message and returns an error if it cannot handle it. HandleMsg(ctx sdk.Context, contractAddr sdk.AccAddress, contractIBCPortID string, msg ElysMsg) ([]sdk.Event, [][]byte, error) }
ModuleMsgHandler is an interface that all module messenger should implement.
type ModuleQuerier ¶
type ModuleQuerier interface { // HandleQuery processes the query and returns an error if it cannot handle it. HandleQuery(ctx sdk.Context, query ElysQuery) ([]byte, error) }
ModuleQuerier is an interface that all module queriers should implement.
type QueryPlugin ¶
type QueryPlugin struct {
// contains filtered or unexported fields
}
func NewQueryPlugin ¶
func NewQueryPlugin( moduleQueriers []ModuleQuerier, accountedpool *accountedpoolkeeper.Keeper, amm *ammkeeper.Keeper, assetprofile *assetprofilekeeper.Keeper, auth *authkeeper.AccountKeeper, bank *bankkeeper.BaseKeeper, burner *burnerkeeper.Keeper, clock *clockkeeper.Keeper, commitment *commitmentkeeper.Keeper, epochs *epochskeeper.Keeper, incentive *incentivekeeper.Keeper, leveragelp *leveragelpkeeper.Keeper, margin *marginkeeper.Keeper, oracle *oraclekeeper.Keeper, parameter *parameterkeeper.Keeper, stablestake *stablestakekeeper.Keeper, staking *stakingkeeper.Keeper, tokenomics *tokenomicskeeper.Keeper, transferhook *transferhookkeeper.Keeper, ) *QueryPlugin
NewQueryPlugin returns a reference to a new QueryPlugin.
type RequestResponse ¶
Click to show internal directories.
Click to hide internal directories.