Documentation
¶
Index ¶
- func DeductCoins(bankKeeper BankKeeper, ctx sdk.Context, coins sdk.Coins, distributeFees bool) error
- func NewPostHandler(options HandlerOptions) (sdk.PostHandler, error)
- func SendTip(bankKeeper BankKeeper, ctx sdk.Context, proposer sdk.AccAddress, ...) error
- type AccountKeeper
- type BankKeeper
- type FeeMarketKeeper
- type HandlerOptions
- type TaxDecorator
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DeductCoins ¶
func DeductCoins(bankKeeper BankKeeper, ctx sdk.Context, coins sdk.Coins, distributeFees bool) error
DeductCoins deducts coins from the given account. Coins can be sent to the default fee collector ( causes coins to be distributed to stakers) or kept in the fee collector account (soft burn).
func NewPostHandler ¶
func NewPostHandler(options HandlerOptions) (sdk.PostHandler, error)
NewPostHandler returns a default post handler
func SendTip ¶
func SendTip(bankKeeper BankKeeper, ctx sdk.Context, proposer sdk.AccAddress, coins sdk.Coins) error
SendTip sends a tip to the current block proposer.
Types ¶
type AccountKeeper ¶
type AccountKeeper interface { GetParams(ctx sdk.Context) (params authtypes.Params) GetAccount(ctx sdk.Context, addr sdk.AccAddress) authtypes.AccountI SetAccount(ctx sdk.Context, acc authtypes.AccountI) GetModuleAddress(moduleName string) sdk.AccAddress GetModuleAccount(ctx sdk.Context, name string) authtypes.ModuleAccountI NewAccountWithAddress(ctx sdk.Context, addr sdk.AccAddress) authtypes.AccountI }
AccountKeeper defines the contract needed for AccountKeeper related APIs. Interface provides support to use non-sdk AccountKeeper for AnteHandler's decorators.
type BankKeeper ¶
type BankKeeper interface { GetBalance(ctx sdk.Context, addr sdk.AccAddress, denom string) sdk.Coin IsSendEnabledCoins(ctx sdk.Context, coins ...sdk.Coin) error SendCoins(ctx sdk.Context, from, to sdk.AccAddress, amt sdk.Coins) error SendCoinsFromAccountToModule(ctx sdk.Context, senderAddr sdk.AccAddress, recipientModule string, amt sdk.Coins) error SendCoinsFromModuleToModule(ctx sdk.Context, senderModule, recipientModule string, amt sdk.Coins) error SendCoinsFromModuleToAccount(ctx sdk.Context, senderModule string, recipientAddr sdk.AccAddress, amt sdk.Coins) error BurnCoins(ctx sdk.Context, name string, amt sdk.Coins) error }
BankKeeper defines the contract needed for supply related APIs.
type FeeMarketKeeper ¶
type FeeMarketKeeper interface { GetState(ctx sdk.Context) (feemarkettypes.State, error) GetParams(ctx sdk.Context) (feemarkettypes.Params, error) SetParams(ctx sdk.Context, params feemarkettypes.Params) error SetState(ctx sdk.Context, state feemarkettypes.State) error ResolveToDenom(ctx sdk.Context, coin sdk.DecCoin, denom string) (sdk.DecCoin, error) GetMinGasPrice(ctx sdk.Context, denom string) (sdk.DecCoin, error) GetEnabledHeight(ctx sdk.Context) (int64, error) }
FeeMarketKeeper defines the expected feemarket keeper.
type HandlerOptions ¶
type HandlerOptions struct { AccountKeeper ante.AccountKeeper BankKeeper BankKeeper FeegrantKeeper ante.FeegrantKeeper DidKeeper cheqdante.DidKeeper ResourceKeeper cheqdante.ResourceKeeper FeeMarketKeeper FeeMarketKeeper }
HandlerOptions are the options required for constructing a default post handler
type TaxDecorator ¶ added in v1.1.0
type TaxDecorator struct {
// contains filtered or unexported fields
}
TaxDecorator will handle tax for all taxable messages
func NewTaxDecorator ¶
func NewTaxDecorator(ak ante.AccountKeeper, bk BankKeeper, fk ante.FeegrantKeeper, dk cheqdante.DidKeeper, rk cheqdante.ResourceKeeper, fmk FeeMarketKeeper) TaxDecorator
NewTaxDecorator returns a new taxDecorator
func (TaxDecorator) PayOutFeeAndTip ¶
PayOutFeeAndTip deducts the provided fee and tip from the fee payer. If the tx uses a feegranter, the fee granter address will pay the fee instead of the tx signer.
func (TaxDecorator) PostHandle ¶
func (td TaxDecorator) PostHandle(ctx sdk.Context, tx sdk.Tx, simulate bool, success bool, next sdk.PostHandler) (sdk.Context, error)
AnteHandle handles tax for all taxable messages