multicall3

package
v0.0.0-...-0938a70 Latest Latest
Warning

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

Go to latest
Published: Dec 11, 2025 License: MPL-2.0 Imports: 9 Imported by: 0

README

Multicall3

Multicall3 has two main use cases:

  • Aggregate results from multiple contract reads into a single JSON-RPC request.
  • Execute multiple state-changing calls in a single transaction.

Copied over from https://github.com/mds1/multicall3.

Go bindings multicall3.go autogenerated with

solc --abi IMulticall3.sol -o build
abigen --abi build/IMulticall3.abi --pkg multicall3 --out multicall3.go

Deployments

deployments.go provides the contract address for different chains. It is generated using the deployments util, which consumes deployments.json. To regenerate the file:

cd deployments
go run .

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Multicall3ABI = Multicall3MetaData.ABI

Multicall3ABI is the input ABI used to generate the binding from. Deprecated: Use Multicall3MetaData.ABI instead.

View Source
var Multicall3Addresses = map[int64]common.Address{}/* 282 elements not displayed */

Multicall3Addresses maps chain ID to the deployed Multicall3 contract address

View Source
var Multicall3MetaData = &bind.MetaData{
	ABI: "[{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"internalType\":\"structIMulticall3.Call[]\",\"name\":\"calls\",\"type\":\"tuple[]\"}],\"name\":\"aggregate\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"bytes[]\",\"name\":\"returnData\",\"type\":\"bytes[]\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"allowFailure\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"internalType\":\"structIMulticall3.Call3[]\",\"name\":\"calls\",\"type\":\"tuple[]\"}],\"name\":\"aggregate3\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"returnData\",\"type\":\"bytes\"}],\"internalType\":\"structIMulticall3.Result[]\",\"name\":\"returnData\",\"type\":\"tuple[]\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"allowFailure\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"internalType\":\"structIMulticall3.Call3Value[]\",\"name\":\"calls\",\"type\":\"tuple[]\"}],\"name\":\"aggregate3Value\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"returnData\",\"type\":\"bytes\"}],\"internalType\":\"structIMulticall3.Result[]\",\"name\":\"returnData\",\"type\":\"tuple[]\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"internalType\":\"structIMulticall3.Call[]\",\"name\":\"calls\",\"type\":\"tuple[]\"}],\"name\":\"blockAndAggregate\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"returnData\",\"type\":\"bytes\"}],\"internalType\":\"structIMulticall3.Result[]\",\"name\":\"returnData\",\"type\":\"tuple[]\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBasefee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"basefee\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"}],\"name\":\"getBlockHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBlockNumber\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getChainId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"chainid\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getCurrentBlockCoinbase\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"coinbase\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getCurrentBlockDifficulty\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"difficulty\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getCurrentBlockGasLimit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"gaslimit\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getCurrentBlockTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getEthBalance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"balance\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLastBlockHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"requireSuccess\",\"type\":\"bool\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"internalType\":\"structIMulticall3.Call[]\",\"name\":\"calls\",\"type\":\"tuple[]\"}],\"name\":\"tryAggregate\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"returnData\",\"type\":\"bytes\"}],\"internalType\":\"structIMulticall3.Result[]\",\"name\":\"returnData\",\"type\":\"tuple[]\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"requireSuccess\",\"type\":\"bool\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"internalType\":\"structIMulticall3.Call[]\",\"name\":\"calls\",\"type\":\"tuple[]\"}],\"name\":\"tryBlockAndAggregate\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"returnData\",\"type\":\"bytes\"}],\"internalType\":\"structIMulticall3.Result[]\",\"name\":\"returnData\",\"type\":\"tuple[]\"}],\"stateMutability\":\"payable\",\"type\":\"function\"}]",
}

Multicall3MetaData contains all meta data concerning the Multicall3 contract.

Functions

func GetMulticall3Address

func GetMulticall3Address(chainID int64) (common.Address, bool)

GetMulticall3Address returns the Multicall3 contract address for the given chain ID

func GetSupportedChainIDs

func GetSupportedChainIDs() []int64

