Documentation ¶
Index ¶
- Variables
- func FindSingleEvent(abi *abi.ABI, receipt *types.Receipt, contractAddress common.Address, ...) error
- func IsSynced(ctx context.Context, backend Backend, maxDelay time.Duration) (bool, error)
- func NewService(logger logging.Logger, backend Backend, signer crypto.Signer, ...) (chain.Transaction, error)
- func ParseABIUnchecked(json string) abi.ABI
- func ParseEvent(a *abi.ABI, eventName string, c interface{}, e types.Log) error
- func WaitSynced(ctx context.Context, backend Backend, maxDelay time.Duration) error
- type Backend
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrEventNotFound = errors.New("event not found") ErrNoTopic = errors.New("no topic") )
View Source
var ( // ErrTransactionReverted denotes that the sent transaction has been // reverted. ErrTransactionReverted = errors.New("transaction reverted") )
Functions ¶
func FindSingleEvent ¶
func FindSingleEvent(abi *abi.ABI, receipt *types.Receipt, contractAddress common.Address, event abi.Event, out interface{}) error
FindSingleEvent will find the first event of the given kind.
func IsSynced ¶
IsSynced will check if we are synced with the given blockchain backend. This is true if the current wall clock is after the block time of last block with the given maxDelay as the maximum duration we can be behind the block time.
func NewService ¶
func NewService(logger logging.Logger, backend Backend, signer crypto.Signer, store storage.StateStorer, chainID *big.Int) (chain.Transaction, error)
NewService creates a new transaction service.
func ParseABIUnchecked ¶
ParseABIUnchecked will parse a valid json abi. Only use this with string constants known to be correct.
func ParseEvent ¶
ParseEvent will parse the specified abi event from the given log
Types ¶
type Backend ¶
type Backend interface { bind.ContractBackend TransactionReceipt(ctx context.Context, txHash common.Hash) (*types.Receipt, error) TransactionByHash(ctx context.Context, hash common.Hash) (tx *types.Transaction, isPending bool, err error) BlockNumber(ctx context.Context) (uint64, error) HeaderByNumber(ctx context.Context, number *big.Int) (*types.Header, error) BalanceAt(ctx context.Context, address common.Address, block *big.Int) (*big.Int, error) }
Backend is the minimum of blockchain backend functions we need.
Click to show internal directories.
Click to hide internal directories.