client

package
v0.9.1 Latest Latest
Warning

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

Go to latest
Published: Dec 19, 2018 License: LGPL-3.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// ChunkSize defines the chuck size to get balances from geth
	ChunkSize = 1000
)

Variables

View Source
var (
	ErrInvalidTDFormat = errors.New("invalid td format")
)

Functions

This section is empty.

Types

type Balancer added in v0.2.0

type Balancer interface {
	// BalanceOf returns the balances of ETH and multiple erc20 tokens for multiple accounts
	BalanceOf(context.Context, ethCommon.Hash, map[ethCommon.Address]map[ethCommon.Address]*big.Int) error
}

Balancer is a wrapper interface to batch get balances

type EthClient

type EthClient interface {
	Balancer

	BlockByNumber(ctx context.Context, number *big.Int) (*types.Block, error)
	BlockByHash(ctx context.Context, hash common.Hash) (*types.Block, error)
	TransactionByHash(ctx context.Context, hash common.Hash) (tx *types.Transaction, isPending bool, err error)
	UncleByBlockHashAndPosition(ctx context.Context, hash common.Hash, position uint) (*types.Header, error)
	UnclesByBlockHash(ctx context.Context, blockHash common.Hash) ([]*types.Header, error)
	SubscribeNewHead(ctx context.Context, ch chan<- *types.Header) (ethereum.Subscription, error)
	GetERC20(ctx context.Context, addr common.Address) (*model.ERC20, error)
	GetTotalDifficulty(ctx context.Context, hash common.Hash) (*big.Int, error)
	GetBlockReceipts(ctx context.Context, hash common.Hash) (types.Receipts, error)
	// Get ETH transfer logs
	GetTransferLogs(ctx context.Context, hash common.Hash) ([]*types.TransferLog, error)
	BatchBalanceAt(ctx context.Context, accounts []common.Address, blockHash common.Hash) ([]*big.Int, error)
	BatchCallContract(ctx context.Context, msgs []*ethereum.CallMsg, blockHash common.Hash) ([][]byte, error)
	Close()
}

func NewClient

func NewClient(url string) (EthClient, error)

Directories

Path Synopsis
Code generated by mockery v1.0.0 Code generated by mockery v1.0.0
Code generated by mockery v1.0.0 Code generated by mockery v1.0.0

Jump to

Keyboard shortcuts

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