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

v1 state

Back to all declarations

TIMESTAMP_90DAYS

int64

Value

7776000

TIMESTAMP_180DAYS

int64

Value

15552000

TIMESTAMP_365DAYS

int64

Value

31536000

MAX_UNIX_EPOCH_TIME

untyped bigint

// 9999-12-31 23:59:59

Value

(253402300799 <untyped> bigint)

assertIsValidAmount

func(amount int64)

assertIsValidAmount ensures the amount is non-negative.

Open
OID
02d577…ffec:3
assertIsValidAmount details

Inspect func

assertIsValidRewardAmountFormat

func(rewardAmountStr string)

assertIsValidRewardAmountFormat ensures the reward amount string is formatted as "tokenPath:amount".

Open
OID
02d577…ffec:5
assertIsValidRewardAmountFormat details

Inspect func

assertIsDepositor

func(s *v1.stakerV1, caller .uverse.address, positionId uint64)

assertIsDepositor ensures the caller is the owner of the deposit.

Open
OID
02d577…ffec:6
assertIsDepositor details

Inspect func

assertIsNotStaked

func(s *v1.stakerV1, positionId uint64)

assertIsNotStaked ensures the position is not already staked.

Open
OID
02d577…ffec:7
assertIsNotStaked details

Inspect func

assertIsPoolExists

func(s *v1.stakerV1, poolPath string)

assertIsPoolExists ensures the pool exists.

Open
OID
02d577…ffec:8
assertIsPoolExists details

Inspect func

assertIsValidPoolTier

func(tier uint64)

assertIsValidPoolTier ensures the tier is within valid range.

Open
OID
02d577…ffec:9
assertIsValidPoolTier details

Inspect func

assertIsGreaterThanMinimumRewardAmount

func(s *v1.stakerV1, rewardToken string, rewardAmount int64)

assertIsGreaterThanMinimumRewardAmount ensures the reward amount meets minimum requirements.

Open
OID
02d577…ffec:10
assertIsGreaterThanMinimumRewardAmount details

Inspect func

assertIsAllowedForExternalReward

func(s *v1.stakerV1, poolPath string, tokenPath string)

assertIsAllowedForExternalReward ensures the token is allowed for external rewards.

Open
OID
02d577…ffec:11
assertIsAllowedForExternalReward details

Inspect func

maxUnstakingFee

uint64

// 10%

Value

1000

assertIsValidFeeRate

func(fee uint64)

assertIsValidFeeRate ensures the fee rate is within valid range (0-1000 basis points).

Open
OID
02d577…ffec:12
assertIsValidFeeRate details

Inspect func

assertIsValidIncentiveStartTime

func(startTimestamp int64)

assertIsValidIncentiveStartTime ensures the incentive starts at midnight of a future date.

Open
OID
02d577…ffec:13
assertIsValidIncentiveStartTime details

Inspect func

assertIsValidIncentiveEndTime

func(endTimestamp int64)

assertIsValidIncentiveEndTime ensures the end timestamp is within valid epoch range.

Open
OID
02d577…ffec:14
assertIsValidIncentiveEndTime details

Inspect func

assertIsValidIncentiveDuration

func(externalDuration int64)

assertIsValidIncentiveDuration ensures the duration is 90, 180, or 365 days.

Open
OID
02d577…ffec:15
assertIsValidIncentiveDuration details

Inspect func

assertIsValidAddress

func(addr .uverse.address)

AssertIsValidAddress panics if the provided address is invalid.

Open
OID
02d577…ffec:16
assertIsValidAddress details

Inspect func

isMidnight

func(startTime time.Time) bool

isMidnight checks if a time represents midnight (00:00:00).

Open
OID
02d577…ffec:17
isMidnight details

Inspect func

assertIsPositionOwner

func(owner .uverse.address, caller .uverse.address)

assertIsPositionOwner validates that the caller has permission to operate the token.

Open
OID
02d577…ffec:18
assertIsPositionOwner details

Inspect func

Reward

type

Reward is a struct for storing reward for a position. Internal reward is the GNS reward, external reward is the reward for other incentives. Penalties are the amount that is deducted from the reward due to the position's warmup.

Value

