CrossChainMessenger

package
v0.28.0 Latest Latest
Warning

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

Go to latest
Published: Nov 8, 2024 License: AGPL-3.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var CrossChainMessengerABI = CrossChainMessengerMetaData.ABI

CrossChainMessengerABI is the input ABI used to generate the binding from. Deprecated: Use CrossChainMessengerMetaData.ABI instead.

View Source
var CrossChainMessengerBin = CrossChainMessengerMetaData.Bin

CrossChainMessengerBin is the compiled bytecode used for deploying new contracts. Deprecated: Use CrossChainMessengerMetaData.Bin instead.

View Source
var CrossChainMessengerMetaData = &bind.MetaData{
	ABI: "[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"error\",\"type\":\"bytes\"}],\"name\":\"CallFailed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidInitialization\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotInitializing\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"version\",\"type\":\"uint64\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"crossChainSender\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"name\":\"encodeCall\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"messageBusAddr\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageBus\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"sequence\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"nonce\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"topic\",\"type\":\"uint32\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"uint8\",\"name\":\"consistencyLevel\",\"type\":\"uint8\"}],\"internalType\":\"structStructs.CrossChainMessage\",\"name\":\"message\",\"type\":\"tuple\"}],\"name\":\"relayMessage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"sequence\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"nonce\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"topic\",\"type\":\"uint32\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"uint8\",\"name\":\"consistencyLevel\",\"type\":\"uint8\"}],\"internalType\":\"structStructs.CrossChainMessage\",\"name\":\"message\",\"type\":\"tuple\"},{\"internalType\":\"bytes32[]\",\"name\":\"proof\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32\",\"name\":\"root\",\"type\":\"bytes32\"}],\"name\":\"relayMessageWithProof\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]",
	Bin: "0x608060405234801561001057600080fd5b50610ff9806100206000396000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c80639b7cf1ee116100505780639b7cf1ee146100d5578063a1a227fa146100e8578063c4d66de8146100f957600080fd5b80630671b22e146100775780635b76f28b1461008c57806363012de5146100b5575b600080fd5b61008a61008536600461078b565b61010c565b005b61009f61009a366004610885565b610211565b6040516100ac9190610937565b60405180910390f35b6001546100c8906001600160a01b031681565b6040516100ac919061095e565b61008a6100e336600461096c565b610291565b6000546001600160a01b03166100c8565b61008a6101073660046109af565b610387565b610118848484846104e7565b61012560208501856109af565b600180546001600160a01b0319166001600160a01b0392909216919091179055600061015460808601866109d0565b8101906101619190610bb1565b905060008082600001516001600160a01b03165a84602001516040516101879190610c0e565b60006040518083038160008787f1925050503d80600081146101c5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ca565b606091505b5091509150816101f8578060405163a5fa8d2b60e01b81526004016101ef9190610937565b60405180910390fd5b5050600180546001600160a01b03191690555050505050565b60606040518060600160405280856001600160a01b0316815260200184848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250938552505050602091820152604051610279929101610c5f565b60405160208183030381529060405290509392505050565b61029a816105e0565b6102a760208201826109af565b600180546001600160a01b0319166001600160a01b039290921691909117905560006102d660808301836109d0565b8101906102e39190610bb1565b905060008082600001516001600160a01b03165a84602001516040516103099190610c0e565b60006040518083038160008787f1925050503d8060008114610347576040519150601f19603f3d011682016040523d82523d6000602084013e61034c565b606091505b509150915081610371578060405163a5fa8d2b60e01b81526004016101ef9190610937565b5050600180546001600160a01b03191690555050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff166000811580156103d25750825b905060008267ffffffffffffffff1660011480156103ef5750303b155b9050811580156103fd575080155b15610434576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561046857845468ff00000000000000001916680100000000000000001785555b600080546001600160a01b0388166001600160a01b03199182161790915560018054909116905583156104df57845468ff0000000000000000191685556040517fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906104d690600190610c8b565b60405180910390a15b505050505050565b6000546040517fe138a8d20000000000000000000000000000000000000000000000000000000081526001600160a01b039091169063e138a8d290610536908790879087908790600401610eba565b60006040518083038186803b15801561054e57600080fd5b505afa158015610562573d6000803e3d6000fd5b505050506000846040516020016105799190610ef8565b60408051601f1981840301815291815281516020928301206000818152600290935291205490915060ff16156105c15760405162461bcd60e51b81526004016101ef90610f3d565b6000908152600260205260409020805460ff1916600117905550505050565b6000546040517f33a88c720000000000000000000000000000000000000000000000000000000081526001600160a01b03909116906333a88c7290610629908490600401610ef8565b602060405180830381865afa158015610646573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061066a9190610f60565b6106865760405162461bcd60e51b81526004016101ef90610fb3565b6000816040516020016106999190610ef8565b60408051601f1981840301815291815281516020928301206000818152600290935291205490915060ff16156106e15760405162461bcd60e51b81526004016101ef90610f3d565b6000908152600260205260409020805460ff1916600117905550565b600060c0828403121561071257610712600080fd5b50919050565b60008083601f84011261072d5761072d600080fd5b50813567ffffffffffffffff81111561074857610748600080fd5b60208301915083602082028301111561076357610763600080fd5b9250929050565b805b811461077757600080fd5b50565b80356107858161076a565b92915050565b600080600080606085870312156107a4576107a4600080fd5b843567ffffffffffffffff8111156107be576107be600080fd5b6107ca878288016106fd565b945050602085013567ffffffffffffffff8111156107ea576107ea600080fd5b6107f687828801610718565b935093505060406108098782880161077a565b91505092959194509250565b60006001600160a01b038216610785565b61076c81610815565b803561078581610826565b60008083601f84011261084f5761084f600080fd5b50813567ffffffffffffffff81111561086a5761086a600080fd5b60208301915083600182028301111561076357610763600080fd5b60008060006040848603121561089d5761089d600080fd5b60006108a9868661082f565b935050602084013567ffffffffffffffff8111156108c9576108c9600080fd5b6108d58682870161083a565b92509250509250925092565b60005b838110156108fc5781810151838201526020016108e4565b50506000910152565b600061090f825190565b8084526020840193506109268185602086016108e1565b601f01601f19169290920192915050565b602080825281016109488184610905565b9392505050565b61095881610815565b82525050565b60208101610785828461094f565b60006020828403121561098157610981600080fd5b813567ffffffffffffffff81111561099b5761099b600080fd5b6109a7848285016106fd565b949350505050565b6000602082840312156109c4576109c4600080fd5b60006109a7848461082f565b6000808335601e19368590030181126109eb576109eb600080fd5b8301915050803567ffffffffffffffff811115610a0a57610a0a600080fd5b60208201915060018102360382131561076357610763600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b601f19601f830116810181811067ffffffffffffffff82111715610a7a57610a7a610a25565b6040525050565b6000610a8c60405190565b9050610a988282610a54565b919050565b600067ffffffffffffffff821115610ab757610ab7610a25565b601f19601f83011660200192915050565b82818337506000910152565b6000610ae7610ae284610a9d565b610a81565b905082815260208101848484011115610b0257610b02600080fd5b610b0d848285610ac8565b509392505050565b600082601f830112610b2957610b29600080fd5b81356109a7848260208601610ad4565b600060608284031215610b4e57610b4e600080fd5b610b586060610a81565b90506000610b66848461082f565b90820152602082013567ffffffffffffffff811115610b8757610b87600080fd5b610b9384828501610b15565b6020830152506040610ba78482850161077a565b9082015292915050565b600060208284031215610bc657610bc6600080fd5b813567ffffffffffffffff811115610be057610be0600080fd5b6109a784828501610b39565b6000610bf6825190565b610c048185602086016108e1565b9290920192915050565b6107858183610bec565b80610958565b80516000906060840190610c32858261094f565b5060208301518482036020860152610c4a8282610905565b9150506040830151610b0d6040860182610c18565b602080825281016109488184610c1e565b600067ffffffffffffffff8216610785565b61095881610c70565b602081016107858284610c82565b506000610785602083018361082f565b67ffffffffffffffff811661076c565b803561078581610ca9565b5060006107856020830183610cb9565b67ffffffffffffffff8116610958565b63ffffffff811661076c565b803561078581610ce4565b5060006107856020830183610cf0565b63ffffffff8116610958565b6000808335601e1936859003018112610d3257610d32600080fd5b830160208101925035905067ffffffffffffffff811115610d5557610d55600080fd5b3681900382131561076357610763600080fd5b818352602083019250610d7c828483610ac8565b50601f01601f19160190565b60ff811661076c565b803561078581610d88565b5060006107856020830183610d91565b60ff8116610958565b600060c08301610dc58380610c99565b610dcf858261094f565b50610ddd6020840184610cc4565b610dea6020860182610cd4565b50610df86040840184610cfb565b610e056040860182610d0b565b50610e136060840184610cfb565b610e206060860182610d0b565b50610e2e6080840184610d17565b8583036080870152610e41838284610d68565b92505050610e5260a0840184610d9c565b610b0d60a0860182610dac565b82818337505050565b81835260208301925060007f07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff831115610ea357610ea3600080fd5b602083029250610eb4838584610e5f565b50500190565b60608082528101610ecb8187610db5565b90508181036020830152610ee0818587610e68565b9050610eef6040830184610c18565b95945050505050565b602080825281016109488184610db5565b60198152602081017f4d65737361676520616c726561647920636f6e73756d65642e00000000000000815290505b60200190565b6020808252810161078581610f09565b80151561076c565b805161078581610f4d565b600060208284031215610f7557610f75600080fd5b60006109a78484610f55565b601f8152602081017f4d657373616765206e6f7420666f756e64206f722066696e616c697a65642e0081529050610f37565b6020808252810161078581610f8156fea264697066735822122047f28995de7130c3998b1599d405fb370dedbc68b4a589631e78ea0032bfd28164736f6c63430008150033",
}

