github.com/cwntr/go-defi@v0.0.0-20210629134751-07f9ec2f7e66/binding/hctoken/hctoken.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 hctoken
     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  // HctokenABI is the input ABI used to generate the binding from.
    30  const HctokenABI = "[{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"cToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"mintAmount\",\"type\":\"uint256\"}],\"name\":\"mint\",\"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\":\"cToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"redeemTokens\",\"type\":\"uint256\"}],\"name\":\"redeem\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"cToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"redeemAmount\",\"type\":\"uint256\"}],\"name\":\"redeemUnderlying\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"cToken\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"borrower\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"repayAmount\",\"type\":\"uint256\"}],\"name\":\"repayBorrowBehalf\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"}]"
    31  
    32  // Hctoken is an auto generated Go binding around an Ethereum contract.
    33  type Hctoken struct {
    34  	HctokenCaller     // Read-only binding to the contract
    35  	HctokenTransactor // Write-only binding to the contract
    36  	HctokenFilterer   // Log filterer for contract events
    37  }
    38  
    39  // HctokenCaller is an auto generated read-only Go binding around an Ethereum contract.
    40  type HctokenCaller struct {
    41  	contract *bind.BoundContract // Generic contract wrapper for the low level calls
    42  }
    43  
    44  // HctokenTransactor is an auto generated write-only Go binding around an Ethereum contract.
    45  type HctokenTransactor struct {
    46  	contract *bind.BoundContract // Generic contract wrapper for the low level calls
    47  }
    48  
    49  // HctokenFilterer is an auto generated log filtering Go binding around an Ethereum contract events.
    50  type HctokenFilterer struct {
    51  	contract *bind.BoundContract // Generic contract wrapper for the low level calls
    52  }
    53  
    54  // HctokenSession is an auto generated Go binding around an Ethereum contract,
    55  // with pre-set call and transact options.
    56  type HctokenSession struct {
    57  	Contract     *Hctoken          // 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  // HctokenCallerSession is an auto generated read-only Go binding around an Ethereum contract,
    63  // with pre-set call options.
    64  type HctokenCallerSession struct {
    65  	Contract *HctokenCaller // Generic contract caller binding to set the session for
    66  	CallOpts bind.CallOpts  // Call options to use throughout this session
    67  }
    68  
    69  // HctokenTransactorSession is an auto generated write-only Go binding around an Ethereum contract,
    70  // with pre-set transact options.
    71  type HctokenTransactorSession struct {
    72  	Contract     *HctokenTransactor // Generic contract transactor binding to set the session for
    73  	TransactOpts bind.TransactOpts  // Transaction auth options to use throughout this session
    74  }
    75  
    76  // HctokenRaw is an auto generated low-level Go binding around an Ethereum contract.
    77  type HctokenRaw struct {
    78  	Contract *Hctoken // Generic contract binding to access the raw methods on
    79  }
    80  
    81  // HctokenCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.
    82  type HctokenCallerRaw struct {
    83  	Contract *HctokenCaller // Generic read-only contract binding to access the raw methods on
    84  }
    85  
    86  // HctokenTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.
    87  type HctokenTransactorRaw struct {
    88  	Contract *HctokenTransactor // Generic write-only contract binding to access the raw methods on
    89  }
    90  
    91  // NewHctoken creates a new instance of Hctoken, bound to a specific deployed contract.
    92  func NewHctoken(address common.Address, backend bind.ContractBackend) (*Hctoken, error) {
    93  	contract, err := bindHctoken(address, backend, backend, backend)
    94  	if err != nil {
    95  		return nil, err
    96  	}
    97  	return &Hctoken{HctokenCaller: HctokenCaller{contract: contract}, HctokenTransactor: HctokenTransactor{contract: contract}, HctokenFilterer: HctokenFilterer{contract: contract}}, nil
    98  }
    99  
   100  // NewHctokenCaller creates a new read-only instance of Hctoken, bound to a specific deployed contract.
   101  func NewHctokenCaller(address common.Address, caller bind.ContractCaller) (*HctokenCaller, error) {
   102  	contract, err := bindHctoken(address, caller, nil, nil)
   103  	if err != nil {
   104  		return nil, err
   105  	}
   106  	return &HctokenCaller{contract: contract}, nil
   107  }
   108  
   109  // NewHctokenTransactor creates a new write-only instance of Hctoken, bound to a specific deployed contract.
   110  func NewHctokenTransactor(address common.Address, transactor bind.ContractTransactor) (*HctokenTransactor, error) {
   111  	contract, err := bindHctoken(address, nil, transactor, nil)
   112  	if err != nil {
   113  		return nil, err
   114  	}
   115  	return &HctokenTransactor{contract: contract}, nil
   116  }
   117  
   118  // NewHctokenFilterer creates a new log filterer instance of Hctoken, bound to a specific deployed contract.
   119  func NewHctokenFilterer(address common.Address, filterer bind.ContractFilterer) (*HctokenFilterer, error) {
   120  	contract, err := bindHctoken(address, nil, nil, filterer)
   121  	if err != nil {
   122  		return nil, err
   123  	}
   124  	return &HctokenFilterer{contract: contract}, nil
   125  }
   126  
   127  // bindHctoken binds a generic wrapper to an already deployed contract.
   128  func bindHctoken(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) {
   129  	parsed, err := abi.JSON(strings.NewReader(HctokenABI))
   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 (_Hctoken *HctokenRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error {
   141  	return _Hctoken.Contract.HctokenCaller.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 (_Hctoken *HctokenRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) {
   147  	return _Hctoken.Contract.HctokenTransactor.contract.Transfer(opts)
   148  }
   149  
   150  // Transact invokes the (paid) contract method with params as input values.
   151  func (_Hctoken *HctokenRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) {
   152  	return _Hctoken.Contract.HctokenTransactor.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 (_Hctoken *HctokenCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error {
   160  	return _Hctoken.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 (_Hctoken *HctokenTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) {
   166  	return _Hctoken.Contract.contract.Transfer(opts)
   167  }
   168  
   169  // Transact invokes the (paid) contract method with params as input values.
   170  func (_Hctoken *HctokenTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) {
   171  	return _Hctoken.Contract.contract.Transact(opts, method, params...)
   172  }
   173  
   174  // Mint is a paid mutator transaction binding the contract method 0x40c10f19.
   175  //
   176  // Solidity: function mint(address cToken, uint256 mintAmount) payable returns()
   177  func (_Hctoken *HctokenTransactor) Mint(opts *bind.TransactOpts, cToken common.Address, mintAmount *big.Int) (*types.Transaction, error) {
   178  	return _Hctoken.contract.Transact(opts, "mint", cToken, mintAmount)
   179  }
   180  
   181  // Mint is a paid mutator transaction binding the contract method 0x40c10f19.
   182  //
   183  // Solidity: function mint(address cToken, uint256 mintAmount) payable returns()
   184  func (_Hctoken *HctokenSession) Mint(cToken common.Address, mintAmount *big.Int) (*types.Transaction, error) {
   185  	return _Hctoken.Contract.Mint(&_Hctoken.TransactOpts, cToken, mintAmount)
   186  }
   187  
   188  // Mint is a paid mutator transaction binding the contract method 0x40c10f19.
   189  //
   190  // Solidity: function mint(address cToken, uint256 mintAmount) payable returns()
   191  func (_Hctoken *HctokenTransactorSession) Mint(cToken common.Address, mintAmount *big.Int) (*types.Transaction, error) {
   192  	return _Hctoken.Contract.Mint(&_Hctoken.TransactOpts, cToken, mintAmount)
   193  }
   194  
   195  // PostProcess is a paid mutator transaction binding the contract method 0xc2722916.
   196  //
   197  // Solidity: function postProcess() payable returns()
   198  func (_Hctoken *HctokenTransactor) PostProcess(opts *bind.TransactOpts) (*types.Transaction, error) {
   199  	return _Hctoken.contract.Transact(opts, "postProcess")
   200  }
   201  
   202  // PostProcess is a paid mutator transaction binding the contract method 0xc2722916.
   203  //
   204  // Solidity: function postProcess() payable returns()
   205  func (_Hctoken *HctokenSession) PostProcess() (*types.Transaction, error) {
   206  	return _Hctoken.Contract.PostProcess(&_Hctoken.TransactOpts)
   207  }
   208  
   209  // PostProcess is a paid mutator transaction binding the contract method 0xc2722916.
   210  //
   211  // Solidity: function postProcess() payable returns()
   212  func (_Hctoken *HctokenTransactorSession) PostProcess() (*types.Transaction, error) {
   213  	return _Hctoken.Contract.PostProcess(&_Hctoken.TransactOpts)
   214  }
   215  
   216  // Redeem is a paid mutator transaction binding the contract method 0x1e9a6950.
   217  //
   218  // Solidity: function redeem(address cToken, uint256 redeemTokens) payable returns()
   219  func (_Hctoken *HctokenTransactor) Redeem(opts *bind.TransactOpts, cToken common.Address, redeemTokens *big.Int) (*types.Transaction, error) {
   220  	return _Hctoken.contract.Transact(opts, "redeem", cToken, redeemTokens)
   221  }
   222  
   223  // Redeem is a paid mutator transaction binding the contract method 0x1e9a6950.
   224  //
   225  // Solidity: function redeem(address cToken, uint256 redeemTokens) payable returns()
   226  func (_Hctoken *HctokenSession) Redeem(cToken common.Address, redeemTokens *big.Int) (*types.Transaction, error) {
   227  	return _Hctoken.Contract.Redeem(&_Hctoken.TransactOpts, cToken, redeemTokens)
   228  }
   229  
   230  // Redeem is a paid mutator transaction binding the contract method 0x1e9a6950.
   231  //
   232  // Solidity: function redeem(address cToken, uint256 redeemTokens) payable returns()
   233  func (_Hctoken *HctokenTransactorSession) Redeem(cToken common.Address, redeemTokens *big.Int) (*types.Transaction, error) {
   234  	return _Hctoken.Contract.Redeem(&_Hctoken.TransactOpts, cToken, redeemTokens)
   235  }
   236  
   237  // RedeemUnderlying is a paid mutator transaction binding the contract method 0x96294178.
   238  //
   239  // Solidity: function redeemUnderlying(address cToken, uint256 redeemAmount) payable returns()
   240  func (_Hctoken *HctokenTransactor) RedeemUnderlying(opts *bind.TransactOpts, cToken common.Address, redeemAmount *big.Int) (*types.Transaction, error) {
   241  	return _Hctoken.contract.Transact(opts, "redeemUnderlying", cToken, redeemAmount)
   242  }
   243  
   244  // RedeemUnderlying is a paid mutator transaction binding the contract method 0x96294178.
   245  //
   246  // Solidity: function redeemUnderlying(address cToken, uint256 redeemAmount) payable returns()
   247  func (_Hctoken *HctokenSession) RedeemUnderlying(cToken common.Address, redeemAmount *big.Int) (*types.Transaction, error) {
   248  	return _Hctoken.Contract.RedeemUnderlying(&_Hctoken.TransactOpts, cToken, redeemAmount)
   249  }
   250  
   251  // RedeemUnderlying is a paid mutator transaction binding the contract method 0x96294178.
   252  //
   253  // Solidity: function redeemUnderlying(address cToken, uint256 redeemAmount) payable returns()
   254  func (_Hctoken *HctokenTransactorSession) RedeemUnderlying(cToken common.Address, redeemAmount *big.Int) (*types.Transaction, error) {
   255  	return _Hctoken.Contract.RedeemUnderlying(&_Hctoken.TransactOpts, cToken, redeemAmount)
   256  }
   257  
   258  // RepayBorrowBehalf is a paid mutator transaction binding the contract method 0x59086a5e.
   259  //
   260  // Solidity: function repayBorrowBehalf(address cToken, address borrower, uint256 repayAmount) payable returns()
   261  func (_Hctoken *HctokenTransactor) RepayBorrowBehalf(opts *bind.TransactOpts, cToken common.Address, borrower common.Address, repayAmount *big.Int) (*types.Transaction, error) {
   262  	return _Hctoken.contract.Transact(opts, "repayBorrowBehalf", cToken, borrower, repayAmount)
   263  }
   264  
   265  // RepayBorrowBehalf is a paid mutator transaction binding the contract method 0x59086a5e.
   266  //
   267  // Solidity: function repayBorrowBehalf(address cToken, address borrower, uint256 repayAmount) payable returns()
   268  func (_Hctoken *HctokenSession) RepayBorrowBehalf(cToken common.Address, borrower common.Address, repayAmount *big.Int) (*types.Transaction, error) {
   269  	return _Hctoken.Contract.RepayBorrowBehalf(&_Hctoken.TransactOpts, cToken, borrower, repayAmount)
   270  }
   271  
   272  // RepayBorrowBehalf is a paid mutator transaction binding the contract method 0x59086a5e.
   273  //
   274  // Solidity: function repayBorrowBehalf(address cToken, address borrower, uint256 repayAmount) payable returns()
   275  func (_Hctoken *HctokenTransactorSession) RepayBorrowBehalf(cToken common.Address, borrower common.Address, repayAmount *big.Int) (*types.Transaction, error) {
   276  	return _Hctoken.Contract.RepayBorrowBehalf(&_Hctoken.TransactOpts, cToken, borrower, repayAmount)
   277  }