Documentation
¶
Index ¶
- Constants
- Variables
- func EndBlocker(ctx sdk.Context, k Keeper) (resTags sdk.Tags)
- func ErrNotValidator(codespace sdk.CodespaceType, address sdk.AccAddress) sdk.Error
- func ErrUnknownDenomination(codespace sdk.CodespaceType, denom string) sdk.Error
- func GetObservedPriceKey(denom string) []byte
- func GetTargetPriceKey(denom string) []byte
- func GetVoteKey(denom string, voter sdk.AccAddress) []byte
- func GetVotePrefix(denom string) []byte
- func InitGenesis(ctx sdk.Context, keeper Keeper, data GenesisState)
- func NewHandler(k Keeper) sdk.Handler
- func ParamTypeTable() params.TypeTable
- func ValidateGenesis(data GenesisState) error
- type GenesisState
- type Keeper
- type Params
- type PriceFeedMsg
- type PriceVote
Constants ¶
const ( DefaultCodespace sdk.CodespaceType = "ORACLE" CodeNotValidator sdk.CodeType = 1 CodeUnknownDenom sdk.CodeType = 2 )
Oracle errors reserve 1101-1199
const (
// default paramspace for params keeper
DefaultParamspace = "oracle"
)
const (
OracleDecPrec = 2
)
Variables ¶
var ( PrefixVote = []byte{0x01} PrefixTargetPrice = []byte{0x02} PrefixObservedPrice = []byte{0x03} KeyWhitelist = []byte{0x04} ParamStoreKeyParams = []byte("params") )
nolint
Functions ¶
func EndBlocker ¶
EndBlocker is called at the end of every block
func ErrNotValidator ¶
func ErrNotValidator(codespace sdk.CodespaceType, address sdk.AccAddress) sdk.Error
ErrNotValidator called when the signer of a Msg is not a validator
func ErrUnknownDenomination ¶ added in v0.0.4
func ErrUnknownDenomination(codespace sdk.CodespaceType, denom string) sdk.Error
ErrUnknownDenomination called when the signer of a Msg is not a validator
func GetObservedPriceKey ¶ added in v0.0.4
GetObservedPriceKey is in format of PrefixObservedPrice||denom
func GetTargetPriceKey ¶ added in v0.0.4
GetTargetPriceKey is in format of PrefixTargetPrice||denom
func GetVoteKey ¶
func GetVoteKey(denom string, voter sdk.AccAddress) []byte
GetVoteKey Key is in format of PrefixVote||denom||voter.AccAddress
func GetVotePrefix ¶
GetVotePrefix is in format of prefix||denom
func InitGenesis ¶ added in v0.0.4
func InitGenesis(ctx sdk.Context, keeper Keeper, data GenesisState)
new oracle genesis
func NewHandler ¶
NewHandler returns a handler for "oracle" type messages.
func ParamTypeTable ¶ added in v0.0.4
ParamTable for oracle module
func ValidateGenesis ¶ added in v0.0.4
func ValidateGenesis(data GenesisState) error
ValidateGenesis validates the provided oracle genesis state to ensure the expected invariants holds. (i.e. params in correct bounds, no duplicate validators)
Types ¶
type GenesisState ¶ added in v0.0.4
type GenesisState struct {
Params Params `json:"params"` // inflation params
}
GenesisState - all distribution state that must be provided at genesis
func DefaultGenesisState ¶ added in v0.0.4
func DefaultGenesisState() GenesisState
get raw genesis raw message for testing
func ExportGenesis ¶ added in v0.0.4
func ExportGenesis(ctx sdk.Context, keeper Keeper) GenesisState
ExportGenesis returns a GenesisState for a given context and keeper. The GenesisState will contain the pool, and validator/delegator distribution info's
func NewGenesisState ¶ added in v0.0.4
func NewGenesisState(params Params) GenesisState
type Keeper ¶
type Keeper struct {
// contains filtered or unexported fields
}
Keeper of the oracle store
func NewKeeper ¶
func NewKeeper(key sdk.StoreKey, cdc *codec.Codec, tk treasury.Keeper, valset sdk.ValidatorSet, paramspace params.Subspace) Keeper
NewKeeper constructs a new keeper
func (Keeper) GetPriceObserved ¶ added in v0.0.4
func (Keeper) GetPriceTarget ¶ added in v0.0.4
type Params ¶ added in v0.0.4
type Params struct {
Whitelist []string `json:"whitelist"` // type of coin to mint
VotePeriod sdk.Int `json:"vote_period"` // maximum annual change in inflation rate
VoteThreshold sdk.Dec `json:"vote_threshold"` // maximum inflation rate
}
Params oracle parameters
func DefaultParams ¶ added in v0.0.4
func DefaultParams() Params
DefaultParams creates default oracle module parameters
type PriceFeedMsg ¶
type PriceFeedMsg struct {
Denom string
TargetPrice sdk.Dec // in Luna
ObservedPrice sdk.Dec // in Luna
Feeder sdk.AccAddress
}
PriceFeedMsg - struct for voting on payloads. Note that the Price is denominated in Luna. All validators must vote on Terra prices.
func NewPriceFeedMsg ¶
func NewPriceFeedMsg(denom string, targetPrice, observedPrice sdk.Dec, feederAddress sdk.AccAddress) PriceFeedMsg
NewPriceFeedMsg creates a PriceFeedMsg instance
func (PriceFeedMsg) GetSignBytes ¶
func (msg PriceFeedMsg) GetSignBytes() []byte
GetSignBytes implements sdk.Msg
func (PriceFeedMsg) GetSigners ¶
func (msg PriceFeedMsg) GetSigners() []sdk.AccAddress
GetSigners implements sdk.Msg
func (PriceFeedMsg) ValidateBasic ¶
func (msg PriceFeedMsg) ValidateBasic() sdk.Error
ValidateBasic Implements sdk.Msg
type PriceVote ¶
type PriceVote struct {
FeedMsg PriceFeedMsg
Power sdk.Dec
}
PriceVote - struct to store a validator's vote on the price
func NewPriceVote ¶
func NewPriceVote(feedMsg PriceFeedMsg, power sdk.Dec) PriceVote
NewPriceVote creates a PriceVote instance