CrossChainMessengerMetaData contains all meta data concerning the CrossChainMessenger contract.

Functions

This section is empty.

Types

type CrossChainMessenger

type CrossChainMessenger struct {
	CrossChainMessengerCaller     // Read-only binding to the contract
	CrossChainMessengerTransactor // Write-only binding to the contract
	CrossChainMessengerFilterer   // Log filterer for contract events
}

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

func DeployCrossChainMessenger

func DeployCrossChainMessenger(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *CrossChainMessenger, error)

DeployCrossChainMessenger deploys a new Ethereum contract, binding an instance of CrossChainMessenger to it.

func NewCrossChainMessenger

func NewCrossChainMessenger(address common.Address, backend bind.ContractBackend) (*CrossChainMessenger, error)

NewCrossChainMessenger creates a new instance of CrossChainMessenger, bound to a specific deployed contract.

type CrossChainMessengerCaller

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

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

func NewCrossChainMessengerCaller

func NewCrossChainMessengerCaller(address common.Address, caller bind.ContractCaller) (*CrossChainMessengerCaller, error)

NewCrossChainMessengerCaller creates a new read-only instance of CrossChainMessenger, bound to a specific deployed contract.

func (*CrossChainMessengerCaller) CrossChainSender

func (_CrossChainMessenger *CrossChainMessengerCaller) CrossChainSender(opts *bind.CallOpts) (common.Address, error)