GetSupportedChainIDs returns a slice of all supported chain IDs

func IsChainSupported

func IsChainSupported(chainID int64) bool

IsChainSupported returns true if the given chain ID has a deployed Multicall3 contract

Types

type IMulticall3Call

type IMulticall3Call struct {
	Target   common.Address
	CallData []byte
}

IMulticall3Call is an auto generated low-level Go binding around an user-defined struct.

type IMulticall3Call3

type IMulticall3Call3 struct {
	Target       common.Address
	AllowFailure bool
	CallData     []byte
}

IMulticall3Call3 is an auto generated low-level Go binding around an user-defined struct.

type IMulticall3Call3Value

type IMulticall3Call3Value struct {
	Target       common.Address
	AllowFailure bool
	Value        *big.Int
	CallData     []byte
}

IMulticall3Call3Value is an auto generated low-level Go binding around an user-defined struct.

type IMulticall3Result

type IMulticall3Result struct {
	Success    bool
	ReturnData []byte
}

IMulticall3Result is an auto generated low-level Go binding around an user-defined struct.

type Multicall3

type Multicall3 struct {
	Multicall3Caller     // Read-only binding to the contract
	Multicall3Transactor // Write-only binding to the contract
	Multicall3Filterer   // Log filterer for contract events
}

Multicall3 is an auto generated Go binding around an Ethereum contract.

func NewMulticall3

func NewMulticall3(address common.Address, backend bind.ContractBackend) (*Multicall3, error)

NewMulticall3 creates a new instance of Multicall3, bound to a specific deployed contract.

type Multicall3Caller

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

Multicall3Caller is an auto generated read-only Go binding around an Ethereum contract.

func NewMulticall3Caller

func NewMulticall3Caller(address common.Address, caller bind.ContractCaller) (*Multicall3Caller, error)

NewMulticall3Caller creates a new read-only instance of Multicall3, bound to a specific deployed contract.

func (*Multicall3Caller) GetBasefee

func (_Multicall3 *Multicall3Caller) GetBasefee(opts *bind.CallOpts) (*big.Int, error)

GetBasefee is a free data retrieval call binding the contract method 0x3e64a696.

Solidity: function getBasefee() view returns(uint256 basefee)

func (*Multicall3Caller) GetBlockHash

func (_Multicall3 *Multicall3Caller) GetBlockHash(opts *bind.CallOpts, blockNumber *big.Int) ([32]byte, error)

GetBlockHash is a free data retrieval call binding the contract method 0xee82ac5e.

Solidity: function getBlockHash(uint256 blockNumber) view returns(bytes32 blockHash)

func (*Multicall3Caller) GetBlockNumber

func (_Multicall3 *Multicall3Caller) GetBlockNumber(opts *bind.CallOpts) (*big.Int, error)

GetBlockNumber is a free data retrieval call binding the contract method 0x42cbb15c.

Solidity: function getBlockNumber() view returns(uint256 blockNumber)

func (*Multicall3Caller) GetChainId

func (_Multicall3 *Multicall3Caller) GetChainId(opts *bind.CallOpts) (*big.Int, error)

GetChainId is a free data retrieval call binding the contract method 0x3408e470.

Solidity: function getChainId() view returns(uint256 chainid)

func (*Multicall3Caller) GetCurrentBlockCoinbase

func (_Multicall3 *Multicall3Caller) GetCurrentBlockCoinbase(opts *bind.CallOpts) (common.Address, error)

GetCurrentBlockCoinbase is a free data retrieval call binding the contract method 0xa8b0574e.

Solidity: function getCurrentBlockCoinbase() view returns(address coinbase)

func (*Multicall3Caller) GetCurrentBlockDifficulty

func (_Multicall3 *Multicall3Caller) GetCurrentBlockDifficulty(opts *bind.CallOpts) (*big.Int, error)

GetCurrentBlockDifficulty is a free data retrieval call binding the contract method 0x72425d9d.

Solidity: function getCurrentBlockDifficulty() view returns(uint256 difficulty)

func (*Multicall3Caller) GetCurrentBlockGasLimit