v1.Reward

CalcPositionRewardParam

type

CalcPositionRewardParam is a struct for calculating position reward

Value

v1.CalcPositionRewardParam

getInitialCollectTime

func(deposit *staker.Deposit, incentive *staker.ExternalIncentive) int64

getInitialCollectTime determines the initial collection time for an incentive by taking the maximum of the deposit's stake time and the incentive's start time. This ensures rewards are only calculated from when both conditions are met: - The position must be staked (deposit.stakeTime) - The incentive must be active (incentive.startTimestamp) This function is used for lazy initialization when a position collects from an incentive for the first time, avoiding the need to iterate through all deposits when a new incentive is created.

Open
OID
02d577…ffec:19
getInitialCollectTime details

Inspect func

GNS_TOKEN_KEY

string

Value

"gno.land/r/gnoswap/gns.GNS"

WUGNOT_TOKEN_KEY

string

Value

"gno.land/r/gnoland/wugnot.wugnot"

emitSetPoolTier

func(prevAddr string, prevRealm string, poolPath string, tier uint64, rewardPerSecond int64, tierRewards map[uint64]int64, counts [4]uint64, currentTime int64)
Open
OID
02d577…ffec:21
emitSetPoolTier details

Inspect func

errNoPermission

untyped string

Value

"[GNOSWAP-STAKER-001] caller has no permission"

errPoolNotFound

untyped string

Value

"[GNOSWAP-STAKER-002] pool not found"

errNotAvailableUpdateCollectTime

untyped string

Value

"[GNOSWAP-STAKER-003] not available to update collect time"

errInvalidInput

untyped string

Value

"[GNOSWAP-STAKER-004] invalid input data"

errInvalidUnstakingFee

untyped string

Value

"[GNOSWAP-STAKER-005] invalid unstaking fee"

errAlreadyStaked

untyped string

Value

"[GNOSWAP-STAKER-006] already staked position"

errNonIncentivizedPool

untyped string

Value

"[GNOSWAP-STAKER-007] pool is not incentivized"

errCannotEndIncentive

untyped string

Value

"[GNOSWAP-STAKER-008] cannot end incentive"

errInvalidIncentiveStartTime

untyped string

Value

"[GNOSWAP-STAKER-009] invalid incentive start time"

errDefaultExternalToken

untyped string

Value

"[GNOSWAP-STAKER-010] cannot delete default external token"

errInvalidPoolPath

untyped string

Value

"[GNOSWAP-STAKER-011] invalid pool path"

errInvalidPoolTier

untyped string

Value

"[GNOSWAP-STAKER-012] invalid pool tier"

errDataNotFound

untyped string

Value

"[GNOSWAP-STAKER-013] requested data not found"

errCalculationError

untyped string

Value

"[GNOSWAP-STAKER-014] unexpected calculation error"

errZeroLiquidity

untyped string

Value

"[GNOSWAP-STAKER-015] zero liquidity"

errInvalidIncentiveDuration

untyped string

Value

"[GNOSWAP-STAKER-016] invalid incentive duration"

errNotAllowedForExternalReward

untyped string

Value

"[GNOSWAP-STAKER-017] not allowed for external reward"

errIncentiveAlreadyExists

untyped string

Value

"[GNOSWAP-STAKER-018] incentive already exists"

errOverflow

untyped string

Value

"[GNOSWAP-STAKER-019] overflow"

errAddExistingToken

untyped string

Value

"[GNOSWAP-STAKER-020] cannot add existing token"

errInvalidAddress

untyped string

Value

"[GNOSWAP-STAKER-021] invalid address"

errIsNotEndedIncentive

untyped string

Value

"[GNOSWAP-STAKER-022] incentive is not ended yet"

errSpoofedRealm

untyped string

Value

"[GNOSWAP-STAKER-023] rlm does not match the current crossing frame"

makeErrorWithDetails

func(message string, details string) .uverse.error
Open
OID
02d577…ffec:23
makeErrorWithDetails details

Inspect func

tickCrossEventInfo

type

Value

v1.tickCrossEventInfo

NewTickCrossEventInfo