CrossChainSender is a free data retrieval call binding the contract method 0x63012de5.

Solidity: function crossChainSender() view returns(address)

func (*CrossChainMessengerCaller) EncodeCall

func (_CrossChainMessenger *CrossChainMessengerCaller) EncodeCall(opts *bind.CallOpts, target common.Address, payload []byte) ([]byte, error)

EncodeCall is a free data retrieval call binding the contract method 0x5b76f28b.

Solidity: function encodeCall(address target, bytes payload) pure returns(bytes)

func (*CrossChainMessengerCaller) MessageBus

func (_CrossChainMessenger *CrossChainMessengerCaller) MessageBus(opts *bind.CallOpts) (common.Address, error)

MessageBus is a free data retrieval call binding the contract method 0xa1a227fa.

Solidity: function messageBus() view returns(address)

type CrossChainMessengerCallerRaw

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

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

func (*CrossChainMessengerCallerRaw) Call

func (_CrossChainMessenger *CrossChainMessengerCallerRaw) 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 CrossChainMessengerCallerSession

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

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

func (*CrossChainMessengerCallerSession) CrossChainSender

func (_CrossChainMessenger *CrossChainMessengerCallerSession) CrossChainSender() (common.Address, error)

CrossChainSender is a free data retrieval call binding the contract method 0x63012de5.

Solidity: function crossChainSender() view returns(address)

func (*CrossChainMessengerCallerSession) EncodeCall

func (_CrossChainMessenger *CrossChainMessengerCallerSession) EncodeCall(target common.Address, payload []byte) ([]byte, error)

EncodeCall is a free data retrieval call binding the contract method 0x5b76f28b.

Solidity: function encodeCall(address target, bytes payload) pure returns(bytes)

