Documentation
¶
Index ¶
- Variables
- func AllCapabilities() []string
- func CustomMessageDecorator(moduleMessengers []ModuleMessenger, amm *ammkeeper.Keeper, ...) func(wasmkeeper.Messenger) wasmkeeper.Messenger
- func CustomQuerier(qp *QueryPlugin) func(ctx sdk.Context, request json.RawMessage) ([]byte, error)
- type AllPriceResponse
- type AssetInfo
- type AssetInfoResponse
- type AssetInfoType
- type CustomMessenger
- type ElysMsg
- type ElysQuery
- type ModuleMessenger
- type ModuleQuerier
- type MsgClose
- type MsgCloseResponse
- type MsgOpen
- type MsgOpenResponse
- type MsgStake
- type MsgSwapExactAmountIn
- type MsgSwapExactAmountInResponse
- type MsgUnstake
- type PriceAll
- type QueryBalanceRequest
- type QueryBalanceResponse
- type QueryPlugin
- type QuerySwapEstimationRequest
- type QuerySwapEstimationResponse
- 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, amm *ammkeeper.Keeper, margin *marginkeeper.Keeper, staking *stakingkeeper.Keeper, commitment *commitmentkeeper.Keeper, incentive *incentivekeeper.Keeper) func(wasmkeeper.Messenger) wasmkeeper.Messenger
func CustomQuerier ¶
func CustomQuerier(qp *QueryPlugin) func(ctx sdk.Context, request json.RawMessage) ([]byte, error)
Types ¶
type AllPriceResponse ¶
type AllPriceResponse struct { Price []oracletypes.Price `protobuf:"bytes,1,rep,name=price,proto3" json:"price"` Pagination *query.PageResponse `protobuf:"bytes,2,opt,name=pagination,proto3" json:"pagination,omitempty"` }
type AssetInfo ¶
type AssetInfo struct {
Denom string `protobuf:"bytes,1,opt,name=Denom,proto3" json:"Denom,omitempty"`
}
type AssetInfoResponse ¶
type AssetInfoResponse struct {
AssetInfo *AssetInfoType `protobuf:"bytes,1,opt,name=AssetInfo,proto3" json:"asset_info,omitempty"`
}
type AssetInfoType ¶
type AssetInfoType struct { Denom string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"` Display string `protobuf:"bytes,2,opt,name=display,proto3" json:"display,omitempty"` BandTicker string `protobuf:"bytes,3,opt,name=bandTicker,proto3" json:"band_ticker,omitempty"` ElysTicker string `protobuf:"bytes,4,opt,name=elysTicker,proto3" json:"elys_ticker,omitempty"` Decimal uint64 `protobuf:"varint,5,opt,name=decimal,proto3" json:"decimal,omitempty"` }
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 { MsgSwapExactAmountIn *MsgSwapExactAmountIn `json:"msg_swap_exact_amount_in,omitempty"` MsgOpen *MsgOpen `json:"msg_open,omitempty"` MsgClose *MsgClose `json:"msg_close,omitempty"` MsgStake *MsgStake `json:"msg_stake,omitempty"` MsgUnstake *MsgUnstake `json:"msg_unstake,omitempty"` MsgBeginRedelegate *incentiveclientwasmtypes.MsgBeginRedelegate `json:"msg_begin_redelegate,omitempty"` MsgCancelUnbondingDelegation *incentiveclientwasmtypes.MsgCancelUnbondingDelegation `json:"msg_cancel_unbonding_delegation"` MsgVest *incentiveclientwasmtypes.MsgVest `json:"msg_vest"` MsgCancelVest *incentiveclientwasmtypes.MsgCancelVest `json:"msg_cancel_vest"` MsgWithdrawRewards *incentiveclientwasmtypes.MsgWithdrawRewards `json:"msg_withdraw_rewards"` MsgWithdrawValidatorCommission *incentiveclientwasmtypes.MsgWithdrawValidatorCommission `json:"msg_withdraw_validator_commission"` }
type ElysQuery ¶
type ElysQuery struct { PriceAll *PriceAll `json:"price_all,omitempty"` QuerySwapEstimation *QuerySwapEstimationRequest `json:"query_swap_estimation,omitempty"` AssetInfo *AssetInfo `json:"asset_info,omitempty"` BalanceOfDenom *QueryBalanceRequest `json:"balance_of_denom,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 MsgCloseResponse ¶
type MsgCloseResponse struct {
MetaData *[]byte `protobuf:"bytes,1,opt,name=tokenData,proto3" json:"meta_data,omitempty"`
}
type MsgOpen ¶
type MsgOpen struct { Creator string `protobuf:"bytes,1,opt,name=creator,proto3" json:"creator,omitempty"` CollateralAsset string `protobuf:"bytes,2,opt,name=collateralAsset,proto3" json:"collateral_asset,omitempty"` CollateralAmount sdk.Uint `protobuf:"bytes,3,opt,name=collateralAmount,proto3" json:"collateral_amount,omitempty"` BorrowAsset string `protobuf:"bytes,4,opt,name=borrowAsset,proto3" json:"borrow_asset,omitempty"` Position margintypes.Position `protobuf:"bytes,5,opt,name=position,proto3" json:"position,omitempty"` Leverage sdk.Dec `protobuf:"bytes,6,opt,name=leverage,proto3" json:"leverage,omitempty"` TakeProfitPrice sdk.Dec `protobuf:"bytes,7,opt,name=takeProfitPrice,proto3" json:"take_profit_price,omitempty"` MetaData *[]byte `protobuf:"bytes,8,opt,name=tokenData,proto3" json:"meta_data,omitempty"` }
type MsgOpenResponse ¶
type MsgOpenResponse struct {
MetaData *[]byte `protobuf:"bytes,1,opt,name=tokenData,proto3" json:"meta_data,omitempty"`
}
type MsgStake ¶
type MsgStake struct { Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` Amount cosmos_sdk_math.Int `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount,omitempty"` Asset string `protobuf:"bytes,3,opt,name=asset,proto3" json:"asset,omitempty"` ValidatorAddress string `protobuf:"bytes,4,opt,name=validator_address,proto3" json:"validator_address,omitempty"` }
type MsgSwapExactAmountIn ¶
type MsgSwapExactAmountIn struct { Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` Routes []ammtype.SwapAmountInRoute `protobuf:"bytes,2,rep,name=routes,proto3" json:"routes,omitempty"` TokenIn sdk.Coin `protobuf:"bytes,3,opt,name=tokenIn,proto3" json:"token_in,omitempty"` TokenOutMinAmount cosmos_sdk_math.Int `` /* 140-byte string literal not displayed */ MetaData *[]byte `protobuf:"bytes,5,opt,name=tokenData,proto3" json:"meta_data,omitempty"` }
type MsgSwapExactAmountInResponse ¶
type MsgSwapExactAmountInResponse struct { TokenOutAmount cosmos_sdk_math.Int `` /* 133-byte string literal not displayed */ MetaData *[]byte `protobuf:"bytes,2,opt,name=tokenData,proto3" json:"meta_data,omitempty"` }
type MsgUnstake ¶
type MsgUnstake struct { Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` Amount cosmos_sdk_math.Int `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount,omitempty"` Asset string `protobuf:"bytes,3,opt,name=asset,proto3" json:"asset,omitempty"` ValidatorAddress string `protobuf:"bytes,4,opt,name=validator_address,proto3" json:"validator_address,omitempty"` }
type PriceAll ¶
type PriceAll struct {
Pagination *query.PageRequest `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination,omitempty"`
}
type QueryBalanceRequest ¶
type QueryBalanceResponse ¶
type QueryPlugin ¶
type QueryPlugin struct {
// contains filtered or unexported fields
}
func NewQueryPlugin ¶
func NewQueryPlugin( moduleQueriers []ModuleQuerier, amm *ammkeeper.Keeper, oracle *oraclekeeper.Keeper, bank *bankkeeper.BaseKeeper, staking *stakingkeeper.Keeper, commitment *commitmentkeeper.Keeper, margin *marginkeeper.Keeper, incentive *incentivekeeper.Keeper, ) *QueryPlugin
NewQueryPlugin returns a reference to a new QueryPlugin.
type QuerySwapEstimationRequest ¶
type QuerySwapEstimationRequest struct { TokenIn sdk.Coin `protobuf:"bytes,2,opt,name=tokenIn,proto3" json:"token_in,omitempty"` Routes []ammtype.SwapAmountInRoute `protobuf:"bytes,1,rep,name=routes,proto3" json:"routes,omitempty"` }
type RequestResponse ¶
Click to show internal directories.
Click to hide internal directories.