PathrockNetwork Gno Explorer
HomeBlocksTransactionsTokensRealmsPackagesValidatorsAnalytics

PathrockNetwork Gno Explorer — an independent explorer for Gno.land Mainnet (gnoland-1), operated by PathrockNetwork. Not an official Gno.land service.

gnowebarchive RPC

gno.land/r/gnoswap/common

Realm
Open in gnoweb ↗

Overview

Kind
Realm (renderable)
Name
common
Namespace
gnoswap
Files
9 (README)(gnomod.toml)
Exported functions
17
Module
gno.land/r/gnoswap/common
gno
0.9

Files (9)

  • README.mdmarkdown
  • gnomod.tomltoml
  • assert.gnogno
  • doc.gnogno
  • grc20reg_helper.gnogno
  • render.gnogno
  • state.gnogno
  • types.gnogno
  • upgrade.gnogno
  • grc20reg_helper.gnogno
    1package common23// IsRegistered checks whether a token key is registered.4//5// Parameters:6//   - tokenKey: registry key identifying the GRC20 token to inspect.7//8

    Functions

    • Allowance(tokenKey string, owner string, spender string) int64

    • Approve(int, rlm interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, tokenKey string, spender string, amount int64) interface {Error func() string}

    • AssertIsNotHandleNativeCoin()

    • BalanceOf(tokenKey string, addr string) int64

    • GetImplementationPackagePath() string

    • IsRegistered(tokenKey string) interface {Error func() string}

    • MustRegistered(tokenKeys ...string)

    • RegisterInitializer(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, initializer func(int, .uverse.realm) gno.land/r/gnoswap/common.ICommon)

    • Render(path string) string

    • SafeGRC20Approve(int, rlm interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, tokenKey string, spender string, amount int64)

    • SafeGRC20Transfer(int, rlm interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, tokenKey string, to string, amount int64)

    • SafeGRC20TransferFrom(int, rlm interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, tokenKey string, from string, to string, amount int64)

    • TotalSupply(tokenKey string) int64

    • Transfer(int, rlm interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, tokenKey string, to string, amount int64) interface {Error func() string}

    • TransferFrom(int, rlm interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, tokenKey string, from string, to string, amount int64) interface {Error func() string}

    • UpgradeImpl(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, packagePath string)

    • ValidateRegistered(tokenKeys ...string) interface {Error func() string}

    Signatures reconstructed verbatim from vm/qfuncs — interface params keep their inline definitions.

    Rendered

    RenderedRawgnoweb ↗
    // Returns:
    9// - error: nil when tokenKey is valid and registered; non-nil when the key is invalid or unregistered.
    10func IsRegistered(tokenKey string) error {
    11 return getImplementation().IsRegistered(tokenKey)
    12}
    13
    14// MustRegistered checks whether all provided tokens are registered and panics if any is not registered.
    15//
    16// Parameters:
    17// - tokenKeys: token registry keys to check; an empty list performs no checks.
    18//
    19// Panics if any of the provided tokens is not registered.
    20func MustRegistered(tokenKeys ...string) {
    21 if err := ValidateRegistered(tokenKeys...); err != nil {
    22 panic(err.Error())
    23 }
    24}
    25
    26// ValidateRegistered checks whether all provided tokens are registered, returning an
    27// error instead of panicking when a token is not registered.
    28//
    29// Parameters:
    30// - tokenKeys: token registry keys to check; an empty list is valid.
    31//
    32// Returns:
    33// - error: nil when every token is registered; otherwise the first
    34// registration failure.
    35func ValidateRegistered(tokenKeys ...string) error {
    36 return getImplementation().ValidateRegistered(tokenKeys...)
    37}
    38
    39// TotalSupply returns the total supply of the specified token.
    40//
    41// Parameters:
    42// - tokenKey: registry key identifying the GRC20 token.
    43//
    44// Returns:
    45// - totalSupply: current token supply for tokenKey, in the token's base units; panics if tokenKey is invalid or unregistered.
    46func TotalSupply(tokenKey string) int64 {
    47 return getImplementation().TotalSupply(tokenKey)
    48}
    49
    50// BalanceOf returns the token balance for the specified address.
    51//
    52// Parameters:
    53// - tokenKey: registry key identifying the GRC20 token.
    54// - addr: address whose token balance is queried.
    55//
    56// Returns:
    57// - balance: token balance held by addr, in the token's base units; panics if tokenKey is invalid or unregistered.
    58func BalanceOf(tokenKey string, addr address) int64 {
    59 return getImplementation().BalanceOf(tokenKey, addr)
    60}
    61
    62// Allowance returns the token allowance from owner to spender.
    63//
    64// Parameters:
    65// - tokenKey: registry key identifying the GRC20 token.
    66// - owner: address that owns the tokens.
    67// - spender: address authorized to spend owner's tokens.
    68//
    69// Returns:
    70// - allowance: amount owner has approved spender to use, in the token's base units; panics if tokenKey is invalid or unregistered.
    71func Allowance(tokenKey string, owner, spender address) int64 {
    72 return getImplementation().Allowance(tokenKey, owner, spender)
    73}
    74
    75// Transfer forwards a token transfer to the implementation bound to the current realm.
    76//
    77// Parameters:
    78// - _: leading integer discriminator for the realm-crossing ABI; pass 0.
    79// - rlm: propagated realm context used to resolve and invoke the registered token implementation.
    80// - tokenKey: registry key identifying the GRC20 token to transfer.
    81// - to: recipient address.
    82// - amount: number of token base units to transfer.
    83//
    84// Returns:
    85// - error: nil when the implementation completes the transfer; otherwise a token
    86// validation or transfer-rule error.
    87func Transfer(_ int, rlm realm, tokenKey string, to address, amount int64) error {
    88 return getImplementation().Transfer(0, rlm, tokenKey, to, amount)
    89}
    90
    91// TransferFrom forwards an allowance-backed token transfer to the implementation bound to the current realm.
    92//
    93// Parameters:
    94// - _: leading integer discriminator for the realm-crossing ABI; pass 0.
    95// - rlm: propagated realm context used to resolve and invoke the registered token implementation.
    96// - tokenKey: registry key identifying the GRC20 token to transfer.
    97// - from: address whose allowance and balance are debited.
    98// - to: recipient address.
    99// - amount: number of token base units to transfer.
    100//
    101// Returns:
    102// - error: nil when the implementation completes the transfer; otherwise a token
    103// validation, allowance, or balance-rule error.
    104func TransferFrom(_ int, rlm realm, tokenKey string, from, to address, amount int64) error {
    105 return getImplementation().TransferFrom(0, rlm, tokenKey, from, to, amount)
    106}
    107
    108// Approve forwards an allowance update to the implementation bound to the current realm.
    109//
    110// Parameters:
    111// - _: leading integer discriminator for the realm-crossing ABI; pass 0.
    112// - rlm: propagated realm context used to resolve and invoke the registered token implementation.
    113// - tokenKey: registry key identifying the GRC20 token.
    114// - spender: address authorized to spend the caller's tokens.
    115// - amount: number of token base units to authorize.
    116//
    117// Returns:
    118// - error: nil when the implementation records the allowance; otherwise a token
    119// validation or approval-rule error.
    120func Approve(_ int, rlm realm, tokenKey string, spender address, amount int64) error {
    121 return getImplementation().Approve(0, rlm, tokenKey, spender, amount)
    122}
    123
    124// SafeGRC20Transfer transfers tokens as the current realm and panics if it fails.
    125//
    126// Parameters:
    127// - _: leading integer discriminator for the realm-crossing ABI; pass 0.
    128// - rlm: propagated realm context used to resolve and invoke the registered token implementation.
    129// - tokenKey: registry key identifying the GRC20 token to transfer.
    130// - to: recipient address.
    131// - amount: number of token base units to transfer.
    132//
    133// Panics if the underlying transfer returns an error.
    134func SafeGRC20Transfer(_ int, rlm realm, tokenKey string, to address, amount int64) {
    135 if err := Transfer(0, rlm, tokenKey, to, amount); err != nil {
    136 panic(err)
    137 }
    138}
    139
    140// SafeGRC20TransferFrom transfers tokens as the current realm and panics if it fails.
    141//
    142// Parameters:
    143// - _: leading integer discriminator for the realm-crossing ABI; pass 0.
    144// - rlm: propagated realm context used to resolve and invoke the registered token implementation.
    145// - tokenKey: registry key identifying the GRC20 token to transfer.
    146// - from: address whose allowance and balance are debited.
    147// - to: recipient address.
    148// - amount: number of token base units to transfer.
    149//
    150// Panics if the underlying transfer returns an error.
    151func SafeGRC20TransferFrom(_ int, rlm realm, tokenKey string, from, to address, amount int64) {
    152 if err := TransferFrom(0, rlm, tokenKey, from, to, amount); err != nil {
    153 panic(err)
    154 }
    155}
    156
    157// SafeGRC20Approve approves tokens as the current realm and panics if it fails.
    158//
    159// Parameters:
    160// - _: leading integer discriminator for the realm-crossing ABI; pass 0.
    161// - rlm: propagated realm context used to resolve and invoke the registered token implementation.
    162// - tokenKey: registry key identifying the GRC20 token.
    163// - spender: address authorized to spend the caller's tokens.
    164// - amount: number of token base units to authorize.
    165//
    166// Panics if the underlying approval returns an error.
    167func SafeGRC20Approve(_ int, rlm realm, tokenKey string, spender address, amount int64) {
    168 if err := Approve(0, rlm, tokenKey, spender, amount); err != nil {
    169 panic(err)
    170 }
    171}
    172

    vm/qrender output, sanitized (docs/render-security.md) and displayed in an empty-sandbox iframe — scripts, forms and popups cannot run. Links stay inert in-preview; right-click to open.