keeper

package
v17.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 17, 2023 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Hooks

type Hooks struct {
	// contains filtered or unexported fields
}

func (Hooks) AfterCFMMPoolCreated

func (h Hooks) AfterCFMMPoolCreated(ctx sdk.Context, sender sdk.AccAddress, poolId uint64)

AfterCFMMPoolCreated creates a gauge for each pool’s lockable duration.

func (Hooks) AfterCFMMSwap

func (h Hooks) AfterCFMMSwap(ctx sdk.Context, sender sdk.AccAddress, poolId uint64, input sdk.Coins, output sdk.Coins)

AfterCFMMSwap hook is a noop.

func (Hooks) AfterConcentratedPoolCreated

func (h Hooks) AfterConcentratedPoolCreated(ctx sdk.Context, sender sdk.AccAddress, poolId uint64)

AfterConcentratedPoolCreated creates a single gauge for the concentrated liquidity pool.

func (Hooks) AfterConcentratedPoolSwap

func (h Hooks) AfterConcentratedPoolSwap(ctx sdk.Context, sender sdk.AccAddress, poolId uint64, input sdk.Coins, output sdk.Coins)

AfterConcentratedPoolSwap is a noop.

func (Hooks) AfterDistributeMintedCoin

func (h Hooks) AfterDistributeMintedCoin(ctx sdk.Context)

Distribute coins after minter module allocate assets to pool-incentives module.

func (Hooks) AfterExitPool

func (h Hooks) AfterExitPool(ctx sdk.Context, sender sdk.AccAddress, poolId uint64, shareInAmount sdk.Int, exitCoins sdk.Coins)

AfterExitPool hook is a noop.

func (Hooks) AfterInitialPoolPositionCreated

func (h Hooks) AfterInitialPoolPositionCreated(ctx sdk.Context, sender sdk.AccAddress, poolId uint64)

AfterInitialPoolPositionCreated is a noop.

func (Hooks) AfterJoinPool

func (h Hooks) AfterJoinPool(ctx sdk.Context, sender sdk.AccAddress, poolId uint64, enterCoins sdk.Coins, shareOutAmount sdk.Int)

AfterJoinPool hook is a noop.

func (Hooks) AfterLastPoolPositionRemoved

func (h Hooks) AfterLastPoolPositionRemoved(ctx sdk.Context, sender sdk.AccAddress, poolId uint64)

AfterLastPoolPositionRemoved is a noop.

type Keeper

type Keeper struct {
	// contains filtered or unexported fields
}

func NewKeeper

func NewKeeper(storeKey sdk.StoreKey, paramSpace paramtypes.Subspace, accountKeeper types.AccountKeeper, bankKeeper types.BankKeeper, incentivesKeeper types.IncentivesKeeper, distrKeeper types.DistrKeeper, poolmanagerKeeper types.PoolManagerKeeper, epochKeeper types.EpochKeeper, gammKeeper types.GAMMKeeper) Keeper

func (Keeper) AllocateAsset

func (k Keeper) AllocateAsset(ctx sdk.Context) error

AllocateAsset allocates and distributes coin according a gauge’s proportional weight that is recorded in the record.

func (Keeper) CreateConcentratedLiquidityPoolGauge

func (k Keeper) CreateConcentratedLiquidityPoolGauge(ctx sdk.Context, poolId uint64) error

CreateConcentratedLiquidityPoolGauge creates a gauge for concentrated liquidity pool.

func (Keeper) CreateLockablePoolGauges

func (k Keeper) CreateLockablePoolGauges(ctx sdk.Context, poolId uint64) error

CreateLockablePoolGauges create multiple gauges based on lockableDurations.

func (Keeper) ExportGenesis

func (k Keeper) ExportGenesis(ctx sdk.Context) *types.GenesisState

func (Keeper) FundCommunityPoolFromModule

func (k Keeper) FundCommunityPoolFromModule(ctx sdk.Context, asset sdk.Coin) error

FundCommunityPoolFromModule allows the pool-incentives module to directly fund the community fund pool.

func (Keeper) GetAllGauges

func (k Keeper) GetAllGauges(ctx sdk.Context) []incentivestypes.Gauge

func (Keeper) GetDistrInfo

func (k Keeper) GetDistrInfo(ctx sdk.Context) types.DistrInfo

func (Keeper) GetGaugesForCFMMPool

func (k Keeper) GetGaugesForCFMMPool(ctx sdk.Context, poolId uint64) ([]incentivestypes.Gauge, error)

GetGaugesForCFMMPool returns the gauges associated with the given CFMM pool ID, by first retrieving the lockable durations for the pool, then using them to query the pool incentives keeper for the gauge IDs associated with each duration, and finally using the incentives keeper to retrieve the actual gauges from the retrieved gauge IDs. CONTRACT: pool id must be assocated with a CFMM pool.

func (Keeper) GetLockableDurations

func (k Keeper) GetLockableDurations(ctx sdk.Context) []time.Duration

func (Keeper) GetLongestLockableDuration

