github.com/nspcc-dev/neo-go@v0.105.2-0.20240517133400-6be757af3eba/pkg/wallet/token.go (about) 1 package wallet 2 3 import ( 4 "github.com/nspcc-dev/neo-go/pkg/encoding/address" 5 "github.com/nspcc-dev/neo-go/pkg/util" 6 ) 7 8 // Token represents an imported token contract. 9 type Token struct { 10 Name string `json:"name"` 11 Hash util.Uint160 `json:"script_hash"` 12 Decimals int64 `json:"decimals"` 13 Symbol string `json:"symbol"` 14 Standard string `json:"standard"` 15 } 16 17 // NewToken returns the new token contract info. 18 func NewToken(tokenHash util.Uint160, name, symbol string, decimals int64, standardName string) *Token { 19 return &Token{ 20 Name: name, 21 Hash: tokenHash, 22 Decimals: decimals, 23 Symbol: symbol, 24 Standard: standardName, 25 } 26 } 27 28 // Address returns token address from hash. 29 func (t *Token) Address() string { 30 return address.Uint160ToString(t.Hash) 31 }