func (*CrossChainMessengerCallerSession) MessageBus

func (_CrossChainMessenger *CrossChainMessengerCallerSession) MessageBus() (common.Address, error)

MessageBus is a free data retrieval call binding the contract method 0xa1a227fa.

Solidity: function messageBus() view returns(address)

type CrossChainMessengerFilterer

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

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

func NewCrossChainMessengerFilterer

func NewCrossChainMessengerFilterer(address common.Address, filterer bind.ContractFilterer) (*CrossChainMessengerFilterer, error)

NewCrossChainMessengerFilterer creates a new log filterer instance of CrossChainMessenger, bound to a specific deployed contract.

func (*CrossChainMessengerFilterer) FilterInitialized added in v0.21.0

func (_CrossChainMessenger *CrossChainMessengerFilterer) FilterInitialized(opts *bind.FilterOpts) (*CrossChainMessengerInitializedIterator, error)

FilterInitialized is a free log retrieval operation binding the contract event 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2.

Solidity: event Initialized(uint64 version)

func (*CrossChainMessengerFilterer) ParseInitialized added in v0.21.0

func (_CrossChainMessenger *CrossChainMessengerFilterer) ParseInitialized(log types.Log) (*CrossChainMessengerInitialized, error)

ParseInitialized is a log parse operation binding the contract event 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2.

Solidity: event Initialized(uint64 version)

func (*CrossChainMessengerFilterer) WatchInitialized added in v0.21.0

func (_CrossChainMessenger *CrossChainMessengerFilterer) WatchInitialized(opts *bind.WatchOpts, sink chan<- *CrossChainMessengerInitialized) (event.Subscription, error)

WatchInitialized is a free log subscription operation binding the contract event 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2.

Solidity: event Initialized(uint64 version)

type CrossChainMessengerInitialized added in v0.21.0

type CrossChainMessengerInitialized struct {
	Version uint64
	Raw     types.Log // Blockchain specific contextual infos
}

CrossChainMessengerInitialized represents a Initialized event raised by the CrossChainMessenger contract.

type CrossChainMessengerInitializedIterator added in v0.21.0

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

CrossChainMessengerInitializedIterator is returned from FilterInitialized and is used to iterate over the raw logs and unpacked data for Initialized events raised by the CrossChainMessenger contract.

func (*CrossChainMessengerInitializedIterator) Close added in v0.21.0

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

func (*CrossChainMessengerInitializedIterator) Error added in v0.21.0

Error returns any retrieval or parsing error occurred during filtering.

func (*CrossChainMessengerInitializedIterator) Next added in v0.21.0

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 CrossChainMessengerRaw

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

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

func (*CrossChainMessengerRaw) Call

func (_CrossChainMessenger *CrossChainMessengerRaw) 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 (*CrossChainMessengerRaw) Transact

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

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

func (*CrossChainMessengerRaw) Transfer

func (_CrossChainMessenger *CrossChainMessengerRaw) 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 CrossChainMessengerSession

type CrossChainMessengerSession struct {
	Contract     *CrossChainMessenger // 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
}

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

func (*CrossChainMessengerSession) CrossChainSender

func (_CrossChainMessenger *CrossChainMessengerSession) CrossChainSender() (common.Address, error)

CrossChainSender is a free data retrieval call binding the contract method 0x63012de5.

Solidity: function crossChainSender() view returns(address)

func (*CrossChainMessengerSession) EncodeCall

func (_CrossChainMessenger *CrossChainMessengerSession) EncodeCall(target common.Address, payload []byte) ([]byte, error)

EncodeCall is a free data retrieval call binding the contract method 0x5b76f28b.

Solidity: function encodeCall(address target, bytes payload) pure returns(bytes)

func (*CrossChainMessengerSession) Initialize

func (_CrossChainMessenger *CrossChainMessengerSession) Initialize(messageBusAddr common.Address) (*types.Transaction, error)

Initialize is a paid mutator transaction binding the contract method 0xc4d66de8.

Solidity: function initialize(address messageBusAddr) returns()

func (*CrossChainMessengerSession) MessageBus

func (_CrossChainMessenger *CrossChainMessengerSession) MessageBus() (common.Address, error)

MessageBus is a free data retrieval call binding the contract method 0xa1a227fa.

Solidity: function messageBus() view returns(address)

func (*CrossChainMessengerSession) RelayMessage