func (k Keeper) GetLongestLockableDuration(ctx sdk.Context) (time.Duration, error)

func (Keeper) GetNoLockGaugeIdsFromPool

func (k Keeper) GetNoLockGaugeIdsFromPool(ctx sdk.Context, poolId uint64) ([]uint64, error)

GetNoLockGaugeIdsFromPool returns all the NoLock gauge ids associated with the pool id. This can only be used for the "NoLock" gauges. For "NoLock" gauges there are 2 kinds of links created: - general - by duration (for internal incentives)

Every "NoLock" gauge has the first link. Only the internal incentives "NoLock" gauges have the second link.

func (Keeper) GetParams

func (k Keeper) GetParams(ctx sdk.Context) (params types.Params)

func (Keeper) GetPoolGaugeId

func (k Keeper) GetPoolGaugeId(ctx sdk.Context, poolId uint64, lockableDuration time.Duration) (uint64, error)

GetPoolGaugeId returns the gauge id associated with the pool id and lockable duration. This can only be used for the internally incentivized gauges. Externally incentivized gauges do not have such link created.

func (Keeper) GetPoolIdFromGaugeId

func (k Keeper) GetPoolIdFromGaugeId(ctx sdk.Context, gaugeId uint64, lockableDuration time.Duration) (uint64, error)

func (Keeper) HandleReplacePoolIncentivesProposal

func (k Keeper) HandleReplacePoolIncentivesProposal(ctx sdk.Context, p *types.ReplacePoolIncentivesProposal) error

func (Keeper) HandleUpdatePoolIncentivesProposal

func (k Keeper) HandleUpdatePoolIncentivesProposal(ctx sdk.Context, p *types.UpdatePoolIncentivesProposal) error

func (Keeper) Hooks

func (k Keeper) Hooks() Hooks

Create new pool incentives hooks.

func (Keeper) InitGenesis

func (k Keeper) InitGenesis(ctx sdk.Context, genState *types.GenesisState)

func (Keeper) IsPoolIncentivized

func (k Keeper) IsPoolIncentivized(ctx sdk.Context, poolId uint64) bool

IsPoolIncentivized returns a boolean representing whether the given pool ID corresponds to an incentivized pool. It fails quietly by returning false if the pool does not exist or does not have any records, as this is technically equivalent to the pool not being incentivized.

func (Keeper) Logger

func (k Keeper) Logger(ctx sdk.Context) log.Logger

Logger returns a module-specific logger.

func (Keeper) ReplaceDistrRecords

func (k Keeper) ReplaceDistrRecords(ctx sdk.Context, records ...types.DistrRecord) error

This is checked for no err when a proposal is made, and executed when a proposal passes.

func (Keeper) SetDistrInfo

func (k Keeper) SetDistrInfo(ctx sdk.Context, distrInfo types.DistrInfo)

func (Keeper) SetLockableDurations

func (k Keeper) SetLockableDurations(ctx sdk.Context, lockableDurations []time.Duration)

func (Keeper) SetParams

func (k Keeper) SetParams(ctx sdk.Context, params types.Params)

func (Keeper) SetPoolGaugeIdInternalIncentive

func (k Keeper) SetPoolGaugeIdInternalIncentive(ctx sdk.Context, poolId uint64, incentivizedDuration time.Duration, gaugeId uint64) error

SetPoolGaugeIdInternalIncentive sets the gauge id for the pool and internally incentivized duration. Returns error if the incentivized duration is zero. CONTRACT: this link is created only for the internally incentivized gauges.

func (Keeper) SetPoolGaugeIdNoLock

func (k Keeper) SetPoolGaugeIdNoLock(ctx sdk.Context, poolId uint64, gaugeId uint64)

SetPoolGaugeIdNoLock sets the link between pool id and gauge id for "NoLock" gauges. CONTRACT: the gauge of the given id must be "NoLock" gauge.

func (Keeper) UpdateDistrRecords

func (k Keeper) UpdateDistrRecords(ctx sdk.Context, records ...types.DistrRecord) error

UpdateDistrRecords is checked for no err when a proposal is made, and executed when a proposal passes.

type Querier

type Querier struct {
	Keeper
}

Querier defines a wrapper around the x/pool-incentives keeper providing gRPC method handlers.

func NewQuerier

func NewQuerier(k Keeper) Querier

func (Querier) DistrInfo

DistrInfo returns gauges receiving pool rewards and their respective weights.

func (Querier) ExternalIncentiveGauges

ExternalIncentiveGauges iterates over all gauges and returns gauges externally incentivized by excluding default (internal) gauges.

func (Querier) GaugeIds

GaugeIds takes provided gauge request and returns the respective internally incentivized gaugeIDs. If internally incentivized for a given pool id is not found, returns an error.

func (Querier) IncentivizedPools

IncentivizedPools iterates over all internally incentivized gauges and returns their corresponding pools.

func (Querier) LockableDurations

LockableDurations returns the lock durations that are incentivized through pool-incentives.

func (Querier) Params

Params return pool-incentives module params.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL