contracts

package
v0.0.0-...-1cd0363 Latest Latest
Warning

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

Go to latest
Published: Jun 24, 2019 License: BSD-3-Clause Imports: 8 Imported by: 0

README

SimpleMultisig.gocopied from https://github.com/christianlundkvist/simple-multisig/blob/master/contracts/SimpleMultiSig.sol

做了如下改动:

  • pragam 升级为^0.5.0
  • 语法上的调整(主要包括:memroy external require_message 等)
  • 加入了必要的event和view函数 (eg:入账事件,转账事件,查询owners/mRequired)
  • 调整常量避免冲突(未实施,参见eip-712)

##TODO name/version/chainid/salt/等值的更改

参考

eip-712

go绑定的生成参见cmd.sh,以及

Documentation

Index

Constants

View Source
const SimpleMultiSigABI = "" /* 2183-byte string literal not displayed */

SimpleMultiSigABI is the input ABI used to generate the binding from.

View Source
const SimpleMultiSigBin = `` /* 6144-byte string literal not displayed */

SimpleMultiSigBin is the compiled bytecode used for deploying new contracts.

Variables

This section is empty.

Functions

This section is empty.

Types

type SimpleMultiSig

type SimpleMultiSig struct {
	SimpleMultiSigCaller     // Read-only binding to the contract
	SimpleMultiSigTransactor // Write-only binding to the contract
	SimpleMultiSigFilterer   // Log filterer for contract events
}

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

func DeploySimpleMultiSig

func DeploySimpleMultiSig(auth *bind.TransactOpts, backend bind.ContractBackend, threshold_ *big.Int, owners_ []common.Address, chainId *big.Int) (common.Address, *types.Transaction, *SimpleMultiSig, error)

DeploySimpleMultiSig deploys a new Ethereum contract, binding an instance of SimpleMultiSig to it.

func NewSimpleMultiSig

func NewSimpleMultiSig(address common.Address, backend bind.ContractBackend) (*SimpleMultiSig, error)

NewSimpleMultiSig creates a new instance of SimpleMultiSig, bound to a specific deployed contract.

type SimpleMultiSigCaller

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

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

func NewSimpleMultiSigCaller

func NewSimpleMultiSigCaller(address common.Address, caller bind.ContractCaller) (*SimpleMultiSigCaller, error)

NewSimpleMultiSigCaller creates a new read-only instance of SimpleMultiSig, bound to a specific deployed contract.

func (*SimpleMultiSigCaller) GetOwersLength

func (_SimpleMultiSig *SimpleMultiSigCaller) GetOwersLength(opts *bind.CallOpts) (*big.Int, error)

GetOwersLength is a free data retrieval call binding the contract method 0xca7541ee.

Solidity: function getOwersLength() constant returns(uint256)

func (*SimpleMultiSigCaller) GetVersion

func (_SimpleMultiSig *SimpleMultiSigCaller) GetVersion(opts *bind.CallOpts) (string, error)

GetVersion is a free data retrieval call binding the contract method 0x0d8e6e2c.

Solidity: function getVersion() constant returns(string)

func (*SimpleMultiSigCaller) Nonce

func (_SimpleMultiSig *SimpleMultiSigCaller) Nonce(opts *bind.CallOpts) (*big.Int, error)

Nonce is a free data retrieval call binding the contract method 0xaffed0e0.

Solidity: function nonce() constant returns(uint256)

func (*SimpleMultiSigCaller) OwnersArr

func (_SimpleMultiSig *SimpleMultiSigCaller) OwnersArr(opts *bind.CallOpts, arg0 *big.Int) (common.Address, error)

OwnersArr is a free data retrieval call binding the contract method 0xaa5df9e2.

Solidity: function ownersArr(uint256 ) constant returns(address)

func (*SimpleMultiSigCaller) Threshold

func (_SimpleMultiSig *SimpleMultiSigCaller) Threshold(opts *bind.CallOpts) (*big.Int, error)

Threshold is a free data retrieval call binding the contract method 0x42cde4e8.

Solidity: function threshold() constant returns(uint256)

type SimpleMultiSigCallerRaw

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

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

func (*SimpleMultiSigCallerRaw) Call

func (_SimpleMultiSig *SimpleMultiSigCallerRaw) 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 SimpleMultiSigCallerSession

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

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

func (*SimpleMultiSigCallerSession) GetOwersLength

func (_SimpleMultiSig *SimpleMultiSigCallerSession) GetOwersLength() (*big.Int, error)

GetOwersLength is a free data retrieval call binding the contract method 0xca7541ee.

Solidity: function getOwersLength() constant returns(uint256)

func (*SimpleMultiSigCallerSession) GetVersion

func (_SimpleMultiSig *SimpleMultiSigCallerSession) GetVersion() (string, error)

GetVersion is a free data retrieval call binding the contract method 0x0d8e6e2c.

