erc20

package
v0.1.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 20, 2021 License: MPL-2.0 Imports: 12 Imported by: 3

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ApprovalEventID = crypto.Keccak256Hash([]byte("Approval(address,address,uint256)"))
View Source
var TransferEventID = crypto.Keccak256Hash([]byte("Transfer(address,address,uint256)"))

Functions

func ERC20Abi

func ERC20Abi() *abi.ABI

ERC20Abi returns the abi of the ERC20 contract

Types

type ApprovalEvent

type ApprovalEvent struct {
	Owner   web3.Address
	Spender web3.Address
	Value   *big.Int

	Raw *web3.Log
}

type ERC20

type ERC20 struct {
	// contains filtered or unexported fields
}

ERC20 is a solidity contract

func NewERC20

func NewERC20(addr web3.Address, provider *jsonrpc.Client) *ERC20

NewERC20 creates a new instance of the contract at a specific address

func (*ERC20) Allowance

func (_a *ERC20) Allowance(owner web3.Address, spender web3.Address, block ...web3.BlockNumber) (retval0 *big.Int, err error)

Allowance calls the allowance method in the solidity contract

func (*ERC20) AmountWithDecimals

func (self *ERC20) AmountWithDecimals(amount uint64) *big.Int

func (*ERC20) AmountWithoutDecimals

func (self *ERC20) AmountWithoutDecimals(amount *big.Int) uint64

func (*ERC20) ApprovalTopicFilter added in v0.1.2

func (_a *ERC20) ApprovalTopicFilter(owner []web3.Address, spender []web3.Address) [][]web3.Hash

func (*ERC20) Approve

func (_a *ERC20) Approve(spender web3.Address, value *big.Int) *contract.Txn

Approve sends a approve transaction in the solidity contract

func (*ERC20) BalanceOf

func (_a *ERC20) BalanceOf(owner web3.Address, block ...web3.BlockNumber) (retval0 *big.Int, err error)

BalanceOf calls the balanceOf method in the solidity contract

func (*ERC20) Contract

func (_a *ERC20) Contract() *contract.Contract

Contract returns the contract object

func (*ERC20) Decimals

func (_a *ERC20) Decimals(block ...web3.BlockNumber) (retval0 uint8, err error)

Decimals calls the decimals method in the solidity contract

func (*ERC20) FilterApproval

func (a *ERC20) FilterApproval(opts *web3.FilterOpts, _owner []web3.Address, _spender []web3.Address) ([]*web3.Log, error)

func (*ERC20) FilterApprovalEvent

func (_a *ERC20) FilterApprovalEvent(owner []web3.Address, spender []web3.Address, startBlock uint64, endBlock ...uint64) ([]*ApprovalEvent, error)

func (*ERC20) FilterTransfer

func (a *ERC20) FilterTransfer(opts *web3.FilterOpts, from []web3.Address, to []web3.Address) ([]*web3.Log, error)

func (*ERC20) FilterTransferEvent

func (_a *ERC20) FilterTransferEvent(from []web3.Address, to []web3.Address, startBlock uint64, endBlock ...uint64) ([]*TransferEvent, error)

func (*ERC20) Name

func (_a *ERC20) Name(block ...web3.BlockNumber) (retval0 string, err error)

Name calls the name method in the solidity contract

func (*ERC20) Symbol

func (_a *ERC20) Symbol(block ...web3.BlockNumber) (retval0 string, err error)

Symbol calls the symbol method in the solidity contract

func (*ERC20) TotalSupply

func (_a *ERC20) TotalSupply(block ...web3.BlockNumber) (retval0 *big.Int, err error)

TotalSupply calls the totalSupply method in the solidity contract

func (*ERC20) Transfer

func (_a *ERC20) Transfer(to web3.Address, value *big.Int) *contract.Txn

Transfer sends a transfer transaction in the solidity contract

func (*ERC20) TransferFrom

func (_a *ERC20) TransferFrom(from web3.Address, to web3.Address, value *big.Int) *contract.Txn

TransferFrom sends a transferFrom transaction in the solidity contract

func (*ERC20) TransferTopicFilter added in v0.1.2

func (_a *ERC20) TransferTopicFilter(from []web3.Address, to []web3.Address) [][]web3.Hash

type TransferEvent

type TransferEvent struct {
	From  web3.Address
	To    web3.Address
	Value *big.Int

	Raw *web3.Log
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL