Skip to content

Commit

Permalink
fix syntax errors
Browse files Browse the repository at this point in the history
  • Loading branch information
mconcat committed Dec 29, 2024
1 parent 9ea3305 commit c27a074
Show file tree
Hide file tree
Showing 10 changed files with 78 additions and 30 deletions.
10 changes: 4 additions & 6 deletions _deploy/r/gnoswap/gns/halving.gno
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ func addPerBlockMintUpdate(height uint64, amount uint64) {
}

var halvingYearBlock = make(map[int64]int64) // year => block
var halvingYearTimestamp = make(map[int64]int64) // year => timestamp
//var halvingYearTimestamp = make(map[int64]int64) // year => timestamp
var (
halvingYearStartBlock = make([]int64, HALVING_END_YEAR) // start block of each halving year
halvingYearEndBlock = make([]int64, HALVING_END_YEAR) // end block of each halving year
Expand Down Expand Up @@ -169,7 +169,7 @@ func initializeHalvingData() {
setHalvingYearMintAmount(year, uint64(0))
}

addPerBlockMintUpdate(uint64(height), amountPerBlockPerHalvingYear[1])
addPerBlockMintUpdate(uint64(std.GetHeight()), amountPerBlockPerHalvingYear[1])
}

func GetAvgBlockTimeInMs() int64 {
Expand Down Expand Up @@ -242,11 +242,9 @@ func setAvgBlockTimeInMs(ms int64) {
setAmountPerBlockPerHalvingYear(currentYear, adjustedAmountPerBlock)

// update it
amountPerBlockPerHalvingYear[year] = adjustedAmountPerBlock
addPerBlockMintUpdate(uint64(height), adjustedAmountPerBlock)
amountPerBlockPerHalvingYear[currentYear] = adjustedAmountPerBlock
addPerBlockMintUpdate(uint64(std.GetHeight()), adjustedAmountPerBlock)

yearEndHeight := int64(0)
nextYearStartHeight := int64(0)
for year := HALVING_START_YEAR; year <= HALVING_END_YEAR; year++ {
if year < currentYear {
// pass past halving years
Expand Down
43 changes: 37 additions & 6 deletions position/api.gno
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"std"
"time"

ufmt "gno.land/p/demo/ufmt"
"gno.land/p/demo/json"
i256 "gno.land/p/gnoswap/int256"
"gno.land/r/gnoswap/v1/common"
Expand Down Expand Up @@ -73,10 +74,15 @@ func ApiGetPositions() string {
// RESPONSE (ARRAY) NODE
responses := json.ArrayNode("", []*json.Node{})
for _, position := range r.Response {
owner, err := gnft.OwnerOf(tokenIdFrom(position.LpTokenId))
if err != nil {
panic(ufmt.Sprintf("owner not found for tokenId: %d", position.LpTokenId))
}

positionNode := json.ObjectNode("", map[string]*json.Node{
"lpTokenId": json.NumberNode("lpTokenId", float64(position.LpTokenId)),
"burned": json.BoolNode("burned", position.Burned),
"owner": json.StringNode("owner", gnft.OwnerOf(tokenIdFrom(position.LpTokenId)).String()),
"owner": json.StringNode("owner", owner.String()),
"operator": json.StringNode("operator", position.Operator),
"poolKey": json.StringNode("poolKey", position.PoolKey),
"tickLower": json.NumberNode("tickLower", float64(position.TickLower)),
Expand Down Expand Up @@ -135,10 +141,15 @@ func ApiGetPosition(lpTokenId uint64) string {
// RESPONSE (ARRAY) NODE
responses := json.ArrayNode("", []*json.Node{})
for _, position := range r.Response {
owner, err := gnft.OwnerOf(tokenIdFrom(position.LpTokenId))
if err != nil {
panic(ufmt.Sprintf("owner not found for tokenId: %d", position.LpTokenId))
}

positionNode := json.ObjectNode("", map[string]*json.Node{
"lpTokenId": json.NumberNode("lpTokenId", float64(position.LpTokenId)),
"burned": json.BoolNode("burned", position.Burned),
"owner": json.StringNode("owner", gnft.OwnerOf(tokenIdFrom(position.LpTokenId)).String()),
"owner": json.StringNode("owner", owner.String()),
"operator": json.StringNode("operator", position.Operator),
"poolKey": json.StringNode("poolKey", position.PoolKey),
"tickLower": json.NumberNode("tickLower", float64(position.TickLower)),
Expand Down Expand Up @@ -199,10 +210,15 @@ func ApiGetPositionsByPoolPath(poolPath string) string {
// RESPONSE (ARRAY) NODE
responses := json.ArrayNode("", []*json.Node{})
for _, position := range r.Response {
owner, err := gnft.OwnerOf(tokenIdFrom(position.LpTokenId))
if err != nil {
panic(ufmt.Sprintf("owner not found for tokenId: %d", position.LpTokenId))
}

positionNode := json.ObjectNode("", map[string]*json.Node{
"lpTokenId": json.NumberNode("lpTokenId", float64(position.LpTokenId)),
"burned": json.BoolNode("burned", position.Burned),
"owner": json.StringNode("owner", gnft.OwnerOf(tokenIdFrom(position.LpTokenId)).String()),
"owner": json.StringNode("owner", owner.String()),
"operator": json.StringNode("operator", position.Operator),
"poolKey": json.StringNode("poolKey", position.PoolKey),
"tickLower": json.NumberNode("tickLower", float64(position.TickLower)),
Expand Down Expand Up @@ -237,7 +253,12 @@ func ApiGetPositionsByAddress(address std.Address) string {
rpcPositions := []RpcPosition{}
for lpTokenId := uint64(1); lpTokenId < nextId; lpTokenId++ {
position := MustGetPosition(lpTokenId)
if !(position.operator == address || gnft.OwnerOf(tokenIdFrom(lpTokenId)) == address) {
owner, err := gnft.OwnerOf(tokenIdFrom(lpTokenId))
if err != nil {
panic(ufmt.Sprintf("owner not found for tokenId: %d", lpTokenId))
}

if !(position.operator == address || owner == address) {
continue
}

Expand All @@ -262,10 +283,15 @@ func ApiGetPositionsByAddress(address std.Address) string {
// RESPONSE (ARRAY) NODE
responses := json.ArrayNode("", []*json.Node{})
for _, position := range r.Response {
owner, err := gnft.OwnerOf(tokenIdFrom(position.LpTokenId))
if err != nil {
panic(ufmt.Sprintf("owner not found for tokenId: %d", position.LpTokenId))
}

positionNode := json.ObjectNode("", map[string]*json.Node{
"lpTokenId": json.NumberNode("lpTokenId", float64(position.LpTokenId)),
"burned": json.BoolNode("burned", position.Burned),
"owner": json.StringNode("owner", gnft.OwnerOf(tokenIdFrom(position.LpTokenId)).String()),
"owner": json.StringNode("owner", owner.String()),
"operator": json.StringNode("operator", position.Operator),
"poolKey": json.StringNode("poolKey", position.PoolKey),
"tickLower": json.NumberNode("tickLower", float64(position.TickLower)),
Expand Down Expand Up @@ -400,10 +426,15 @@ func rpcMakePosition(lpTokenId uint64) RpcPosition {
unclaimedFee0, unclaimedFee1 = unclaimedFee(lpTokenId)
}

owner, err := gnft.OwnerOf(tokenIdFrom(lpTokenId))
if err != nil {
panic(ufmt.Sprintf("owner not found for tokenId: %d", lpTokenId))
}

return RpcPosition{
LpTokenId: lpTokenId,
Burned: burned,
Owner: gnft.OwnerOf(tokenIdFrom(lpTokenId)).String(),
Owner: owner.String(),
Operator: position.operator.String(),
PoolKey: position.poolKey,
TickLower: position.tickLower,
Expand Down
8 changes: 7 additions & 1 deletion position/getter.gno
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ package position
import (
"std"

"gno.land/p/demo/ufmt"

u256 "gno.land/p/gnoswap/uint256"

"gno.land/r/gnoswap/v1/gnft"
Expand Down Expand Up @@ -81,7 +83,11 @@ func PositionIsInRange(tokenId uint64) bool {
}

func PositionGetPositionOwner(tokenId uint64) std.Address {
return gnft.OwnerOf(tokenIdFrom(tokenId))
owner, err := gnft.OwnerOf(tokenIdFrom(tokenId))
if err != nil {
panic(ufmt.Sprintf("owner not found for tokenId: %d", tokenId))
}
return owner
}

func PositionGetPositionNonceStr(tokenId uint64) string {
Expand Down
3 changes: 2 additions & 1 deletion position/position.gno
Original file line number Diff line number Diff line change
Expand Up @@ -520,7 +520,8 @@ func mint(params MintParams) (uint64, *u256.Uint, *u256.Uint, *u256.Uint) {
}

tokenId := getNextId()
gnft.Mint(a2u(params.mintTo), tokenIdFrom(tokenId)) // owner, tokenId

gnft.Mint(params.mintTo, tokenIdFrom(tokenId)) // owner, tokenId

pool := pl.GetPoolFromPoolPath(poolKey)
positionKey := computePositionKey(GetOrigPkgAddr(), params.tickLower, params.tickUpper)
Expand Down
22 changes: 17 additions & 5 deletions position/utils.gno
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,10 @@ func assertTokenExists(tokenId uint64) {
// Panics:
// - If the caller is not the owner of the token, the function panics with an `errNoPermission` error.
func assertOnlyOwnerOfToken(tokenId uint64, caller std.Address) {
owner := gnft.OwnerOf(tokenIdFrom(tokenId))
owner, err := gnft.OwnerOf(tokenIdFrom(tokenId))
if err != nil {
panic(ufmt.Sprintf("owner not found for tokenId: %d", tokenId))
}
assertCallerIsOwner(tokenId, owner, caller)
}

Expand Down Expand Up @@ -257,7 +260,10 @@ func exists(tokenId uint64) bool {
// input: tokenId uint64, addr std.Address
// output: bool
func isOwner(tokenId uint64, addr std.Address) bool {
owner := gnft.OwnerOf(tokenIdFrom(tokenId))
owner, err := gnft.OwnerOf(tokenIdFrom(tokenId))
if err != nil {
panic(ufmt.Sprintf("owner not found for tokenId: %d", tokenId))
}
if owner == addr {
return true
}
Expand All @@ -269,8 +275,11 @@ func isOwner(tokenId uint64, addr std.Address) bool {
// input: tokenId uint64, addr std.Address
// output: bool
func isOperator(tokenId uint64, addr std.Address) bool {
operator, ok := gnft.GetApproved(tokenIdFrom(tokenId))
if ok && operator == addr {
operator, err := gnft.GetApproved(tokenIdFrom(tokenId))
if err != nil {
panic(ufmt.Sprintf("operator not found for tokenId: %d", tokenId))
}
if operator == addr {
return true
}
return false
Expand All @@ -284,7 +293,10 @@ func isOperator(tokenId uint64, addr std.Address) bool {
func isStaked(tokenId grc721.TokenID) bool {
exist := gnft.Exists(tokenId)
if exist {
owner := gnft.OwnerOf(tokenId)
owner, err := gnft.OwnerOf(tokenId)
if err != nil {
panic(ufmt.Sprintf("owner not found for tokenId: %d", tokenId))
}
if owner == consts.STAKER_ADDR {
return true
}
Expand Down
2 changes: 2 additions & 0 deletions staker/_GET_no_receiver.gno
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ package staker
import (
"std"

ufmt "gno.land/p/demo/ufmt"

u256 "gno.land/p/gnoswap/uint256"
)

Expand Down
2 changes: 1 addition & 1 deletion staker/reward_calculation_pool.gno
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,7 @@ func (self *Pool) TickCrossesToEligibleIntervals(
currentlyInRange bool,
startHeight,
finalHeight uint64,
f func(startHeight, endHeight uint64, stakedLiquidity *u256.Uint)
f func(startHeight, endHeight uint64, stakedLiquidity *u256.Uint),
) {
TickCrossesToInRanges(currentlyInRange, tickUpperCrosses, tickLowerCrosses, func(height int64, inRange bool) {
if inRange {
Expand Down
6 changes: 1 addition & 5 deletions staker/staker.gno
Original file line number Diff line number Diff line change
Expand Up @@ -69,9 +69,7 @@ func (self *Deposits) Size() int {
var (
/* common */
// deposits stores deposit information for each tokenId
deposits *Deposits = &Deposits{
tree: avl.NewTree(),
}
deposits *Deposits = NewDeposits()
)

const (
Expand Down Expand Up @@ -394,8 +392,6 @@ func UnstakeToken(tokenId uint64, unwrapResult bool) (string, string, string) {
gnft.TransferFrom(a2u(consts.STAKER_ADDR), a2u(deposit.owner), tid(tokenId))
pn.SetPositionOperator(tokenId, consts.ZERO_ADDRESS)

token0Amount, token1Amount := getTokenPairBalanceFromPosition(tokenId)

prevAddr, prevPkgPath := getPrev()
std.Emit(
"UnstakeToken",
Expand Down
4 changes: 3 additions & 1 deletion staker/tier_ratio.gno
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import (
//u256 "gno.land/p/gnoswap/uint256"
)

/*
// getTierRatio returns ratio for given tier
// Returns ratio
func getTierRatio(tier uint64) uint64 {
Expand Down Expand Up @@ -126,4 +127,5 @@ func calcAmount(avgBlockAmountX96 *u256.Uint, dur, pct uint64) (uint64, uint64)

durAmount := new(u256.Uint).Div(durAmountX96, _q96).Uint64()
return fullAmount, durAmount
}*/
}
*/
8 changes: 4 additions & 4 deletions staker/type.gno
Original file line number Diff line number Diff line change
Expand Up @@ -63,9 +63,9 @@ func newExternalIncentive(
depositGnsAmount uint64,
targetPoolPath string,
rewardToken string,
rewardAmount *u256.Uint,
rewardLeft *u256.Uint,
rewardPerBlockX96 *u256.Uint,
rewardAmount uint64,
rewardLeft uint64,
rewardPerBlock uint64,
refundee std.Address,
) ExternalIncentive {
return ExternalIncentive{
Expand All @@ -77,7 +77,7 @@ func newExternalIncentive(
rewardToken: rewardToken,
rewardAmount: rewardAmount,
rewardLeft: rewardLeft,
rewardPerBlockX96: rewardPerBlockX96,
rewardPerBlock: rewardPerBlock,
refundee: refundee,
}
}
Expand Down

0 comments on commit c27a074

Please sign in to comment.