Solidity: function getVersion() constant returns(string)

func (*SimpleMultiSigCallerSession) Nonce

func (_SimpleMultiSig *SimpleMultiSigCallerSession) Nonce() (*big.Int, error)

Nonce is a free data retrieval call binding the contract method 0xaffed0e0.

Solidity: function nonce() constant returns(uint256)

func (*SimpleMultiSigCallerSession) OwnersArr

func (_SimpleMultiSig *SimpleMultiSigCallerSession) OwnersArr(arg0 *big.Int) (common.Address, error)

OwnersArr is a free data retrieval call binding the contract method 0xaa5df9e2.

Solidity: function ownersArr(uint256 ) constant returns(address)

func (*SimpleMultiSigCallerSession) Threshold

func (_SimpleMultiSig *SimpleMultiSigCallerSession) Threshold() (*big.Int, error)

Threshold is a free data retrieval call binding the contract method 0x42cde4e8.

Solidity: function threshold() constant returns(uint256)

type SimpleMultiSigExecuteLog

type SimpleMultiSigExecuteLog struct {
	Sperator    [32]byte
	TxInputHash [32]byte
	TotalHash   [32]byte
	Raw         types.Log // Blockchain specific contextual infos
}

SimpleMultiSigExecuteLog represents a ExecuteLog event raised by the SimpleMultiSig contract.

type SimpleMultiSigExecuteLogIterator

