github.com/cwntr/go-defi@v0.0.0-20210629134751-07f9ec2f7e66/binding/hcurve/hcurve.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 hcurve 5 6 import ( 7 "math/big" 8 "strings" 9 10 ethereum "github.com/ethereum/go-ethereum" 11 "github.com/ethereum/go-ethereum/accounts/abi" 12 "github.com/ethereum/go-ethereum/accounts/abi/bind" 13 "github.com/ethereum/go-ethereum/common" 14 "github.com/ethereum/go-ethereum/core/types" 15 "github.com/ethereum/go-ethereum/event" 16 ) 17 18 // Reference imports to suppress errors if they are not otherwise used. 19 var ( 20 _ = big.NewInt 21 _ = strings.NewReader 22 _ = ethereum.NotFound 23 _ = bind.Bind 24 _ = common.Big1 25 _ = types.BloomLookup 26 _ = event.NewSubscription 27 ) 28 29 // HcurveABI is the input ABI used to generate the binding from. 30 const HcurveABI = "[{\"constant\":true,\"inputs\":[],\"name\":\"ONE_SPLIT\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"handler\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"pool\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"tokens\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256\",\"name\":\"minMintAmount\",\"type\":\"uint256\"}],\"name\":\"addLiquidity\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"handler\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenI\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenJ\",\"type\":\"address\"},{\"internalType\":\"int128\",\"name\":\"i\",\"type\":\"int128\"},{\"internalType\":\"int128\",\"name\":\"j\",\"type\":\"int128\"},{\"internalType\":\"uint256\",\"name\":\"dx\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minDy\",\"type\":\"uint256\"}],\"name\":\"exchange\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"handler\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenI\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenJ\",\"type\":\"address\"},{\"internalType\":\"int128\",\"name\":\"i\",\"type\":\"int128\"},{\"internalType\":\"int128\",\"name\":\"j\",\"type\":\"int128\"},{\"internalType\":\"uint256\",\"name\":\"dx\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minDy\",\"type\":\"uint256\"}],\"name\":\"exchangeUnderlying\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"postProcess\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"handler\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"pool\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenI\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenAmount\",\"type\":\"uint256\"},{\"internalType\":\"int128\",\"name\":\"i\",\"type\":\"int128\"},{\"internalType\":\"uint256\",\"name\":\"minAmount\",\"type\":\"uint256\"}],\"name\":\"removeLiquidityOneCoin\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"handler\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"pool\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tokenI\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenAmount\",\"type\":\"uint256\"},{\"internalType\":\"int128\",\"name\":\"i\",\"type\":\"int128\"},{\"internalType\":\"uint256\",\"name\":\"minAmount\",\"type\":\"uint256\"}],\"name\":\"removeLiquidityOneCoinDust\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"fromToken\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"toToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minReturn\",\"type\":\"uint256\"},{\"internalType\":\"uint256[]\",\"name\":\"distribution\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256\",\"name\":\"featureFlags\",\"type\":\"uint256\"}],\"name\":\"swap\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"}]" 31 32 // Hcurve is an auto generated Go binding around an Ethereum contract. 33 type Hcurve struct { 34 HcurveCaller // Read-only binding to the contract 35 HcurveTransactor // Write-only binding to the contract 36 HcurveFilterer // Log filterer for contract events 37 } 38 39 // HcurveCaller is an auto generated read-only Go binding around an Ethereum contract. 40 type HcurveCaller struct { 41 contract *bind.BoundContract // Generic contract wrapper for the low level calls 42 } 43 44 // HcurveTransactor is an auto generated write-only Go binding around an Ethereum contract. 45 type HcurveTransactor struct { 46 contract *bind.BoundContract // Generic contract wrapper for the low level calls 47 } 48 49 // HcurveFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 50 type HcurveFilterer struct { 51 contract *bind.BoundContract // Generic contract wrapper for the low level calls 52 } 53 54 // HcurveSession is an auto generated Go binding around an Ethereum contract, 55 // with pre-set call and transact options. 56 type HcurveSession struct { 57 Contract *Hcurve // Generic contract binding to set the session for 58 CallOpts bind.CallOpts // Call options to use throughout this session 59 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 60 } 61 62 // HcurveCallerSession is an auto generated read-only Go binding around an Ethereum contract, 63 // with pre-set call options. 64 type HcurveCallerSession struct { 65 Contract *HcurveCaller // Generic contract caller binding to set the session for 66 CallOpts bind.CallOpts // Call options to use throughout this session 67 } 68 69 // HcurveTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 70 // with pre-set transact options. 71 type HcurveTransactorSession struct { 72 Contract *HcurveTransactor // Generic contract transactor binding to set the session for 73 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 74 } 75 76 // HcurveRaw is an auto generated low-level Go binding around an Ethereum contract. 77 type HcurveRaw struct { 78 Contract *Hcurve // Generic contract binding to access the raw methods on 79 } 80 81 // HcurveCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 82 type HcurveCallerRaw struct { 83 Contract *HcurveCaller // Generic read-only contract binding to access the raw methods on 84 } 85 86 // HcurveTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 87 type HcurveTransactorRaw struct { 88 Contract *HcurveTransactor // Generic write-only contract binding to access the raw methods on 89 } 90 91 // NewHcurve creates a new instance of Hcurve, bound to a specific deployed contract. 92 func NewHcurve(address common.Address, backend bind.ContractBackend) (*Hcurve, error) { 93 contract, err := bindHcurve(address, backend, backend, backend) 94 if err != nil { 95 return nil, err 96 } 97 return &Hcurve{HcurveCaller: HcurveCaller{contract: contract}, HcurveTransactor: HcurveTransactor{contract: contract}, HcurveFilterer: HcurveFilterer{contract: contract}}, nil 98 } 99 100 // NewHcurveCaller creates a new read-only instance of Hcurve, bound to a specific deployed contract. 101 func NewHcurveCaller(address common.Address, caller bind.ContractCaller) (*HcurveCaller, error) { 102 contract, err := bindHcurve(address, caller, nil, nil) 103 if err != nil { 104 return nil, err 105 } 106 return &HcurveCaller{contract: contract}, nil 107 } 108 109 // NewHcurveTransactor creates a new write-only instance of Hcurve, bound to a specific deployed contract. 110 func NewHcurveTransactor(address common.Address, transactor bind.ContractTransactor) (*HcurveTransactor, error) { 111 contract, err := bindHcurve(address, nil, transactor, nil) 112 if err != nil { 113 return nil, err 114 } 115 return &HcurveTransactor{contract: contract}, nil 116 } 117 118 // NewHcurveFilterer creates a new log filterer instance of Hcurve, bound to a specific deployed contract. 119 func NewHcurveFilterer(address common.Address, filterer bind.ContractFilterer) (*HcurveFilterer, error) { 120 contract, err := bindHcurve(address, nil, nil, filterer) 121 if err != nil { 122 return nil, err 123 } 124 return &HcurveFilterer{contract: contract}, nil 125 } 126 127 // bindHcurve binds a generic wrapper to an already deployed contract. 128 func bindHcurve(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 129 parsed, err := abi.JSON(strings.NewReader(HcurveABI)) 130 if err != nil { 131 return nil, err 132 } 133 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 134 } 135 136 // Call invokes the (constant) contract method with params as input values and 137 // sets the output to result. The result type might be a single field for simple 138 // returns, a slice of interfaces for anonymous returns and a struct for named 139 // returns. 140 func (_Hcurve *HcurveRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 141 return _Hcurve.Contract.HcurveCaller.contract.Call(opts, result, method, params...) 142 } 143 144 // Transfer initiates a plain transaction to move funds to the contract, calling 145 // its default method if one is available. 146 func (_Hcurve *HcurveRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 147 return _Hcurve.Contract.HcurveTransactor.contract.Transfer(opts) 148 } 149 150 // Transact invokes the (paid) contract method with params as input values. 151 func (_Hcurve *HcurveRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 152 return _Hcurve.Contract.HcurveTransactor.contract.Transact(opts, method, params...) 153 } 154 155 // Call invokes the (constant) contract method with params as input values and 156 // sets the output to result. The result type might be a single field for simple 157 // returns, a slice of interfaces for anonymous returns and a struct for named 158 // returns. 159 func (_Hcurve *HcurveCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 160 return _Hcurve.Contract.contract.Call(opts, result, method, params...) 161 } 162 163 // Transfer initiates a plain transaction to move funds to the contract, calling 164 // its default method if one is available. 165 func (_Hcurve *HcurveTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 166 return _Hcurve.Contract.contract.Transfer(opts) 167 } 168 169 // Transact invokes the (paid) contract method with params as input values. 170 func (_Hcurve *HcurveTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 171 return _Hcurve.Contract.contract.Transact(opts, method, params...) 172 } 173 174 // ONESPLIT is a free data retrieval call binding the contract method 0x33a469e6. 175 // 176 // Solidity: function ONE_SPLIT() view returns(address) 177 func (_Hcurve *HcurveCaller) ONESPLIT(opts *bind.CallOpts) (common.Address, error) { 178 var out []interface{} 179 err := _Hcurve.contract.Call(opts, &out, "ONE_SPLIT") 180 181 if err != nil { 182 return *new(common.Address), err 183 } 184 185 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 186 187 return out0, err 188 189 } 190 191 // ONESPLIT is a free data retrieval call binding the contract method 0x33a469e6. 192 // 193 // Solidity: function ONE_SPLIT() view returns(address) 194 func (_Hcurve *HcurveSession) ONESPLIT() (common.Address, error) { 195 return _Hcurve.Contract.ONESPLIT(&_Hcurve.CallOpts) 196 } 197 198 // ONESPLIT is a free data retrieval call binding the contract method 0x33a469e6. 199 // 200 // Solidity: function ONE_SPLIT() view returns(address) 201 func (_Hcurve *HcurveCallerSession) ONESPLIT() (common.Address, error) { 202 return _Hcurve.Contract.ONESPLIT(&_Hcurve.CallOpts) 203 } 204 205 // AddLiquidity is a paid mutator transaction binding the contract method 0x51a34ca5. 206 // 207 // Solidity: function addLiquidity(address handler, address pool, address[] tokens, uint256[] amounts, uint256 minMintAmount) payable returns() 208 func (_Hcurve *HcurveTransactor) AddLiquidity(opts *bind.TransactOpts, handler common.Address, pool common.Address, tokens []common.Address, amounts []*big.Int, minMintAmount *big.Int) (*types.Transaction, error) { 209 return _Hcurve.contract.Transact(opts, "addLiquidity", handler, pool, tokens, amounts, minMintAmount) 210 } 211 212 // AddLiquidity is a paid mutator transaction binding the contract method 0x51a34ca5. 213 // 214 // Solidity: function addLiquidity(address handler, address pool, address[] tokens, uint256[] amounts, uint256 minMintAmount) payable returns() 215 func (_Hcurve *HcurveSession) AddLiquidity(handler common.Address, pool common.Address, tokens []common.Address, amounts []*big.Int, minMintAmount *big.Int) (*types.Transaction, error) { 216 return _Hcurve.Contract.AddLiquidity(&_Hcurve.TransactOpts, handler, pool, tokens, amounts, minMintAmount) 217 } 218 219 // AddLiquidity is a paid mutator transaction binding the contract method 0x51a34ca5. 220 // 221 // Solidity: function addLiquidity(address handler, address pool, address[] tokens, uint256[] amounts, uint256 minMintAmount) payable returns() 222 func (_Hcurve *HcurveTransactorSession) AddLiquidity(handler common.Address, pool common.Address, tokens []common.Address, amounts []*big.Int, minMintAmount *big.Int) (*types.Transaction, error) { 223 return _Hcurve.Contract.AddLiquidity(&_Hcurve.TransactOpts, handler, pool, tokens, amounts, minMintAmount) 224 } 225 226 // Exchange is a paid mutator transaction binding the contract method 0x8337782d. 227 // 228 // Solidity: function exchange(address handler, address tokenI, address tokenJ, int128 i, int128 j, uint256 dx, uint256 minDy) payable returns() 229 func (_Hcurve *HcurveTransactor) Exchange(opts *bind.TransactOpts, handler common.Address, tokenI common.Address, tokenJ common.Address, i *big.Int, j *big.Int, dx *big.Int, minDy *big.Int) (*types.Transaction, error) { 230 return _Hcurve.contract.Transact(opts, "exchange", handler, tokenI, tokenJ, i, j, dx, minDy) 231 } 232 233 // Exchange is a paid mutator transaction binding the contract method 0x8337782d. 234 // 235 // Solidity: function exchange(address handler, address tokenI, address tokenJ, int128 i, int128 j, uint256 dx, uint256 minDy) payable returns() 236 func (_Hcurve *HcurveSession) Exchange(handler common.Address, tokenI common.Address, tokenJ common.Address, i *big.Int, j *big.Int, dx *big.Int, minDy *big.Int) (*types.Transaction, error) { 237 return _Hcurve.Contract.Exchange(&_Hcurve.TransactOpts, handler, tokenI, tokenJ, i, j, dx, minDy) 238 } 239 240 // Exchange is a paid mutator transaction binding the contract method 0x8337782d. 241 // 242 // Solidity: function exchange(address handler, address tokenI, address tokenJ, int128 i, int128 j, uint256 dx, uint256 minDy) payable returns() 243 func (_Hcurve *HcurveTransactorSession) Exchange(handler common.Address, tokenI common.Address, tokenJ common.Address, i *big.Int, j *big.Int, dx *big.Int, minDy *big.Int) (*types.Transaction, error) { 244 return _Hcurve.Contract.Exchange(&_Hcurve.TransactOpts, handler, tokenI, tokenJ, i, j, dx, minDy) 245 } 246 247 // ExchangeUnderlying is a paid mutator transaction binding the contract method 0xfef6074e. 248 // 249 // Solidity: function exchangeUnderlying(address handler, address tokenI, address tokenJ, int128 i, int128 j, uint256 dx, uint256 minDy) payable returns() 250 func (_Hcurve *HcurveTransactor) ExchangeUnderlying(opts *bind.TransactOpts, handler common.Address, tokenI common.Address, tokenJ common.Address, i *big.Int, j *big.Int, dx *big.Int, minDy *big.Int) (*types.Transaction, error) { 251 return _Hcurve.contract.Transact(opts, "exchangeUnderlying", handler, tokenI, tokenJ, i, j, dx, minDy) 252 } 253 254 // ExchangeUnderlying is a paid mutator transaction binding the contract method 0xfef6074e. 255 // 256 // Solidity: function exchangeUnderlying(address handler, address tokenI, address tokenJ, int128 i, int128 j, uint256 dx, uint256 minDy) payable returns() 257 func (_Hcurve *HcurveSession) ExchangeUnderlying(handler common.Address, tokenI common.Address, tokenJ common.Address, i *big.Int, j *big.Int, dx *big.Int, minDy *big.Int) (*types.Transaction, error) { 258 return _Hcurve.Contract.ExchangeUnderlying(&_Hcurve.TransactOpts, handler, tokenI, tokenJ, i, j, dx, minDy) 259 } 260 261 // ExchangeUnderlying is a paid mutator transaction binding the contract method 0xfef6074e. 262 // 263 // Solidity: function exchangeUnderlying(address handler, address tokenI, address tokenJ, int128 i, int128 j, uint256 dx, uint256 minDy) payable returns() 264 func (_Hcurve *HcurveTransactorSession) ExchangeUnderlying(handler common.Address, tokenI common.Address, tokenJ common.Address, i *big.Int, j *big.Int, dx *big.Int, minDy *big.Int) (*types.Transaction, error) { 265 return _Hcurve.Contract.ExchangeUnderlying(&_Hcurve.TransactOpts, handler, tokenI, tokenJ, i, j, dx, minDy) 266 } 267 268 // PostProcess is a paid mutator transaction binding the contract method 0xc2722916. 269 // 270 // Solidity: function postProcess() payable returns() 271 func (_Hcurve *HcurveTransactor) PostProcess(opts *bind.TransactOpts) (*types.Transaction, error) { 272 return _Hcurve.contract.Transact(opts, "postProcess") 273 } 274 275 // PostProcess is a paid mutator transaction binding the contract method 0xc2722916. 276 // 277 // Solidity: function postProcess() payable returns() 278 func (_Hcurve *HcurveSession) PostProcess() (*types.Transaction, error) { 279 return _Hcurve.Contract.PostProcess(&_Hcurve.TransactOpts) 280 } 281 282 // PostProcess is a paid mutator transaction binding the contract method 0xc2722916. 283 // 284 // Solidity: function postProcess() payable returns() 285 func (_Hcurve *HcurveTransactorSession) PostProcess() (*types.Transaction, error) { 286 return _Hcurve.Contract.PostProcess(&_Hcurve.TransactOpts) 287 } 288 289 // RemoveLiquidityOneCoin is a paid mutator transaction binding the contract method 0x301ee996. 290 // 291 // Solidity: function removeLiquidityOneCoin(address handler, address pool, address tokenI, uint256 tokenAmount, int128 i, uint256 minAmount) payable returns() 292 func (_Hcurve *HcurveTransactor) RemoveLiquidityOneCoin(opts *bind.TransactOpts, handler common.Address, pool common.Address, tokenI common.Address, tokenAmount *big.Int, i *big.Int, minAmount *big.Int) (*types.Transaction, error) { 293 return _Hcurve.contract.Transact(opts, "removeLiquidityOneCoin", handler, pool, tokenI, tokenAmount, i, minAmount) 294 } 295 296 // RemoveLiquidityOneCoin is a paid mutator transaction binding the contract method 0x301ee996. 297 // 298 // Solidity: function removeLiquidityOneCoin(address handler, address pool, address tokenI, uint256 tokenAmount, int128 i, uint256 minAmount) payable returns() 299 func (_Hcurve *HcurveSession) RemoveLiquidityOneCoin(handler common.Address, pool common.Address, tokenI common.Address, tokenAmount *big.Int, i *big.Int, minAmount *big.Int) (*types.Transaction, error) { 300 return _Hcurve.Contract.RemoveLiquidityOneCoin(&_Hcurve.TransactOpts, handler, pool, tokenI, tokenAmount, i, minAmount) 301 } 302 303 // RemoveLiquidityOneCoin is a paid mutator transaction binding the contract method 0x301ee996. 304 // 305 // Solidity: function removeLiquidityOneCoin(address handler, address pool, address tokenI, uint256 tokenAmount, int128 i, uint256 minAmount) payable returns() 306 func (_Hcurve *HcurveTransactorSession) RemoveLiquidityOneCoin(handler common.Address, pool common.Address, tokenI common.Address, tokenAmount *big.Int, i *big.Int, minAmount *big.Int) (*types.Transaction, error) { 307 return _Hcurve.Contract.RemoveLiquidityOneCoin(&_Hcurve.TransactOpts, handler, pool, tokenI, tokenAmount, i, minAmount) 308 } 309 310 // RemoveLiquidityOneCoinDust is a paid mutator transaction binding the contract method 0xe3878667. 311 // 312 // Solidity: function removeLiquidityOneCoinDust(address handler, address pool, address tokenI, uint256 tokenAmount, int128 i, uint256 minAmount) payable returns() 313 func (_Hcurve *HcurveTransactor) RemoveLiquidityOneCoinDust(opts *bind.TransactOpts, handler common.Address, pool common.Address, tokenI common.Address, tokenAmount *big.Int, i *big.Int, minAmount *big.Int) (*types.Transaction, error) { 314 return _Hcurve.contract.Transact(opts, "removeLiquidityOneCoinDust", handler, pool, tokenI, tokenAmount, i, minAmount) 315 } 316 317 // RemoveLiquidityOneCoinDust is a paid mutator transaction binding the contract method 0xe3878667. 318 // 319 // Solidity: function removeLiquidityOneCoinDust(address handler, address pool, address tokenI, uint256 tokenAmount, int128 i, uint256 minAmount) payable returns() 320 func (_Hcurve *HcurveSession) RemoveLiquidityOneCoinDust(handler common.Address, pool common.Address, tokenI common.Address, tokenAmount *big.Int, i *big.Int, minAmount *big.Int) (*types.Transaction, error) { 321 return _Hcurve.Contract.RemoveLiquidityOneCoinDust(&_Hcurve.TransactOpts, handler, pool, tokenI, tokenAmount, i, minAmount) 322 } 323 324 // RemoveLiquidityOneCoinDust is a paid mutator transaction binding the contract method 0xe3878667. 325 // 326 // Solidity: function removeLiquidityOneCoinDust(address handler, address pool, address tokenI, uint256 tokenAmount, int128 i, uint256 minAmount) payable returns() 327 func (_Hcurve *HcurveTransactorSession) RemoveLiquidityOneCoinDust(handler common.Address, pool common.Address, tokenI common.Address, tokenAmount *big.Int, i *big.Int, minAmount *big.Int) (*types.Transaction, error) { 328 return _Hcurve.Contract.RemoveLiquidityOneCoinDust(&_Hcurve.TransactOpts, handler, pool, tokenI, tokenAmount, i, minAmount) 329 } 330 331 // Swap is a paid mutator transaction binding the contract method 0xe2a7515e. 332 // 333 // Solidity: function swap(address fromToken, address toToken, uint256 amount, uint256 minReturn, uint256[] distribution, uint256 featureFlags) payable returns() 334 func (_Hcurve *HcurveTransactor) Swap(opts *bind.TransactOpts, fromToken common.Address, toToken common.Address, amount *big.Int, minReturn *big.Int, distribution []*big.Int, featureFlags *big.Int) (*types.Transaction, error) { 335 return _Hcurve.contract.Transact(opts, "swap", fromToken, toToken, amount, minReturn, distribution, featureFlags) 336 } 337 338 // Swap is a paid mutator transaction binding the contract method 0xe2a7515e. 339 // 340 // Solidity: function swap(address fromToken, address toToken, uint256 amount, uint256 minReturn, uint256[] distribution, uint256 featureFlags) payable returns() 341 func (_Hcurve *HcurveSession) Swap(fromToken common.Address, toToken common.Address, amount *big.Int, minReturn *big.Int, distribution []*big.Int, featureFlags *big.Int) (*types.Transaction, error) { 342 return _Hcurve.Contract.Swap(&_Hcurve.TransactOpts, fromToken, toToken, amount, minReturn, distribution, featureFlags) 343 } 344 345 // Swap is a paid mutator transaction binding the contract method 0xe2a7515e. 346 // 347 // Solidity: function swap(address fromToken, address toToken, uint256 amount, uint256 minReturn, uint256[] distribution, uint256 featureFlags) payable returns() 348 func (_Hcurve *HcurveTransactorSession) Swap(fromToken common.Address, toToken common.Address, amount *big.Int, minReturn *big.Int, distribution []*big.Int, featureFlags *big.Int) (*types.Transaction, error) { 349 return _Hcurve.Contract.Swap(&_Hcurve.TransactOpts, fromToken, toToken, amount, minReturn, distribution, featureFlags) 350 }