func(tickID int32, stakedLiquidityGross *uint256.Uint, stakedLiquidityDelta *int256.Int, outsideAccumulation *uint256.Uint) *v1.tickCrossEventInfo
Open
OID
02d577…ffec:25
NewTickCrossEventInfo details

Inspect func

checkCannotAddDefaultToken

func(tokenPath string) .uverse.error
Open
OID
02d577…ffec:27
checkCannotAddDefaultToken details

Inspect func

checkCannotRemoveDefaultToken

func(tokenPath string) .uverse.error
Open
OID
02d577…ffec:29
checkCannotRemoveDefaultToken details

Inspect func

defaultDepositGnsAmount

int64

Value

1000000000

defaultMinimumRewardAmount

int64

Value

1000000000

defaultUnstakingFee

uint64

// 1%

Value

100

defaultInitialPoolTierPath

untyped string

Value

"gno.land/r/gnoland/wugnot.wugnot:gno.land/r/gnoswap/gns.GNS:3000"

initStoreData

func(int, rlm .uverse.realm, stakerStore staker.IStakerStore, emissionAccessor staker.EmissionAccessor) .uverse.error
Open
OID
02d577…ffec:33
initStoreData details

Inspect func

initializePoolTier

func(stakerStore staker.IStakerStore) (*v1.PoolTier, *v1.Pools, int64, map[uint64]int64)
Open
OID
02d577…ffec:34
initializePoolTier details

Inspect func

stakerV1

type

Value

v1.stakerV1

NewStakerV1

func(stakerStore staker.IStakerStore, poolAccessor staker.PoolAccessor, emissionAccessor staker.EmissionAccessor, nftAccessor staker.NFTAccessor) *v1.stakerV1
Open
OID
02d577…ffec:35
NewStakerV1 details

Inspect func

NOT_EMISSION_TARGET_TIER

uint64

Value

0

pctToIndex

func(pct int64) int

pctToIndex converts percentage to warmup index.

Open
OID
02d577…ffec:37
pctToIndex details

Inspect func

IncentivesResolver

type

Value

v1.IncentivesResolver

NewIncentivesResolver

func(incentives *staker.Incentives) *v1.IncentivesResolver
Open
OID
02d577…ffec:39
NewIncentivesResolver details

Inspect func

retrieveIncentive

func(tree *v0.BPTree, id string) (*staker.ExternalIncentive, bool)
Open
OID
02d577…ffec:41
retrieveIncentive details

Inspect func

calculateUnClaimableDuration

func(unclaimableStart int64, unclaimableEnd int64, incentiveStartTimestamp int64, incentiveEndTimestamp int64) int64

calculateUnClaimableDuration calculates the duration of overlap between an unclaimable period and incentive period

Open
OID
02d577…ffec:42
calculateUnClaimableDuration details

Inspect func

Pools

type

Pools represents the global pool storage

Value

v1.Pools

PoolResolver

type

Value

v1.PoolResolver

NewPoolResolver

func(pool *staker.Pool) *v1.PoolResolver

NewPool creates a new pool with the given poolPath and currentHeight.

Open
OID
02d577…ffec:48
NewPoolResolver details

Inspect func

RewardState

type

RewardState is a struct for storing the intermediate state for reward calculation.

Value

v1.RewardState

AllTierCount

untyped bigint

// 0, 1, 2, 3

Value

(4 <untyped> bigint)

Tier1

untyped bigint

Value

(1 <untyped> bigint)

Tier2

untyped bigint

Value

(2 <untyped> bigint)

Tier3

untyped bigint

Value

(3 <untyped> bigint)

TierRatioFromCounts

func(tier1Count uint64, tier2Count uint64, tier3Count uint64) staker.TierRatio

TierRatioFromCounts calculates the ratio distribution for each tier based on pool counts. Parameters: - tier1Count (uint64): Number of pools in tier 1. - tier2Count (uint64): Number of pools in tier 2. - tier3Count (uint64): Number of pools in tier 3. Returns: - TierRatio: The ratio distribution across tier 1, 2, and 3, scaled up by 100.

Open
OID
02d577…ffec:49
TierRatioFromCounts details

Inspect func

PoolTier

type