func (_Multicall3 *Multicall3Caller) GetCurrentBlockGasLimit(opts *bind.CallOpts) (*big.Int, error)

GetCurrentBlockGasLimit is a free data retrieval call binding the contract method 0x86d516e8.

Solidity: function getCurrentBlockGasLimit() view returns(uint256 gaslimit)

func (*Multicall3Caller) GetCurrentBlockTimestamp

func (_Multicall3 *Multicall3Caller) GetCurrentBlockTimestamp(opts *bind.CallOpts) (*big.Int, error)

GetCurrentBlockTimestamp is a free data retrieval call binding the contract method 0x0f28c97d.

Solidity: function getCurrentBlockTimestamp() view returns(uint256 timestamp)

func (*Multicall3Caller) GetEthBalance

func (_Multicall3 *Multicall3Caller) GetEthBalance(opts *bind.CallOpts, addr common.Address) (*big.Int, error)

GetEthBalance is a free data retrieval call binding the contract method 0x4d2301cc.

Solidity: function getEthBalance(address addr) view returns(uint256 balance)

func (*Multicall3Caller) GetLastBlockHash

func (_Multicall3 *Multicall3Caller) GetLastBlockHash(opts *bind.CallOpts) ([32]byte, error)

GetLastBlockHash is a free data retrieval call binding the contract method 0x27e86d6e.

Solidity: function getLastBlockHash() view returns(bytes32 blockHash)

func (*Multicall3Caller) ViewAggregate

func (_Multicall3 *Multicall3Caller) ViewAggregate(opts *bind.CallOpts, calls []IMulticall3Call) (*big.Int, []byte, error)

ViewAggregate is a free data retrieval call binding the contract method 0x252dba42.

Solidity: function aggregate((address,bytes)[] calls) payable returns(uint256 blockNumber, bytes[] returnData)

func (*Multicall3Caller) ViewAggregate3

func (_Multicall3 *Multicall3Caller) ViewAggregate3(opts *bind.CallOpts, calls []IMulticall3Call3) ([]IMulticall3Result, error)

ViewAggregate3 is a free data retrieval call binding the contract method 0x82ad56cb.

Solidity: function aggregate3((address,bool,bytes)[] calls) payable returns((bool,bytes)[] returnData)

func (*Multicall3Caller) ViewAggregate3Value

func (_Multicall3 *Multicall3Caller) ViewAggregate3Value(opts *bind.CallOpts, calls []IMulticall3Call3Value) ([]IMulticall3Result, error)

ViewAggregate3Value is a free data retrieval call binding the contract method 0x174dea71.

Solidity: function aggregate3Value((address,bool,uint256,bytes)[] calls) payable returns((bool,bytes)[] returnData)

func (*Multicall3Caller) ViewBlockAndAggregate

func (_Multicall3 *Multicall3Caller) ViewBlockAndAggregate(opts *bind.CallOpts, calls []IMulticall3Call) (*big.Int, [32]byte, []IMulticall3Result, error)

ViewBlockAndAggregate is a free data retrieval call binding the contract method 0xc3077fa9.

Solidity: function blockAndAggregate((address,bytes)[] calls) payable returns(uint256 blockNumber, bytes32 blockHash, (bool,bytes)[] returnData)

func (*Multicall3Caller) ViewTryAggregate

func (_Multicall3 *Multicall3Caller) ViewTryAggregate(opts *bind.CallOpts, requireSuccess bool, calls []IMulticall3Call) ([]IMulticall3Result, error)

ViewTryAggregate is a free data retrieval call binding the contract method 0xbce38bd7.

Solidity: function tryAggregate(bool requireSuccess, (address,bytes)[] calls) payable returns((bool,bytes)[] returnData)

func (*Multicall3Caller) ViewTryBlockAndAggregate

func (_Multicall3 *Multicall3Caller) ViewTryBlockAndAggregate(opts *bind.CallOpts, requireSuccess bool, calls []IMulticall3Call) (*big.Int, [32]byte, []IMulticall3Result, error)

