Search Apps Documentation Source Content File Folder Download Copy Actions Download State String Boolean Number Struct Map Slice Pointer Function Closure Reference Nil Package Type Interface Unknown

staker package

Overview

Package staker manages liquidity mining rewards for GnoSwap positions.

The staker distributes GNS emissions and external incentives to liquidity providers based on their position size, price range, and staking duration. It supports both internal GNS rewards and external token incentives.

Reward calculations combine elapsed-time rates with tick/range accumulation, and collection flows are integrated into the staking lifecycle.

Function

GetIncentiveRewardPerSecondX128

func GetIncentiveRewardPerSecondX128(poolPath string, incentiveId string) (*u256.Uint, error)

GetIncentiveRewardPerSecondX128 returns the reward rate per second of an incentive, expressed as a Q128 fixed-point number (i.e. actual rate = value / 2^128). Callers needing an integer rate can right-shift the result by 128.

Parameters:

  • poolPath: Pool path containing the incentive record.
  • incentiveId: External incentive identifier to resolve.

Returns:

  • rateX128: Clone of the Q128-scaled reward rate; divide by 2^128 to recover the actual token units per second.
  • err: Non-nil when poolPath or incentiveId cannot be resolved.

Params

Command

gnokey query vm/qeval -remote "http://127.0.0.1:26657" -data "gno.land/r/gnoswap/staker.GetIncentiveRewardPerSecondX128(,)"

Result