PoolTier manages pool counts, ratios, and rewards for different tiers. Fields: - membership: Tracks which tier a pool belongs to (poolPath -> blockNumber -> tier). Methods: - CurrentCount: Returns the current count of pools in a tier at a specific timestamp. - CurrentRatio: Returns the current ratio for a tier at a specific timestamp. - CurrentTier: Returns the tier of a specific pool at a given timestamp. - CurrentReward: Retrieves the reward for a tier at a specific timestamp. - changeTier: Updates the tier of a pool and recalculates ratios.

Value

v1.PoolTier

NewPoolTier

func(pools *v1.Pools, currentTime int64, initialPoolPath string, getEmission func(...), getHalvingBlocksInRange func(...)) *v1.PoolTier

NewPoolTier creates a new PoolTier instance with single initial 1 tier pool. Parameters: - pools: The pool collection. - currentTime: The current block time. - initialPoolPath: The path of the initial pool. - getEmission: A function that returns the current emission to the staker contract. - getHalvingBlocksInRange: A function that returns a list of halving blocks within the interval \[start, end) in ascending order. Returns: - \*PoolTier: The new PoolTier instance.

Open
OID
02d577…ffec:51
NewPoolTier details

Inspect func

NewPoolTierBy

func(membership *v0.BPTree, tierRatio staker.TierRatio, counts [4]uint64, lastRewardCacheTimestamp int64, currentEmission int64, getEmission func(...), getHalvingBlocksInRange func(...)) *v1.PoolTier
Open
OID
02d577…ffec:52
NewPoolTierBy details

Inspect func

calculatePoolReward

func(emission int64, tierRatio int64, tierCount int64) int64

calculatePoolReward calculates the reward for a pool based on the emission, tier ratio, and tier count. Parameters: - emission: The emission for the pool. - tierRatio: The tier ratio for the pool. - tierCount: The tier count for the pool. Returns: - int64: The reward for the pool.

Open
OID
02d577…ffec:53
calculatePoolReward details

Inspect func

TickResolver

type

Value

v1.TickResolver

NewTickResolver

func(tick *staker.Tick) *v1.TickResolver
Open
OID
02d577…ffec:54
NewTickResolver details

Inspect func

EncodeUint

func(num uint64) string

EncodeUint converts a uint64 number into a zero-padded 20-character string. Parameters: - num (uint64): The number to encode. Returns: - string: A zero-padded string representation of the number. Example: Input: 12345 Output: "00000000000000012345"

Open
OID
02d577…ffec:56
EncodeUint details

Inspect func

EncodeInt64

func(num int64) string
Open
OID
02d577…ffec:58
EncodeInt64 details

Inspect func

DecodeUint

func(s string) uint64

DecodeUint converts a zero-padded string back into a uint64 number. Parameters: - s (string): The zero-padded string. Returns: - uint64: The decoded number. Panics: - If the string cannot be parsed into a uint64. Example: Input: "00000000000000012345" Output: 12345

Open
OID
02d577…ffec:59
DecodeUint details

Inspect func

DecodeInt64

func(s string) int64
Open
OID
02d577…ffec:60
DecodeInt64 details

Inspect func

maxDurationOneYear

int64

// 31,536,000 seconds

Value

31536000

modifyWarmup

func(warmupTemplate []staker.Warmup, index int, timeDuration int64) []staker.Warmup

expected to be called by governance

Open
OID
02d577…ffec:61
modifyWarmup details

Inspect func

instantiateWarmup

func(warmupTemplate []staker.Warmup, currentTime int64) []staker.Warmup
Open
OID
02d577…ffec:63
instantiateWarmup details

Inspect func

applyWarmup

func(warmup staker.Warmup, poolReward int64, positionLiquidity *uint256.Uint, stakedLiquidity *uint256.Uint) (int64, int64)

applyWarmup applies the warmup to the rewards and calculate penalties.

Open
OID
02d577…ffec:64
applyWarmup details

Inspect func

safeAddTime

func(currentTime int64, duration int64) int64

safeAddTime performs safe addition with overflow protection

Open
OID
02d577…ffec:65
safeAddTime details

Inspect func

ZERO_ADDRESS

.uverse.address

Value

<gnolang.StringValue>

Deposits