ViewTryBlockAndAggregate is a free data retrieval call binding the contract method 0x399542e9.

Solidity: function tryBlockAndAggregate(bool requireSuccess, (address,bytes)[] calls) payable returns(uint256 blockNumber, bytes32 blockHash, (bool,bytes)[] returnData)

type Multicall3CallerRaw

type Multicall3CallerRaw struct {
	Contract *Multicall3Caller // Generic read-only contract binding to access the raw methods on
}

Multicall3CallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.

func (*Multicall3CallerRaw) Call

func (_Multicall3 *Multicall3CallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

type Multicall3CallerSession

type Multicall3CallerSession struct {
	Contract *Multicall3Caller // Generic contract caller binding to set the session for
	CallOpts bind.CallOpts     // Call options to use throughout this session
}

Multicall3CallerSession is an auto generated read-only Go binding around an Ethereum contract, with pre-set call options.

func (*Multicall3CallerSession) GetBasefee

func (_Multicall3 *Multicall3CallerSession) GetBasefee() (*big.Int, error)

GetBasefee is a free data retrieval call binding the contract method 0x3e64a696.

Solidity: function getBasefee() view returns(uint256 basefee)

func (*Multicall3CallerSession) GetBlockHash

func (_Multicall3 *Multicall3CallerSession) GetBlockHash(blockNumber *big.Int) ([32]byte, error)

GetBlockHash is a free data retrieval call binding the contract method 0xee82ac5e.

Solidity: function getBlockHash(uint256 blockNumber) view returns(bytes32 blockHash)

func (*Multicall3CallerSession) GetBlockNumber

func (_Multicall3 *Multicall3CallerSession) GetBlockNumber() (*big.Int, error)

GetBlockNumber is a free data retrieval call binding the contract method 0x42cbb15c.

Solidity: function getBlockNumber() view returns(uint256 blockNumber)

func (*Multicall3CallerSession) GetChainId

func (_Multicall3 *Multicall3CallerSession) GetChainId() (*big.Int, error)

GetChainId is a free data retrieval call binding the contract method 0x3408e470.

Solidity: function getChainId() view returns(uint256 chainid)

func (*Multicall3CallerSession) GetCurrentBlockCoinbase

func (_Multicall3 *Multicall3CallerSession) GetCurrentBlockCoinbase() (common.Address, error)

GetCurrentBlockCoinbase is a free data retrieval call binding the contract method 0xa8b0574e.

Solidity: function getCurrentBlockCoinbase() view returns(address coinbase)

func (*Multicall3CallerSession) GetCurrentBlockDifficulty

func (_Multicall3 *Multicall3CallerSession) GetCurrentBlockDifficulty() (*big.Int, error)

GetCurrentBlockDifficulty is a free data retrieval call binding the contract method 0x72425d9d.

Solidity: function getCurrentBlockDifficulty() view returns(uint256 difficulty)

func (*Multicall3CallerSession) GetCurrentBlockGasLimit

func (_Multicall3 *Multicall3CallerSession) GetCurrentBlockGasLimit() (*big.Int, error)

GetCurrentBlockGasLimit is a free data retrieval call binding the contract method 0x86d516e8.

Solidity: function getCurrentBlockGasLimit() view returns(uint256 gaslimit)

func (*Multicall3CallerSession) GetCurrentBlockTimestamp

func (_Multicall3 *Multicall3CallerSession) GetCurrentBlockTimestamp() (*big.Int, error)

GetCurrentBlockTimestamp is a free data retrieval call binding the contract method 0x0f28c97d.

Solidity: function getCurrentBlockTimestamp() view returns(uint256 timestamp)

func (*Multicall3CallerSession) GetEthBalance

func (_Multicall3 *Multicall3CallerSession) GetEthBalance(addr common.Address) (*big.Int, error)

GetEthBalance is a free data retrieval call binding the contract method 0x4d2301cc.

Solidity: function getEthBalance(address addr) view returns(uint256 balance)

func (*Multicall3CallerSession) GetLastBlockHash

func (_Multicall3 *Multicall3CallerSession) GetLastBlockHash() ([32]byte, error)

GetLastBlockHash is a free data retrieval call binding the contract method 0x27e86d6e.

Solidity: function getLastBlockHash() view returns(bytes32 blockHash)

func (*Multicall3CallerSession) ViewAggregate

func (_Multicall3 *Multicall3CallerSession) ViewAggregate(calls []IMulticall3Call) (*big.Int, []byte, error)

func (*Multicall3CallerSession) ViewAggregate3

func (_Multicall3 *Multicall3CallerSession) ViewAggregate3(calls []IMulticall3Call3) ([]IMulticall3Result, error)

func (*Multicall3CallerSession) ViewAggregate3Value

func (_Multicall3 *Multicall3CallerSession) ViewAggregate3Value(calls []IMulticall3Call3Value) ([]IMulticall3Result, error)

func (*Multicall3CallerSession) ViewBlockAndAggregate

func (_Multicall3 *Multicall3CallerSession) ViewBlockAndAggregate(calls []IMulticall3Call) (*big.Int, [32]byte, []IMulticall3Result, error)

func (*Multicall3CallerSession) ViewTryAggregate

func (_Multicall3 *Multicall3CallerSession) ViewTryAggregate(requireSuccess bool, calls []IMulticall3Call) ([]IMulticall3Result, error)

func (*Multicall3CallerSession) ViewTryBlockAndAggregate

func (_Multicall3 *Multicall3CallerSession) ViewTryBlockAndAggregate(requireSuccess bool, calls []IMulticall3Call) (*big.Int, [32]byte, []IMulticall3Result, error)

type Multicall3Filterer

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

Multicall3Filterer is an auto generated log filtering Go binding around an Ethereum contract events.

func NewMulticall3Filterer

func NewMulticall3Filterer(address common.Address, filterer bind.ContractFilterer) (*Multicall3Filterer, error)

NewMulticall3Filterer creates a new log filterer instance of Multicall3, bound to a specific deployed contract.

type Multicall3Raw

type Multicall3Raw struct {
	Contract *Multicall3 // Generic contract binding to access the raw methods on
}

Multicall3Raw is an auto generated low-level Go binding around an Ethereum contract.

func (*Multicall3Raw) Call

func (_Multicall3 *Multicall3Raw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

func (*Multicall3Raw) Transact

func (_Multicall3 *Multicall3Raw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*Multicall3Raw) Transfer

func (_Multicall3 *Multicall3Raw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type Multicall3Session

type Multicall3Session struct {
	Contract     *Multicall3       // Generic contract binding to set the session for
	CallOpts     bind.CallOpts     // Call options to use throughout this session
	TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
}

Multicall3Session is an auto generated Go binding around an Ethereum contract, with pre-set call and transact options.

func (*Multicall3Session) Aggregate

func (_Multicall3 *Multicall3Session) Aggregate(calls []IMulticall3Call) (*types.Transaction, error)

Aggregate is a paid mutator transaction binding the contract method 0x252dba42.

Solidity: function aggregate((address,bytes)[] calls) payable returns(uint256 blockNumber, bytes[] returnData)

func (*Multicall3Session) Aggregate3

func (_Multicall3 *Multicall3Session) Aggregate3(calls []IMulticall3Call3) (*types.Transaction, error)

Aggregate3 is a paid mutator transaction binding the contract method 0x82ad56cb.

Solidity: function aggregate3((address,bool,bytes)[] calls) payable returns((bool,bytes)[] returnData)

func (*Multicall3Session) Aggregate3Value

func (_Multicall3 *Multicall3Session) Aggregate3Value(calls []IMulticall3Call3Value) (*types.Transaction, error)

Aggregate3Value is a paid mutator transaction binding the contract method 0x174dea71.

Solidity: function aggregate3Value((address,bool,uint256,bytes)[] calls) payable returns((bool,bytes)[] returnData)

func (*Multicall3Session) BlockAndAggregate

func (_Multicall3 *Multicall3Session) BlockAndAggregate(calls []IMulticall3Call) (*types.Transaction, error)

BlockAndAggregate is a paid mutator transaction binding the contract method 0xc3077fa9.

Solidity: function blockAndAggregate((address,bytes)[] calls) payable returns(uint256 blockNumber, bytes32 blockHash, (bool,bytes)[] returnData)

func (*Multicall3Session) GetBasefee

func (_Multicall3 *Multicall3Session) GetBasefee() (*big.Int, error)

GetBasefee is a free data retrieval call binding the contract method 0x3e64a696.

Solidity: function getBasefee() view returns(uint256 basefee)

func (*Multicall3Session) GetBlockHash

func (_Multicall3 *Multicall3Session) GetBlockHash(blockNumber *big.Int) ([32]byte, error)

GetBlockHash is a free data retrieval call binding the contract method 0xee82ac5e.

Solidity: function getBlockHash(uint256 blockNumber) view returns(bytes32 blockHash)

func (*Multicall3Session) GetBlockNumber

func (_Multicall3 *Multicall3Session) GetBlockNumber() (*big.Int, error)

GetBlockNumber is a free data retrieval call binding the contract method 0x42cbb15c.

Solidity: function getBlockNumber() view returns(uint256 blockNumber)

func (*Multicall3Session) GetChainId

func (_Multicall3 *Multicall3Session) GetChainId() (*big.Int, error)

GetChainId is a free data retrieval call binding the contract method 0x3408e470.

Solidity: function getChainId() view returns(uint256 chainid)

func (*Multicall3Session) GetCurrentBlockCoinbase

func (_Multicall3 *Multicall3Session) GetCurrentBlockCoinbase() (common.Address, error)

GetCurrentBlockCoinbase is a free data retrieval call binding the contract method 0xa8b0574e.

Solidity: function getCurrentBlockCoinbase() view returns(address coinbase)

func (*Multicall3Session) GetCurrentBlockDifficulty

func (_Multicall3 *Multicall3Session) GetCurrentBlockDifficulty() (*big.Int, error)

GetCurrentBlockDifficulty is a free data retrieval call binding the contract method 0x72425d9d.

Solidity: function getCurrentBlockDifficulty() view returns(uint256 difficulty)

func (*Multicall3Session) GetCurrentBlockGasLimit

func (_Multicall3 *Multicall3Session) GetCurrentBlockGasLimit() (*big.Int, error)

GetCurrentBlockGasLimit is a free data retrieval call binding the contract method 0x86d516e8.

Solidity: function getCurrentBlockGasLimit() view returns(uint256 gaslimit)

func (*Multicall3Session) GetCurrentBlockTimestamp

func (_Multicall3 *Multicall3Session) GetCurrentBlockTimestamp() (*big.Int, error)

GetCurrentBlockTimestamp is a free data retrieval call binding the contract method 0x0f28c97d.

Solidity: function getCurrentBlockTimestamp() view returns(uint256 timestamp)

func (*Multicall3Session) GetEthBalance

func (_Multicall3 *Multicall3Session) GetEthBalance(addr common.Address) (*big.Int, error)

GetEthBalance is a free data retrieval call binding the contract method 0x4d2301cc.

Solidity: function getEthBalance(address addr) view returns(uint256 balance)

func (*Multicall3Session) GetLastBlockHash

func (_Multicall3 *Multicall3Session) GetLastBlockHash() ([32]byte, error)

GetLastBlockHash is a free data retrieval call binding the contract method 0x27e86d6e.

Solidity: function getLastBlockHash() view returns(bytes32 blockHash)

func (*Multicall3Session) TryAggregate

func (_Multicall3 *Multicall3Session) TryAggregate(requireSuccess bool, calls []IMulticall3Call) (*types.Transaction, error)

TryAggregate is a paid mutator transaction binding the contract method 0xbce38bd7.

Solidity: function tryAggregate(bool requireSuccess, (address,bytes)[] calls) payable returns((bool,bytes)[] returnData)

func (*Multicall3Session) TryBlockAndAggregate

func (_Multicall3 *Multicall3Session) TryBlockAndAggregate(requireSuccess bool, calls []IMulticall3Call) (*types.Transaction, error)

TryBlockAndAggregate is a paid mutator transaction binding the contract method 0x399542e9.

Solidity: function tryBlockAndAggregate(bool requireSuccess, (address,bytes)[] calls) payable returns(uint256 blockNumber, bytes32 blockHash, (bool,bytes)[] returnData)

func (*Multicall3Session) ViewAggregate

func (_Multicall3 *Multicall3Session) ViewAggregate(calls []IMulticall3Call) (*big.Int, []byte, error)

func (*Multicall3Session) ViewAggregate3

func (_Multicall3 *Multicall3Session) ViewAggregate3(calls []IMulticall3Call3) ([]IMulticall3Result, error)

func (*Multicall3Session) ViewAggregate3Value

func (_Multicall3 *Multicall3Session) ViewAggregate3Value(calls []IMulticall3Call3Value) ([]IMulticall3Result, error)

func (*Multicall3Session) ViewBlockAndAggregate

func (_Multicall3 *Multicall3Session) ViewBlockAndAggregate(calls []IMulticall3Call) (*big.Int, [32]byte, []IMulticall3Result, error)

func (*Multicall3Session) ViewTryAggregate

func (_Multicall3 *Multicall3Session) ViewTryAggregate(requireSuccess bool, calls []IMulticall3Call) ([]IMulticall3Result, error)

func (*Multicall3Session) ViewTryBlockAndAggregate

func (_Multicall3 *Multicall3Session) ViewTryBlockAndAggregate(requireSuccess bool, calls []IMulticall3Call) (*big.Int, [32]byte, []IMulticall3Result, error)

type Multicall3Transactor

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

Multicall3Transactor is an auto generated write-only Go binding around an Ethereum contract.

func NewMulticall3Transactor

func NewMulticall3Transactor(address common.Address, transactor bind.ContractTransactor) (*Multicall3Transactor, error)

NewMulticall3Transactor creates a new write-only instance of Multicall3, bound to a specific deployed contract.

func (*Multicall3Transactor) Aggregate

func (_Multicall3 *Multicall3Transactor) Aggregate(opts *bind.TransactOpts, calls []IMulticall3Call) (*types.Transaction, error)

Aggregate is a paid mutator transaction binding the contract method 0x252dba42.

Solidity: function aggregate((address,bytes)[] calls) payable returns(uint256 blockNumber, bytes[] returnData)

func (*Multicall3Transactor) Aggregate3

func (_Multicall3 *Multicall3Transactor) Aggregate3(opts *bind.TransactOpts, calls []IMulticall3Call3) (*types.Transaction, error)

Aggregate3 is a paid mutator transaction binding the contract method 0x82ad56cb.

Solidity: function aggregate3((address,bool,bytes)[] calls) payable returns((bool,bytes)[] returnData)

func (*Multicall3Transactor) Aggregate3Value

func (_Multicall3 *Multicall3Transactor) Aggregate3Value(opts *bind.TransactOpts, calls []IMulticall3Call3Value) (*types.Transaction, error)

Aggregate3Value is a paid mutator transaction binding the contract method 0x174dea71.

Solidity: function aggregate3Value((address,bool,uint256,bytes)[] calls) payable returns((bool,bytes)[] returnData)

func (*Multicall3Transactor) BlockAndAggregate

func (_Multicall3 *Multicall3Transactor) BlockAndAggregate(opts *bind.TransactOpts, calls []IMulticall3Call) (*types.Transaction, error)

BlockAndAggregate is a paid mutator transaction binding the contract method 0xc3077fa9.

Solidity: function blockAndAggregate((address,bytes)[] calls) payable returns(uint256 blockNumber, bytes32 blockHash, (bool,bytes)[] returnData)

func (*Multicall3Transactor) TryAggregate

func (_Multicall3 *Multicall3Transactor) TryAggregate(opts *bind.TransactOpts, requireSuccess bool, calls []IMulticall3Call) (*types.Transaction, error)

TryAggregate is a paid mutator transaction binding the contract method 0xbce38bd7.

Solidity: function tryAggregate(bool requireSuccess, (address,bytes)[] calls) payable returns((bool,bytes)[] returnData)

func (*Multicall3Transactor) TryBlockAndAggregate

func (_Multicall3 *Multicall3Transactor) TryBlockAndAggregate(opts *bind.TransactOpts, requireSuccess bool, calls []IMulticall3Call) (*types.Transaction, error)

TryBlockAndAggregate is a paid mutator transaction binding the contract method 0x399542e9.

Solidity: function tryBlockAndAggregate(bool requireSuccess, (address,bytes)[] calls) payable returns(uint256 blockNumber, bytes32 blockHash, (bool,bytes)[] returnData)

type Multicall3TransactorRaw

type Multicall3TransactorRaw struct {
	Contract *Multicall3Transactor // Generic write-only contract binding to access the raw methods on
}

Multicall3TransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.

func (*Multicall3TransactorRaw) Transact

func (_Multicall3 *Multicall3TransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*Multicall3TransactorRaw) Transfer

func (_Multicall3 *Multicall3TransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type Multicall3TransactorSession

type Multicall3TransactorSession struct {
	Contract     *Multicall3Transactor // Generic contract transactor binding to set the session for
	TransactOpts bind.TransactOpts     // Transaction auth options to use throughout this session
}

Multicall3TransactorSession is an auto generated write-only Go binding around an Ethereum contract, with pre-set transact options.

func (*Multicall3TransactorSession) Aggregate

func (_Multicall3 *Multicall3TransactorSession) Aggregate(calls []IMulticall3Call) (*types.Transaction, error)

Aggregate is a paid mutator transaction binding the contract method 0x252dba42.

Solidity: function aggregate((address,bytes)[] calls) payable returns(uint256 blockNumber, bytes[] returnData)

func (*Multicall3TransactorSession) Aggregate3

func (_Multicall3 *Multicall3TransactorSession) Aggregate3(calls []IMulticall3Call3) (*types.Transaction, error)

Aggregate3 is a paid mutator transaction binding the contract method 0x82ad56cb.

Solidity: function aggregate3((address,bool,bytes)[] calls) payable returns((bool,bytes)[] returnData)

func (*Multicall3TransactorSession) Aggregate3Value

func (_Multicall3 *Multicall3TransactorSession) Aggregate3Value(calls []IMulticall3Call3Value) (*types.Transaction, error)

Aggregate3Value is a paid mutator transaction binding the contract method 0x174dea71.

Solidity: function aggregate3Value((address,bool,uint256,bytes)[] calls) payable returns((bool,bytes)[] returnData)

func (*Multicall3TransactorSession) BlockAndAggregate

func (_Multicall3 *Multicall3TransactorSession) BlockAndAggregate(calls []IMulticall3Call) (*types.Transaction, error)

BlockAndAggregate is a paid mutator transaction binding the contract method 0xc3077fa9.

Solidity: function blockAndAggregate((address,bytes)[] calls) payable returns(uint256 blockNumber, bytes32 blockHash, (bool,bytes)[] returnData)

func (*Multicall3TransactorSession) TryAggregate

func (_Multicall3 *Multicall3TransactorSession) TryAggregate(requireSuccess bool, calls []IMulticall3Call) (*types.Transaction, error)

TryAggregate is a paid mutator transaction binding the contract method 0xbce38bd7.

Solidity: function tryAggregate(bool requireSuccess, (address,bytes)[] calls) payable returns((bool,bytes)[] returnData)

func (*Multicall3TransactorSession) TryBlockAndAggregate

func (_Multicall3 *Multicall3TransactorSession) TryBlockAndAggregate(requireSuccess bool, calls []IMulticall3Call) (*types.Transaction, error)

TryBlockAndAggregate is a paid mutator transaction binding the contract method 0x399542e9.

Solidity: function tryBlockAndAggregate(bool requireSuccess, (address,bytes)[] calls) payable returns(uint256 blockNumber, bytes32 blockHash, (bool,bytes)[] returnData)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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