type SimpleMultiSigExecuteLogIterator struct {
	Event *SimpleMultiSigExecuteLog // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

SimpleMultiSigExecuteLogIterator is returned from FilterExecuteLog and is used to iterate over the raw logs and unpacked data for ExecuteLog events raised by the SimpleMultiSig contract.

func (*SimpleMultiSigExecuteLogIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*SimpleMultiSigExecuteLogIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*SimpleMultiSigExecuteLogIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type SimpleMultiSigFilterer

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

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

func NewSimpleMultiSigFilterer

func NewSimpleMultiSigFilterer(address common.Address, filterer bind.ContractFilterer) (*SimpleMultiSigFilterer, error)

NewSimpleMultiSigFilterer creates a new log filterer instance of SimpleMultiSig, bound to a specific deployed contract.

func (*SimpleMultiSigFilterer) FilterExecuteLog

func (_SimpleMultiSig *SimpleMultiSigFilterer) FilterExecuteLog(opts *bind.FilterOpts) (*SimpleMultiSigExecuteLogIterator, error)

FilterExecuteLog is a free log retrieval operation binding the contract event 0x672ea124619314d71be6f340ecb56da6038c8d6b8ffca9bb1be62086d0a73d90.

Solidity: event ExecuteLog(bytes32 sperator, bytes32 txInputHash, bytes32 totalHash)

func (*SimpleMultiSigFilterer) FilterRecoverdAddr

func (_SimpleMultiSig *SimpleMultiSigFilterer) FilterRecoverdAddr(opts *bind.FilterOpts) (*SimpleMultiSigRecoverdAddrIterator, error)

FilterRecoverdAddr is a free log retrieval operation binding the contract event 0x4e57899e25b61543bc91679ea2a1d9edf6409fad79e539a73eab5f03c06d77cd.

Solidity: event RecoverdAddr(address addr, uint256 i)

func (*SimpleMultiSigFilterer) WatchExecuteLog

func (_SimpleMultiSig *SimpleMultiSigFilterer) WatchExecuteLog(opts *bind.WatchOpts, sink chan<- *SimpleMultiSigExecuteLog) (event.Subscription, error)

WatchExecuteLog is a free log subscription operation binding the contract event 0x672ea124619314d71be6f340ecb56da6038c8d6b8ffca9bb1be62086d0a73d90.

Solidity: event ExecuteLog(bytes32 sperator, bytes32 txInputHash, bytes32 totalHash)

func (*SimpleMultiSigFilterer) WatchRecoverdAddr

func (_SimpleMultiSig *SimpleMultiSigFilterer) WatchRecoverdAddr(opts *bind.WatchOpts, sink chan<- *SimpleMultiSigRecoverdAddr) (event.Subscription, error)

WatchRecoverdAddr is a free log subscription operation binding the contract event 0x4e57899e25b61543bc91679ea2a1d9edf6409fad79e539a73eab5f03c06d77cd.

Solidity: event RecoverdAddr(address addr, uint256 i)

type SimpleMultiSigRaw

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

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

func (*SimpleMultiSigRaw) Call

func (_SimpleMultiSig *SimpleMultiSigRaw) 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 (*SimpleMultiSigRaw) Transact

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

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

func (*SimpleMultiSigRaw) Transfer

func (_SimpleMultiSig *SimpleMultiSigRaw) 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 SimpleMultiSigRecoverdAddr

type SimpleMultiSigRecoverdAddr struct {
	Addr common.Address
	I    *big.Int
	Raw  types.Log // Blockchain specific contextual infos
}

SimpleMultiSigRecoverdAddr represents a RecoverdAddr event raised by the SimpleMultiSig contract.

type SimpleMultiSigRecoverdAddrIterator

type SimpleMultiSigRecoverdAddrIterator struct {
	Event *SimpleMultiSigRecoverdAddr // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

SimpleMultiSigRecoverdAddrIterator is returned from FilterRecoverdAddr and is used to iterate over the raw logs and unpacked data for RecoverdAddr events raised by the SimpleMultiSig contract.

func (*SimpleMultiSigRecoverdAddrIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*SimpleMultiSigRecoverdAddrIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*SimpleMultiSigRecoverdAddrIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type SimpleMultiSigSession

type SimpleMultiSigSession struct {
	Contract     *SimpleMultiSig   // 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
}

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

func (*SimpleMultiSigSession) Execute

func (_SimpleMultiSig *SimpleMultiSigSession) Execute(sigV []uint8, sigR [][32]byte, sigS [][32]byte, destination common.Address, value *big.Int, data []byte, executor common.Address, gasLimit *big.Int) (*types.Transaction, error)

Execute is a paid mutator transaction binding the contract method 0xa0ab9653.

Solidity: function execute(uint8[] sigV, bytes32[] sigR, bytes32[] sigS, address destination, uint256 value, bytes data, address executor, uint256 gasLimit) returns()

func (*SimpleMultiSigSession) GetOwersLength

func (_SimpleMultiSig *SimpleMultiSigSession) GetOwersLength() (*big.Int, error)

GetOwersLength is a free data retrieval call binding the contract method 0xca7541ee.

Solidity: function getOwersLength() constant returns(uint256)

func (*SimpleMultiSigSession) GetVersion

func (_SimpleMultiSig *SimpleMultiSigSession) GetVersion() (string, error)

GetVersion is a free data retrieval call binding the contract method 0x0d8e6e2c.

Solidity: function getVersion() constant returns(string)

func (*SimpleMultiSigSession) Nonce

func (_SimpleMultiSig *SimpleMultiSigSession) Nonce() (*big.Int, error)

Nonce is a free data retrieval call binding the contract method 0xaffed0e0.

Solidity: function nonce() constant returns(uint256)

func (*SimpleMultiSigSession) OwnersArr

func (_SimpleMultiSig *SimpleMultiSigSession) OwnersArr(arg0 *big.Int) (common.Address, error)

OwnersArr is a free data retrieval call binding the contract method 0xaa5df9e2.

Solidity: function ownersArr(uint256 ) constant returns(address)

func (*SimpleMultiSigSession) Threshold

func (_SimpleMultiSig *SimpleMultiSigSession) Threshold() (*big.Int, error)

Threshold is a free data retrieval call binding the contract method 0x42cde4e8.

Solidity: function threshold() constant returns(uint256)

type SimpleMultiSigTransactor

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

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

func NewSimpleMultiSigTransactor

func NewSimpleMultiSigTransactor(address common.Address, transactor bind.ContractTransactor) (*SimpleMultiSigTransactor, error)

NewSimpleMultiSigTransactor creates a new write-only instance of SimpleMultiSig, bound to a specific deployed contract.

func (*SimpleMultiSigTransactor) Execute

func (_SimpleMultiSig *SimpleMultiSigTransactor) Execute(opts *bind.TransactOpts, sigV []uint8, sigR [][32]byte, sigS [][32]byte, destination common.Address, value *big.Int, data []byte, executor common.Address, gasLimit *big.Int) (*types.Transaction, error)

Execute is a paid mutator transaction binding the contract method 0xa0ab9653.

Solidity: function execute(uint8[] sigV, bytes32[] sigR, bytes32[] sigS, address destination, uint256 value, bytes data, address executor, uint256 gasLimit) returns()

type SimpleMultiSigTransactorRaw

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

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

func (*SimpleMultiSigTransactorRaw) Transact

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

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

func (*SimpleMultiSigTransactorRaw) Transfer

func (_SimpleMultiSig *SimpleMultiSigTransactorRaw) 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 SimpleMultiSigTransactorSession

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

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

func (*SimpleMultiSigTransactorSession) Execute

func (_SimpleMultiSig *SimpleMultiSigTransactorSession) Execute(sigV []uint8, sigR [][32]byte, sigS [][32]byte, destination common.Address, value *big.Int, data []byte, executor common.Address, gasLimit *big.Int) (*types.Transaction, error)

Execute is a paid mutator transaction binding the contract method 0xa0ab9653.

Solidity: function execute(uint8[] sigV, bytes32[] sigR, bytes32[] sigS, address destination, uint256 value, bytes data, address executor, uint256 gasLimit) returns()

Jump to

Keyboard shortcuts

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