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

event_info.gno

1.05 Kb · 35 lines
 1package staker
 2
 3import (
 4	i256 "gno.land/p/gnoswap/int256"
 5	u256 "gno.land/p/gnoswap/uint256"
 6	"gno.land/p/gnoswap/utils"
 7)
 8
 9type tickCrossEventInfo struct {
10	tickID               int32
11	stakedLiquidityGross *u256.Uint
12	stakedLiquidityDelta *i256.Int
13	outsideAccumulation  *u256.Uint
14}
15
16// Collect tick info for event
17// - t: Tick ID
18// - slg: Staked Liquidity Gross
19// - sld: Staked Liquidity Delta
20// - oa: Outside Accumulation
21func (t *tickCrossEventInfo) ToString() string {
22	return "{\"t\":" + utils.FormatInt(t.tickID) +
23		",\"slg\":\"" + t.stakedLiquidityGross.ToString() + "\"" +
24		",\"sld\":\"" + t.stakedLiquidityDelta.ToString() + "\"" +
25		",\"oa\":\"" + t.outsideAccumulation.ToString() + "\"}"
26}
27
28func NewTickCrossEventInfo(tickID int32, stakedLiquidityGross *u256.Uint, stakedLiquidityDelta *i256.Int, outsideAccumulation *u256.Uint) *tickCrossEventInfo {
29	return &tickCrossEventInfo{
30		tickID:               tickID,
31		stakedLiquidityGross: stakedLiquidityGross,
32		stakedLiquidityDelta: stakedLiquidityDelta,
33		outsideAccumulation:  outsideAccumulation,
34	}
35}