func (_CrossChainMessenger *CrossChainMessengerSession) RelayMessage(message StructsCrossChainMessage) (*types.Transaction, error)

RelayMessage is a paid mutator transaction binding the contract method 0x9b7cf1ee.

Solidity: function relayMessage((address,uint64,uint32,uint32,bytes,uint8) message) returns()

func (*CrossChainMessengerSession) RelayMessageWithProof added in v0.24.1

func (_CrossChainMessenger *CrossChainMessengerSession) RelayMessageWithProof(message StructsCrossChainMessage, proof [][32]byte, root [32]byte) (*types.Transaction, error)

RelayMessageWithProof is a paid mutator transaction binding the contract method 0x0671b22e.

Solidity: function relayMessageWithProof((address,uint64,uint32,uint32,bytes,uint8) message, bytes32[] proof, bytes32 root) returns()

type CrossChainMessengerTransactor

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

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

func NewCrossChainMessengerTransactor

func NewCrossChainMessengerTransactor(address common.Address, transactor bind.ContractTransactor) (*CrossChainMessengerTransactor, error)

NewCrossChainMessengerTransactor creates a new write-only instance of CrossChainMessenger, bound to a specific deployed contract.

func (*CrossChainMessengerTransactor) Initialize

func (_CrossChainMessenger *CrossChainMessengerTransactor) Initialize(opts *bind.TransactOpts, messageBusAddr common.Address) (*types.Transaction, error)

Initialize is a paid mutator transaction binding the contract method 0xc4d66de8.

Solidity: function initialize(address messageBusAddr) returns()

func (*CrossChainMessengerTransactor) RelayMessage

func (_CrossChainMessenger *CrossChainMessengerTransactor) RelayMessage(opts *bind.TransactOpts, message StructsCrossChainMessage) (*types.Transaction, error)

RelayMessage is a paid mutator transaction binding the contract method 0x9b7cf1ee.

Solidity: function relayMessage((address,uint64,uint32,uint32,bytes,uint8) message) returns()

func (*CrossChainMessengerTransactor) RelayMessageWithProof added in v0.24.1

func (_CrossChainMessenger *CrossChainMessengerTransactor) RelayMessageWithProof(opts *bind.TransactOpts, message StructsCrossChainMessage, proof [][32]byte, root [32]byte) (*types.Transaction, error)

RelayMessageWithProof is a paid mutator transaction binding the contract method 0x0671b22e.

Solidity: function relayMessageWithProof((address,uint64,uint32,uint32,bytes,uint8) message, bytes32[] proof, bytes32 root) returns()

type CrossChainMessengerTransactorRaw

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

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

func (*CrossChainMessengerTransactorRaw) Transact

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

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

func (*CrossChainMessengerTransactorRaw) Transfer

func (_CrossChainMessenger *CrossChainMessengerTransactorRaw) 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 CrossChainMessengerTransactorSession

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

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

func (*CrossChainMessengerTransactorSession) Initialize

func (_CrossChainMessenger *CrossChainMessengerTransactorSession) Initialize(messageBusAddr common.Address) (*types.Transaction, error)

Initialize is a paid mutator transaction binding the contract method 0xc4d66de8.

Solidity: function initialize(address messageBusAddr) returns()

func (*CrossChainMessengerTransactorSession) RelayMessage

func (_CrossChainMessenger *CrossChainMessengerTransactorSession) RelayMessage(message StructsCrossChainMessage) (*types.Transaction, error)

RelayMessage is a paid mutator transaction binding the contract method 0x9b7cf1ee.

Solidity: function relayMessage((address,uint64,uint32,uint32,bytes,uint8) message) returns()

func (*CrossChainMessengerTransactorSession) RelayMessageWithProof added in v0.24.1

func (_CrossChainMessenger *CrossChainMessengerTransactorSession) RelayMessageWithProof(message StructsCrossChainMessage, proof [][32]byte, root [32]byte) (*types.Transaction, error)

RelayMessageWithProof is a paid mutator transaction binding the contract method 0x0671b22e.

Solidity: function relayMessageWithProof((address,uint64,uint32,uint32,bytes,uint8) message, bytes32[] proof, bytes32 root) returns()

type StructsCrossChainMessage

type StructsCrossChainMessage struct {
	Sender           common.Address
	Sequence         uint64
	Nonce            uint32
	Topic            uint32
	Payload          []byte
	ConsistencyLevel uint8
}

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

Jump to

Keyboard shortcuts

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