type

Deposits manages all staked positions.

Value

v1.Deposits

NewDeposits

func() *v1.Deposits

NewDeposits creates a new Deposits instance.

Open
OID
02d577…ffec:66
NewDeposits details

Inspect func

retrieveDeposit

func(data interface{...}) *staker.Deposit

retrieveDeposit safely casts data to Deposit type.

Open
OID
02d577…ffec:68
retrieveDeposit details

Inspect func

ExternalIncentives

type

ExternalIncentives manages external incentive programs.

Value

v1.ExternalIncentives

NewExternalIncentives

func() *v1.ExternalIncentives

NewExternalIncentives creates a new ExternalIncentives instance.

Open
OID
02d577…ffec:69
NewExternalIncentives details

Inspect func

tokenHasLiquidity

func(positionId uint64) .uverse.error

tokenHasLiquidity checks if the target positionId has non-zero liquidity

Open
OID
02d577…ffec:70
tokenHasLiquidity details

Inspect func

getLiquidity

func(positionId uint64) *uint256.Uint
Open
OID
02d577…ffec:71
getLiquidity details

Inspect func

getTickOf

func(positionId uint64) (int32, int32)
Open
OID
02d577…ffec:72
getTickOf details

Inspect func

ExternalIncentiveResolver

type

Value

v1.ExternalIncentiveResolver

NewExternalIncentiveResolver

func(externalIncentive *staker.ExternalIncentive) *v1.ExternalIncentiveResolver

NewExternalIncentive creates a new external incentive

Open
OID
02d577…ffec:73
NewExternalIncentiveResolver details

Inspect func

DepositResolver

type

Value

v1.DepositResolver

NewDepositResolver

func(deposit *staker.Deposit) *v1.DepositResolver
Open
OID
02d577…ffec:75
NewDepositResolver details

Inspect func

poolPathDivide

func(poolPath string) (string, string, string)

poolPathDivide splits a pool path into token addresses and fee tier.

Open
OID
02d577…ffec:76
poolPathDivide details

Inspect func

positionIdFrom

func(positionId uint64) grc721.TokenID

positionIdFrom converts a uint64 position ID to grc721.TokenID.

Open
OID
02d577…ffec:78
positionIdFrom details

Inspect func

contains

func(slice []string, item string) bool

contains checks if a string exists in a slice.

Open
OID
02d577…ffec:79
contains details

