github.com/0xPolygon/supernets2-node@v0.0.0-20230711153321-2fe574524eaa/test/contracts/bin/uniswap/v2/interface/UniswapInterfaceMulticall/UniswapInterfaceMulticall.go (about) 1 // Code generated - DO NOT EDIT. 2 // This file is a generated binding and any manual changes will be lost. 3 4 package UniswapInterfaceMulticall 5 6 import ( 7 "errors" 8 "math/big" 9 "strings" 10 11 ethereum "github.com/ethereum/go-ethereum" 12 "github.com/ethereum/go-ethereum/accounts/abi" 13 "github.com/ethereum/go-ethereum/accounts/abi/bind" 14 "github.com/ethereum/go-ethereum/common" 15 "github.com/ethereum/go-ethereum/core/types" 16 "github.com/ethereum/go-ethereum/event" 17 ) 18 19 // Reference imports to suppress errors if they are not otherwise used. 20 var ( 21 _ = errors.New 22 _ = big.NewInt 23 _ = strings.NewReader 24 _ = ethereum.NotFound 25 _ = bind.Bind 26 _ = common.Big1 27 _ = types.BloomLookup 28 _ = event.NewSubscription 29 _ = abi.ConvertType 30 ) 31 32 // UniswapInterfaceMulticallCall is an auto generated low-level Go binding around an user-defined struct. 33 type UniswapInterfaceMulticallCall struct { 34 Target common.Address 35 GasLimit *big.Int 36 CallData []byte 37 } 38 39 // UniswapInterfaceMulticallResult is an auto generated low-level Go binding around an user-defined struct. 40 type UniswapInterfaceMulticallResult struct { 41 Success bool 42 GasUsed *big.Int 43 ReturnData []byte 44 } 45 46 // UniswapInterfaceMulticallMetaData contains all meta data concerning the UniswapInterfaceMulticall contract. 47 var UniswapInterfaceMulticallMetaData = &bind.MetaData{ 48 ABI: "[{\"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\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"gasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"internalType\":\"structUniswapInterfaceMulticall.Call[]\",\"name\":\"calls\",\"type\":\"tuple[]\"}],\"name\":\"multicall\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"gasUsed\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"returnData\",\"type\":\"bytes\"}],\"internalType\":\"structUniswapInterfaceMulticall.Result[]\",\"name\":\"returnData\",\"type\":\"tuple[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", 49 Bin: "0x608060405234801561001057600080fd5b5061050f806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630f28c97d146100465780631749e1e3146100645780634d2301cc14610085575b600080fd5b61004e610098565b60405161005b91906103da565b60405180910390f35b610077610072366004610280565b61009c565b60405161005b9291906103e3565b61004e61009336600461025f565b610213565b4290565b8051439060609067ffffffffffffffff811180156100b957600080fd5b506040519080825280602002602001820160405280156100f357816020015b6100e0610220565b8152602001906001900390816100d85790505b50905060005b835181101561020d57600080600086848151811061011357fe5b60200260200101516000015187858151811061012b57fe5b60200260200101516020015188868151811061014357fe5b60200260200101516040015192509250925060005a9050600080856001600160a01b0316858560405161017691906103be565b60006040518083038160008787f1925050503d80600081146101b4576040519150601f19603f3d011682016040523d82523d6000602084013e6101b9565b606091505b509150915060005a8403905060405180606001604052808415158152602001828152602001838152508989815181106101ee57fe5b60200260200101819052505050505050505080806001019150506100f9565b50915091565b6001600160a01b03163190565b604051806060016040528060001515815260200160008152602001606081525090565b80356001600160a01b038116811461025a57600080fd5b919050565b600060208284031215610270578081fd5b61027982610243565b9392505050565b60006020808385031215610292578182fd5b823567ffffffffffffffff808211156102a9578384fd5b818501915085601f8301126102bc578384fd5b8135818111156102c857fe5b6102d58485830201610485565b81815284810190848601875b848110156103af5781358701601f196060828e0382011215610301578a8bfd5b60408051606081018181108b8211171561031757fe5b8252610324848d01610243565b8152818401358c82015260608401358a81111561033f578d8efd5b8085019450508e603f850112610353578c8dfd5b8b8401358a81111561036157fe5b6103718d85601f84011601610485565b93508084528f83828701011115610386578d8efd5b808386018e86013783018c018d90529081019190915285525092870192908701906001016102e1565b50909998505050505050505050565b600082516103d08184602087016104a9565b9190910192915050565b90815260200190565b600060408083018584526020828186015281865180845260609350838701915083838202880101838901875b8381101561047557898303605f19018552815180511515845286810151878501528801518884018890528051888501819052608061045282828801858c016104a9565b96880196601f91909101601f19169490940190930192509085019060010161040f565b50909a9950505050505050505050565b60405181810167ffffffffffffffff811182821017156104a157fe5b604052919050565b60005b838110156104c45781810151838201526020016104ac565b838111156104d3576000848401525b5050505056fea2646970667358221220582b66fde0ffa7e74e3225603599110189a768875cc3770af6139a5d3a89d47964736f6c63430007060033", 50 } 51 52 // UniswapInterfaceMulticallABI is the input ABI used to generate the binding from. 53 // Deprecated: Use UniswapInterfaceMulticallMetaData.ABI instead. 54 var UniswapInterfaceMulticallABI = UniswapInterfaceMulticallMetaData.ABI 55 56 // UniswapInterfaceMulticallBin is the compiled bytecode used for deploying new contracts. 57 // Deprecated: Use UniswapInterfaceMulticallMetaData.Bin instead. 58 var UniswapInterfaceMulticallBin = UniswapInterfaceMulticallMetaData.Bin 59 60 // DeployUniswapInterfaceMulticall deploys a new Ethereum contract, binding an instance of UniswapInterfaceMulticall to it. 61 func DeployUniswapInterfaceMulticall(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *UniswapInterfaceMulticall, error) { 62 parsed, err := UniswapInterfaceMulticallMetaData.GetAbi() 63 if err != nil { 64 return common.Address{}, nil, nil, err 65 } 66 if parsed == nil { 67 return common.Address{}, nil, nil, errors.New("GetABI returned nil") 68 } 69 70 address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(UniswapInterfaceMulticallBin), backend) 71 if err != nil { 72 return common.Address{}, nil, nil, err 73 } 74 return address, tx, &UniswapInterfaceMulticall{UniswapInterfaceMulticallCaller: UniswapInterfaceMulticallCaller{contract: contract}, UniswapInterfaceMulticallTransactor: UniswapInterfaceMulticallTransactor{contract: contract}, UniswapInterfaceMulticallFilterer: UniswapInterfaceMulticallFilterer{contract: contract}}, nil 75 } 76 77 // UniswapInterfaceMulticall is an auto generated Go binding around an Ethereum contract. 78 type UniswapInterfaceMulticall struct { 79 UniswapInterfaceMulticallCaller // Read-only binding to the contract 80 UniswapInterfaceMulticallTransactor // Write-only binding to the contract 81 UniswapInterfaceMulticallFilterer // Log filterer for contract events 82 } 83 84 // UniswapInterfaceMulticallCaller is an auto generated read-only Go binding around an Ethereum contract. 85 type UniswapInterfaceMulticallCaller struct { 86 contract *bind.BoundContract // Generic contract wrapper for the low level calls 87 } 88 89 // UniswapInterfaceMulticallTransactor is an auto generated write-only Go binding around an Ethereum contract. 90 type UniswapInterfaceMulticallTransactor struct { 91 contract *bind.BoundContract // Generic contract wrapper for the low level calls 92 } 93 94 // UniswapInterfaceMulticallFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 95 type UniswapInterfaceMulticallFilterer struct { 96 contract *bind.BoundContract // Generic contract wrapper for the low level calls 97 } 98 99 // UniswapInterfaceMulticallSession is an auto generated Go binding around an Ethereum contract, 100 // with pre-set call and transact options. 101 type UniswapInterfaceMulticallSession struct { 102 Contract *UniswapInterfaceMulticall // Generic contract binding to set the session for 103 CallOpts bind.CallOpts // Call options to use throughout this session 104 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 105 } 106 107 // UniswapInterfaceMulticallCallerSession is an auto generated read-only Go binding around an Ethereum contract, 108 // with pre-set call options. 109 type UniswapInterfaceMulticallCallerSession struct { 110 Contract *UniswapInterfaceMulticallCaller // Generic contract caller binding to set the session for 111 CallOpts bind.CallOpts // Call options to use throughout this session 112 } 113 114 // UniswapInterfaceMulticallTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 115 // with pre-set transact options. 116 type UniswapInterfaceMulticallTransactorSession struct { 117 Contract *UniswapInterfaceMulticallTransactor // Generic contract transactor binding to set the session for 118 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 119 } 120 121 // UniswapInterfaceMulticallRaw is an auto generated low-level Go binding around an Ethereum contract. 122 type UniswapInterfaceMulticallRaw struct { 123 Contract *UniswapInterfaceMulticall // Generic contract binding to access the raw methods on 124 } 125 126 // UniswapInterfaceMulticallCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 127 type UniswapInterfaceMulticallCallerRaw struct { 128 Contract *UniswapInterfaceMulticallCaller // Generic read-only contract binding to access the raw methods on 129 } 130 131 // UniswapInterfaceMulticallTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 132 type UniswapInterfaceMulticallTransactorRaw struct { 133 Contract *UniswapInterfaceMulticallTransactor // Generic write-only contract binding to access the raw methods on 134 } 135 136 // NewUniswapInterfaceMulticall creates a new instance of UniswapInterfaceMulticall, bound to a specific deployed contract. 137 func NewUniswapInterfaceMulticall(address common.Address, backend bind.ContractBackend) (*UniswapInterfaceMulticall, error) { 138 contract, err := bindUniswapInterfaceMulticall(address, backend, backend, backend) 139 if err != nil { 140 return nil, err 141 } 142 return &UniswapInterfaceMulticall{UniswapInterfaceMulticallCaller: UniswapInterfaceMulticallCaller{contract: contract}, UniswapInterfaceMulticallTransactor: UniswapInterfaceMulticallTransactor{contract: contract}, UniswapInterfaceMulticallFilterer: UniswapInterfaceMulticallFilterer{contract: contract}}, nil 143 } 144 145 // NewUniswapInterfaceMulticallCaller creates a new read-only instance of UniswapInterfaceMulticall, bound to a specific deployed contract. 146 func NewUniswapInterfaceMulticallCaller(address common.Address, caller bind.ContractCaller) (*UniswapInterfaceMulticallCaller, error) { 147 contract, err := bindUniswapInterfaceMulticall(address, caller, nil, nil) 148 if err != nil { 149 return nil, err 150 } 151 return &UniswapInterfaceMulticallCaller{contract: contract}, nil 152 } 153 154 // NewUniswapInterfaceMulticallTransactor creates a new write-only instance of UniswapInterfaceMulticall, bound to a specific deployed contract. 155 func NewUniswapInterfaceMulticallTransactor(address common.Address, transactor bind.ContractTransactor) (*UniswapInterfaceMulticallTransactor, error) { 156 contract, err := bindUniswapInterfaceMulticall(address, nil, transactor, nil) 157 if err != nil { 158 return nil, err 159 } 160 return &UniswapInterfaceMulticallTransactor{contract: contract}, nil 161 } 162 163 // NewUniswapInterfaceMulticallFilterer creates a new log filterer instance of UniswapInterfaceMulticall, bound to a specific deployed contract. 164 func NewUniswapInterfaceMulticallFilterer(address common.Address, filterer bind.ContractFilterer) (*UniswapInterfaceMulticallFilterer, error) { 165 contract, err := bindUniswapInterfaceMulticall(address, nil, nil, filterer) 166 if err != nil { 167 return nil, err 168 } 169 return &UniswapInterfaceMulticallFilterer{contract: contract}, nil 170 } 171 172 // bindUniswapInterfaceMulticall binds a generic wrapper to an already deployed contract. 173 func bindUniswapInterfaceMulticall(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 174 parsed, err := UniswapInterfaceMulticallMetaData.GetAbi() 175 if err != nil { 176 return nil, err 177 } 178 return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil 179 } 180 181 // Call invokes the (constant) contract method with params as input values and 182 // sets the output to result. The result type might be a single field for simple 183 // returns, a slice of interfaces for anonymous returns and a struct for named 184 // returns. 185 func (_UniswapInterfaceMulticall *UniswapInterfaceMulticallRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 186 return _UniswapInterfaceMulticall.Contract.UniswapInterfaceMulticallCaller.contract.Call(opts, result, method, params...) 187 } 188 189 // Transfer initiates a plain transaction to move funds to the contract, calling 190 // its default method if one is available. 191 func (_UniswapInterfaceMulticall *UniswapInterfaceMulticallRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 192 return _UniswapInterfaceMulticall.Contract.UniswapInterfaceMulticallTransactor.contract.Transfer(opts) 193 } 194 195 // Transact invokes the (paid) contract method with params as input values. 196 func (_UniswapInterfaceMulticall *UniswapInterfaceMulticallRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 197 return _UniswapInterfaceMulticall.Contract.UniswapInterfaceMulticallTransactor.contract.Transact(opts, method, params...) 198 } 199 200 // Call invokes the (constant) contract method with params as input values and 201 // sets the output to result. The result type might be a single field for simple 202 // returns, a slice of interfaces for anonymous returns and a struct for named 203 // returns. 204 func (_UniswapInterfaceMulticall *UniswapInterfaceMulticallCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 205 return _UniswapInterfaceMulticall.Contract.contract.Call(opts, result, method, params...) 206 } 207 208 // Transfer initiates a plain transaction to move funds to the contract, calling 209 // its default method if one is available. 210 func (_UniswapInterfaceMulticall *UniswapInterfaceMulticallTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 211 return _UniswapInterfaceMulticall.Contract.contract.Transfer(opts) 212 } 213 214 // Transact invokes the (paid) contract method with params as input values. 215 func (_UniswapInterfaceMulticall *UniswapInterfaceMulticallTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 216 return _UniswapInterfaceMulticall.Contract.contract.Transact(opts, method, params...) 217 } 218 219 // GetCurrentBlockTimestamp is a free data retrieval call binding the contract method 0x0f28c97d. 220 // 221 // Solidity: function getCurrentBlockTimestamp() view returns(uint256 timestamp) 222 func (_UniswapInterfaceMulticall *UniswapInterfaceMulticallCaller) GetCurrentBlockTimestamp(opts *bind.CallOpts) (*big.Int, error) { 223 var out []interface{} 224 err := _UniswapInterfaceMulticall.contract.Call(opts, &out, "getCurrentBlockTimestamp") 225 226 if err != nil { 227 return *new(*big.Int), err 228 } 229 230 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 231 232 return out0, err 233 234 } 235 236 // GetCurrentBlockTimestamp is a free data retrieval call binding the contract method 0x0f28c97d. 237 // 238 // Solidity: function getCurrentBlockTimestamp() view returns(uint256 timestamp) 239 func (_UniswapInterfaceMulticall *UniswapInterfaceMulticallSession) GetCurrentBlockTimestamp() (*big.Int, error) { 240 return _UniswapInterfaceMulticall.Contract.GetCurrentBlockTimestamp(&_UniswapInterfaceMulticall.CallOpts) 241 } 242 243 // GetCurrentBlockTimestamp is a free data retrieval call binding the contract method 0x0f28c97d. 244 // 245 // Solidity: function getCurrentBlockTimestamp() view returns(uint256 timestamp) 246 func (_UniswapInterfaceMulticall *UniswapInterfaceMulticallCallerSession) GetCurrentBlockTimestamp() (*big.Int, error) { 247 return _UniswapInterfaceMulticall.Contract.GetCurrentBlockTimestamp(&_UniswapInterfaceMulticall.CallOpts) 248 } 249 250 // GetEthBalance is a free data retrieval call binding the contract method 0x4d2301cc. 251 // 252 // Solidity: function getEthBalance(address addr) view returns(uint256 balance) 253 func (_UniswapInterfaceMulticall *UniswapInterfaceMulticallCaller) GetEthBalance(opts *bind.CallOpts, addr common.Address) (*big.Int, error) { 254 var out []interface{} 255 err := _UniswapInterfaceMulticall.contract.Call(opts, &out, "getEthBalance", addr) 256 257 if err != nil { 258 return *new(*big.Int), err 259 } 260 261 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 262 263 return out0, err 264 265 } 266 267 // GetEthBalance is a free data retrieval call binding the contract method 0x4d2301cc. 268 // 269 // Solidity: function getEthBalance(address addr) view returns(uint256 balance) 270 func (_UniswapInterfaceMulticall *UniswapInterfaceMulticallSession) GetEthBalance(addr common.Address) (*big.Int, error) { 271 return _UniswapInterfaceMulticall.Contract.GetEthBalance(&_UniswapInterfaceMulticall.CallOpts, addr) 272 } 273 274 // GetEthBalance is a free data retrieval call binding the contract method 0x4d2301cc. 275 // 276 // Solidity: function getEthBalance(address addr) view returns(uint256 balance) 277 func (_UniswapInterfaceMulticall *UniswapInterfaceMulticallCallerSession) GetEthBalance(addr common.Address) (*big.Int, error) { 278 return _UniswapInterfaceMulticall.Contract.GetEthBalance(&_UniswapInterfaceMulticall.CallOpts, addr) 279 } 280 281 // Multicall is a paid mutator transaction binding the contract method 0x1749e1e3. 282 // 283 // Solidity: function multicall((address,uint256,bytes)[] calls) returns(uint256 blockNumber, (bool,uint256,bytes)[] returnData) 284 func (_UniswapInterfaceMulticall *UniswapInterfaceMulticallTransactor) Multicall(opts *bind.TransactOpts, calls []UniswapInterfaceMulticallCall) (*types.Transaction, error) { 285 return _UniswapInterfaceMulticall.contract.Transact(opts, "multicall", calls) 286 } 287 288 // Multicall is a paid mutator transaction binding the contract method 0x1749e1e3. 289 // 290 // Solidity: function multicall((address,uint256,bytes)[] calls) returns(uint256 blockNumber, (bool,uint256,bytes)[] returnData) 291 func (_UniswapInterfaceMulticall *UniswapInterfaceMulticallSession) Multicall(calls []UniswapInterfaceMulticallCall) (*types.Transaction, error) { 292 return _UniswapInterfaceMulticall.Contract.Multicall(&_UniswapInterfaceMulticall.TransactOpts, calls) 293 } 294 295 // Multicall is a paid mutator transaction binding the contract method 0x1749e1e3. 296 // 297 // Solidity: function multicall((address,uint256,bytes)[] calls) returns(uint256 blockNumber, (bool,uint256,bytes)[] returnData) 298 func (_UniswapInterfaceMulticall *UniswapInterfaceMulticallTransactorSession) Multicall(calls []UniswapInterfaceMulticallCall) (*types.Transaction, error) { 299 return _UniswapInterfaceMulticall.Contract.Multicall(&_UniswapInterfaceMulticall.TransactOpts, calls) 300 }