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

common package

Overview

Package common provides shared realm utilities for GnoSwap protocol contracts.

The package contains helpers that must keep a realm boundary, including GRC20 token operations and native coin validation. AMM math lives in gno.land/p/gnoswap/gnsmath/v1.

Key components: - GRC20 Registry Helpers: convenient wrappers for GRC20 token operations - Coin Utilities: native coin handling and validation - Assertion Utilities: input validation for supported operations, including native-coin rejection

Function

SafeGRC20Approve

func SafeGRC20Approve(_ int, rlm realm, tokenKey string, spender address, amount int64)

SafeGRC20Approve approves tokens as the current realm and panics if it fails.

Parameters:

  • _: leading integer discriminator for the realm-crossing ABI; pass 0.
  • rlm: propagated realm context used to resolve and invoke the registered token implementation.
  • tokenKey: registry key identifying the GRC20 token.
  • spender: address authorized to spend the caller's tokens.
  • amount: number of token base units to authorize.

Panics if the underlying approval returns an error.

Params

Command

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

Result