Inspect func
TIMESTAMP_90DAYS : int64 =7776000
TIMESTAMP_180DAYS : int64 =15552000
TIMESTAMP_365DAYS : int64 =31536000
MAX_UNIX_EPOCH_TIME : untyped bigint =(253402300799 <untyped> bigint)
assertIsValidAmount : func(amount int64) Inspect
assertIsValidRewardAmountFormat : func(rewardAmountStr string) Inspect
assertIsDepositor : func(s *v1.stakerV1, caller .uverse.address, positionId uint64) Inspect
assertIsNotStaked : func(s *v1.stakerV1, positionId uint64) Inspect
assertIsPoolExists : func(s *v1.stakerV1, poolPath string) Inspect
assertIsValidPoolTier : func(tier uint64) Inspect
assertIsGreaterThanMinimumRewardAmount : func(s *v1.stakerV1, rewardToken string, rewardAmount int64) Inspect
assertIsAllowedForExternalReward : func(s *v1.stakerV1, poolPath string, tokenPath string) Inspect
maxUnstakingFee : uint64 =1000
assertIsValidFeeRate : func(fee uint64) Inspect
assertIsValidIncentiveStartTime : func(startTimestamp int64) Inspect
assertIsValidIncentiveEndTime : func(endTimestamp int64) Inspect
assertIsValidIncentiveDuration : func(externalDuration int64) Inspect
assertIsValidAddress : func(addr .uverse.address) Inspect
isMidnight : func(startTime time.Time) bool Inspect
assertIsPositionOwner : func(owner .uverse.address, caller .uverse.address) Inspect
Reward : type =v1.Reward
CalcPositionRewardParam : type =v1.CalcPositionRewardParam
getInitialCollectTime : func(deposit *staker.Deposit, incentive *staker.ExternalIncentive) int64 Inspect
GNS_TOKEN_KEY : string ="gno.land/r/gnoswap/gns.GNS"
WUGNOT_TOKEN_KEY : string ="gno.land/r/gnoland/wugnot.wugnot"
emitSetPoolTier : func(prevAddr string, prevRealm string, poolPath string, tier uint64, rewardPerSecond int64, tierRewards map[uint64]int64, counts [4]uint64, currentTime int64) Inspect
errNoPermission : untyped string ="[GNOSWAP-STAKER-001] caller has no permission"
errPoolNotFound : untyped string ="[GNOSWAP-STAKER-002] pool not found"
errNotAvailableUpdateCollectTime : untyped string ="[GNOSWAP-STAKER-003] not available to update collect time"
errInvalidInput : untyped string ="[GNOSWAP-STAKER-004] invalid input data"
errInvalidUnstakingFee : untyped string ="[GNOSWAP-STAKER-005] invalid unstaking fee"
errAlreadyStaked : untyped string ="[GNOSWAP-STAKER-006] already staked position"
errNonIncentivizedPool : untyped string ="[GNOSWAP-STAKER-007] pool is not incentivized"
errCannotEndIncentive : untyped string ="[GNOSWAP-STAKER-008] cannot end incentive"
errInvalidIncentiveStartTime : untyped string ="[GNOSWAP-STAKER-009] invalid incentive start time"
errDefaultExternalToken : untyped string ="[GNOSWAP-STAKER-010] cannot delete default external token"
errInvalidPoolPath : untyped string ="[GNOSWAP-STAKER-011] invalid pool path"
errInvalidPoolTier : untyped string ="[GNOSWAP-STAKER-012] invalid pool tier"
errDataNotFound : untyped string ="[GNOSWAP-STAKER-013] requested data not found"
errCalculationError : untyped string ="[GNOSWAP-STAKER-014] unexpected calculation error"
errZeroLiquidity : untyped string ="[GNOSWAP-STAKER-015] zero liquidity"
errInvalidIncentiveDuration : untyped string ="[GNOSWAP-STAKER-016] invalid incentive duration"
errNotAllowedForExternalReward : untyped string ="[GNOSWAP-STAKER-017] not allowed for external reward"
errIncentiveAlreadyExists : untyped string ="[GNOSWAP-STAKER-018] incentive already exists"
errOverflow : untyped string ="[GNOSWAP-STAKER-019] overflow"
errAddExistingToken : untyped string ="[GNOSWAP-STAKER-020] cannot add existing token"
errInvalidAddress : untyped string ="[GNOSWAP-STAKER-021] invalid address"
errIsNotEndedIncentive : untyped string ="[GNOSWAP-STAKER-022] incentive is not ended yet"
errSpoofedRealm : untyped string ="[GNOSWAP-STAKER-023] rlm does not match the current crossing frame"
makeErrorWithDetails : func(message string, details string) .uverse.error Inspect
tickCrossEventInfo : type =v1.tickCrossEventInfo
NewTickCrossEventInfo : func(tickID int32, stakedLiquidityGross *uint256.Uint, stakedLiquidityDelta *int256.Int, outsideAccumulation *uint256.Uint) *v1.tickCrossEventInfo Inspect
checkCannotAddDefaultToken : func(tokenPath string) .uverse.error Inspect
checkCannotRemoveDefaultToken : func(tokenPath string) .uverse.error Inspect
defaultDepositGnsAmount : int64 =1000000000
defaultMinimumRewardAmount : int64 =1000000000
defaultUnstakingFee : uint64 =100
defaultInitialPoolTierPath : untyped string ="gno.land/r/gnoland/wugnot.wugnot:gno.land/r/gnoswap/gns.GNS:3000"
init.58 : func() Inspect
registerStakerV1 : func() Inspect
initStoreData : func(int, rlm .uverse.realm, stakerStore staker.IStakerStore, emissionAccessor staker.EmissionAccessor) .uverse.error Inspect
initializePoolTier : func(stakerStore staker.IStakerStore) (*v1.PoolTier, *v1.Pools, int64, map[uint64]int64) Inspect
stakerV1 : type =v1.stakerV1
NewStakerV1 : func(stakerStore staker.IStakerStore, poolAccessor staker.PoolAccessor, emissionAccessor staker.EmissionAccessor, nftAccessor staker.NFTAccessor) *v1.stakerV1 Inspect
NOT_EMISSION_TARGET_TIER : uint64 =0
pctToIndex : func(pct int64) int Inspect
IncentivesResolver : type =v1.IncentivesResolver
NewIncentivesResolver : func(incentives *staker.Incentives) *v1.IncentivesResolver Inspect
retrieveIncentive : func(tree *v0.BPTree, id string) (*staker.ExternalIncentive, bool) Inspect
calculateUnClaimableDuration : func(unclaimableStart int64, unclaimableEnd int64, incentiveStartTimestamp int64, incentiveEndTimestamp int64) int64 Inspect
q128 : *uint256.Uint Inspect
Pools : type =v1.Pools
NewPools : func() *v1.Pools Inspect
PoolResolver : type =v1.PoolResolver
NewPoolResolver : func(pool *staker.Pool) *v1.PoolResolver Inspect
RewardState : type =v1.RewardState
AllTierCount : untyped bigint =(4 <untyped> bigint)
Tier1 : untyped bigint =(1 <untyped> bigint)
Tier2 : untyped bigint =(2 <untyped> bigint)
Tier3 : untyped bigint =(3 <untyped> bigint)
TierRatioFromCounts : func(tier1Count uint64, tier2Count uint64, tier3Count uint64) staker.TierRatio Inspect
PoolTier : type =v1.PoolTier
NewPoolTier : func(pools *v1.Pools, currentTime int64, initialPoolPath string, getEmission func(...), getHalvingBlocksInRange func(...)) *v1.PoolTier Inspect
NewPoolTierBy : func(membership *v0.BPTree, tierRatio staker.TierRatio, counts [4]uint64, lastRewardCacheTimestamp int64, currentEmission int64, getEmission func(...), getHalvingBlocksInRange func(...)) *v1.PoolTier Inspect
calculatePoolReward : func(emission int64, tierRatio int64, tierCount int64) int64 Inspect
TickResolver : type =v1.TickResolver
NewTickResolver : func(tick *staker.Tick) *v1.TickResolver Inspect
EncodeUint : func(num uint64) string Inspect
EncodeInt64 : func(num int64) string Inspect
DecodeUint : func(s string) uint64 Inspect
DecodeInt64 : func(s string) int64 Inspect
maxDurationOneYear : int64 =31536000
modifyWarmup : func(warmupTemplate []staker.Warmup, index int, timeDuration int64) []staker.Warmup Inspect
instantiateWarmup : func(warmupTemplate []staker.Warmup, currentTime int64) []staker.Warmup Inspect
applyWarmup : func(warmup staker.Warmup, poolReward int64, positionLiquidity *uint256.Uint, stakedLiquidity *uint256.Uint) (int64, int64) Inspect
safeAddTime : func(currentTime int64, duration int64) int64 Inspect
ZERO_ADDRESS : .uverse.address =<gnolang.StringValue>
Deposits : type =v1.Deposits
NewDeposits : func() *v1.Deposits Inspect
retrieveDeposit : func(data interface{...}) *staker.Deposit Inspect
ExternalIncentives : type =v1.ExternalIncentives
NewExternalIncentives : func() *v1.ExternalIncentives Inspect
tokenHasLiquidity : func(positionId uint64) .uverse.error Inspect
getLiquidity : func(positionId uint64) *uint256.Uint Inspect
getTickOf : func(positionId uint64) (int32, int32) Inspect
ExternalIncentiveResolver : type =v1.ExternalIncentiveResolver
NewExternalIncentiveResolver : func(externalIncentive *staker.ExternalIncentive) *v1.ExternalIncentiveResolver Inspect
DepositResolver : type =v1.DepositResolver
NewDepositResolver : func(deposit *staker.Deposit) *v1.DepositResolver Inspect
poolPathDivide : func(poolPath string) (string, string, string) Inspect
positionIdFrom : func(positionId uint64) grc721.TokenID Inspect
contains : func(slice []string, item string) bool Inspect