lightclient

package
v0.0.13 Latest Latest
Warning

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

Go to latest
Published: Apr 18, 2024 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var LightclientABI = LightclientMetaData.ABI

LightclientABI is the input ABI used to generate the binding from. Deprecated: Use LightclientMetaData.ABI instead.

View Source
var LightclientMetaData = &bind.MetaData{
	ABI: "[{\"type\":\"constructor\",\"inputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"UPGRADE_INTERFACE_VERSION\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"string\",\"internalType\":\"string\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"blocksPerEpoch\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"uint32\",\"internalType\":\"uint32\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"computeStakeTableComm\",\"inputs\":[{\"name\":\"state\",\"type\":\"tuple\",\"internalType\":\"structLightClient.LightClientState\",\"components\":[{\"name\":\"viewNum\",\"type\":\"uint64\",\"internalType\":\"uint64\"},{\"name\":\"blockHeight\",\"type\":\"uint64\",\"internalType\":\"uint64\"},{\"name\":\"blockCommRoot\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"feeLedgerComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableBlsKeyComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableSchnorrKeyComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableAmountComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"threshold\",\"type\":\"uint256\",\"internalType\":\"uint256\"}]}],\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"}],\"stateMutability\":\"pure\"},{\"type\":\"function\",\"name\":\"currentEpoch\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"uint64\",\"internalType\":\"uint64\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"frozenStakeTableCommitment\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"frozenThreshold\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"getFinalizedState\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"tuple\",\"internalType\":\"structLightClient.LightClientState\",\"components\":[{\"name\":\"viewNum\",\"type\":\"uint64\",\"internalType\":\"uint64\"},{\"name\":\"blockHeight\",\"type\":\"uint64\",\"internalType\":\"uint64\"},{\"name\":\"blockCommRoot\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"feeLedgerComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableBlsKeyComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableSchnorrKeyComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableAmountComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"threshold\",\"type\":\"uint256\",\"internalType\":\"uint256\"}]}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"getGenesisState\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"tuple\",\"internalType\":\"structLightClient.LightClientState\",\"components\":[{\"name\":\"viewNum\",\"type\":\"uint64\",\"internalType\":\"uint64\"},{\"name\":\"blockHeight\",\"type\":\"uint64\",\"internalType\":\"uint64\"},{\"name\":\"blockCommRoot\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"feeLedgerComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableBlsKeyComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableSchnorrKeyComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableAmountComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"threshold\",\"type\":\"uint256\",\"internalType\":\"uint256\"}]}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"getVersion\",\"inputs\":[],\"outputs\":[{\"name\":\"majorVersion\",\"type\":\"uint8\",\"internalType\":\"uint8\"},{\"name\":\"minorVersion\",\"type\":\"uint8\",\"internalType\":\"uint8\"},{\"name\":\"patchVersion\",\"type\":\"uint8\",\"internalType\":\"uint8\"}],\"stateMutability\":\"pure\"},{\"type\":\"function\",\"name\":\"initialize\",\"inputs\":[{\"name\":\"genesis\",\"type\":\"tuple\",\"internalType\":\"structLightClient.LightClientState\",\"components\":[{\"name\":\"viewNum\",\"type\":\"uint64\",\"internalType\":\"uint64\"},{\"name\":\"blockHeight\",\"type\":\"uint64\",\"internalType\":\"uint64\"},{\"name\":\"blockCommRoot\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"feeLedgerComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableBlsKeyComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableSchnorrKeyComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableAmountComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"threshold\",\"type\":\"uint256\",\"internalType\":\"uint256\"}]},{\"name\":\"numBlocksPerEpoch\",\"type\":\"uint32\",\"internalType\":\"uint32\"},{\"name\":\"owner\",\"type\":\"address\",\"internalType\":\"address\"}],\"outputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"newFinalizedState\",\"inputs\":[{\"name\":\"newState\",\"type\":\"tuple\",\"internalType\":\"structLightClient.LightClientState\",\"components\":[{\"name\":\"viewNum\",\"type\":\"uint64\",\"internalType\":\"uint64\"},{\"name\":\"blockHeight\",\"type\":\"uint64\",\"internalType\":\"uint64\"},{\"name\":\"blockCommRoot\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"feeLedgerComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableBlsKeyComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableSchnorrKeyComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableAmountComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"threshold\",\"type\":\"uint256\",\"internalType\":\"uint256\"}]},{\"name\":\"proof\",\"type\":\"tuple\",\"internalType\":\"structIPlonkVerifier.PlonkProof\",\"components\":[{\"name\":\"wire0\",\"type\":\"tuple\",\"internalType\":\"structBN254.G1Point\",\"components\":[{\"name\":\"x\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"},{\"name\":\"y\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"}]},{\"name\":\"wire1\",\"type\":\"tuple\",\"internalType\":\"structBN254.G1Point\",\"components\":[{\"name\":\"x\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"},{\"name\":\"y\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"}]},{\"name\":\"wire2\",\"type\":\"tuple\",\"internalType\":\"structBN254.G1Point\",\"components\":[{\"name\":\"x\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"},{\"name\":\"y\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"}]},{\"name\":\"wire3\",\"type\":\"tuple\",\"internalType\":\"structBN254.G1Point\",\"components\":[{\"name\":\"x\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"},{\"name\":\"y\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"}]},{\"name\":\"wire4\",\"type\":\"tuple\",\"internalType\":\"structBN254.G1Point\",\"components\":[{\"name\":\"x\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"},{\"name\":\"y\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"}]},{\"name\":\"prodPerm\",\"type\":\"tuple\",\"internalType\":\"structBN254.G1Point\",\"components\":[{\"name\":\"x\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"},{\"name\":\"y\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"}]},{\"name\":\"split0\",\"type\":\"tuple\",\"internalType\":\"structBN254.G1Point\",\"components\":[{\"name\":\"x\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"},{\"name\":\"y\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"}]},{\"name\":\"split1\",\"type\":\"tuple\",\"internalType\":\"structBN254.G1Point\",\"components\":[{\"name\":\"x\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"},{\"name\":\"y\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"}]},{\"name\":\"split2\",\"type\":\"tuple\",\"internalType\":\"structBN254.G1Point\",\"components\":[{\"name\":\"x\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"},{\"name\":\"y\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"}]},{\"name\":\"split3\",\"type\":\"tuple\",\"internalType\":\"structBN254.G1Point\",\"components\":[{\"name\":\"x\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"},{\"name\":\"y\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"}]},{\"name\":\"split4\",\"type\":\"tuple\",\"internalType\":\"structBN254.G1Point\",\"components\":[{\"name\":\"x\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"},{\"name\":\"y\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"}]},{\"name\":\"zeta\",\"type\":\"tuple\",\"internalType\":\"structBN254.G1Point\",\"components\":[{\"name\":\"x\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"},{\"name\":\"y\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"}]},{\"name\":\"zetaOmega\",\"type\":\"tuple\",\"internalType\":\"structBN254.G1Point\",\"components\":[{\"name\":\"x\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"},{\"name\":\"y\",\"type\":\"uint256\",\"internalType\":\"BN254.BaseField\"}]},{\"name\":\"wireEval0\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"wireEval1\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"wireEval2\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"wireEval3\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"wireEval4\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"sigmaEval0\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"sigmaEval1\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"sigmaEval2\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"sigmaEval3\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"prodPermZetaOmegaEval\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"}]}],\"outputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"owner\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"address\",\"internalType\":\"address\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"proxiableUUID\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"renounceOwnership\",\"inputs\":[],\"outputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"states\",\"inputs\":[{\"name\":\"index\",\"type\":\"uint32\",\"internalType\":\"uint32\"}],\"outputs\":[{\"name\":\"viewNum\",\"type\":\"uint64\",\"internalType\":\"uint64\"},{\"name\":\"blockHeight\",\"type\":\"uint64\",\"internalType\":\"uint64\"},{\"name\":\"blockCommRoot\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"feeLedgerComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableBlsKeyComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableSchnorrKeyComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"stakeTableAmountComm\",\"type\":\"uint256\",\"internalType\":\"BN254.ScalarField\"},{\"name\":\"threshold\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"transferOwnership\",\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\",\"internalType\":\"address\"}],\"outputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"upgradeToAndCall\",\"inputs\":[{\"name\":\"newImplementation\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"data\",\"type\":\"bytes\",\"internalType\":\"bytes\"}],\"outputs\":[],\"stateMutability\":\"payable\"},{\"type\":\"function\",\"name\":\"votingStakeTableCommitment\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"votingThreshold\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"stateMutability\":\"view\"},{\"type\":\"event\",\"name\":\"EpochChanged\",\"inputs\":[{\"name\":\"\",\"type\":\"uint64\",\"indexed\":false,\"internalType\":\"uint64\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"Initialized\",\"inputs\":[{\"name\":\"version\",\"type\":\"uint64\",\"indexed\":false,\"internalType\":\"uint64\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"NewState\",\"inputs\":[{\"name\":\"viewNum\",\"type\":\"uint64\",\"indexed\":true,\"internalType\":\"uint64\"},{\"name\":\"blockHeight\",\"type\":\"uint64\",\"indexed\":true,\"internalType\":\"uint64\"},{\"name\":\"blockCommRoot\",\"type\":\"uint256\",\"indexed\":false,\"internalType\":\"BN254.ScalarField\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"OwnershipTransferred\",\"inputs\":[{\"name\":\"previousOwner\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"},{\"name\":\"newOwner\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"Upgrade\",\"inputs\":[{\"name\":\"implementation\",\"type\":\"address\",\"indexed\":false,\"internalType\":\"address\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"Upgraded\",\"inputs\":[{\"name\":\"implementation\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"}],\"anonymous\":false},{\"type\":\"error\",\"name\":\"AddressEmptyCode\",\"inputs\":[{\"name\":\"target\",\"type\":\"address\",\"internalType\":\"address\"}]},{\"type\":\"error\",\"name\":\"ERC1967InvalidImplementation\",\"inputs\":[{\"name\":\"implementation\",\"type\":\"address\",\"internalType\":\"address\"}]},{\"type\":\"error\",\"name\":\"ERC1967NonPayable\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"FailedInnerCall\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"InvalidArgs\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"InvalidInitialization\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"InvalidPolyEvalArgs\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"InvalidProof\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"MissingLastBlockForCurrentEpoch\",\"inputs\":[{\"name\":\"expectedBlockHeight\",\"type\":\"uint64\",\"internalType\":\"uint64\"}]},{\"type\":\"error\",\"name\":\"NotInitializing\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"OutdatedState\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"OwnableInvalidOwner\",\"inputs\":[{\"name\":\"owner\",\"type\":\"address\",\"internalType\":\"address\"}]},{\"type\":\"error\",\"name\":\"OwnableUnauthorizedAccount\",\"inputs\":[{\"name\":\"account\",\"type\":\"address\",\"internalType\":\"address\"}]},{\"type\":\"error\",\"name\":\"UUPSUnauthorizedCallContext\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"UUPSUnsupportedProxiableUUID\",\"inputs\":[{\"name\":\"slot\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"}]},{\"type\":\"error\",\"name\":\"UnsupportedDegree\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"WrongPlonkVK\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"WrongStakeTableUsed\",\"inputs\":[]}]",
}

LightclientMetaData contains all meta data concerning the Lightclient contract.

Functions

This section is empty.

Types

type BN254G1Point

type BN254G1Point struct {
	X *big.Int
	Y *big.Int
}

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

type IPlonkVerifierPlonkProof

type IPlonkVerifierPlonkProof struct {
	Wire0                 BN254G1Point
	Wire1                 BN254G1Point
	Wire2                 BN254G1Point
	Wire3                 BN254G1Point
	Wire4                 BN254G1Point
	ProdPerm              BN254G1Point
	Split0                BN254G1Point
	Split1                BN254G1Point
	Split2                BN254G1Point
	Split3                BN254G1Point
	Split4                BN254G1Point
	Zeta                  BN254G1Point
	ZetaOmega             BN254G1Point
	WireEval0             *big.Int
	WireEval1             *big.Int
	WireEval2             *big.Int
	WireEval3             *big.Int
	WireEval4             *big.Int
	SigmaEval0            *big.Int
	SigmaEval1            *big.Int
	SigmaEval2            *big.Int
	SigmaEval3            *big.Int
	ProdPermZetaOmegaEval *big.Int
}

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

type LightClientLightClientState

type LightClientLightClientState struct {
	ViewNum                  uint64
	BlockHeight              uint64
	BlockCommRoot            *big.Int
	FeeLedgerComm            *big.Int
	StakeTableBlsKeyComm     *big.Int
	StakeTableSchnorrKeyComm *big.Int
	StakeTableAmountComm     *big.Int
	Threshold                *big.Int
}

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

type LightClientReader

type LightClientReader struct {
	LightClient Lightclient
	L1Client    bind.ContractBackend
}

func NewLightClientReader

func NewLightClientReader(lightClientAddr common.Address, l1client bind.ContractBackend) (*LightClientReader, error)

func (*LightClientReader) FetchMerkleRootAtL1Block

func (l *LightClientReader) FetchMerkleRootAtL1Block(l1BlockHeight uint64) (types.BlockMerkleRoot, error)

Fetch the merkle root at a given L1 checkpoint

func (*LightClientReader) IsHotShotAvailable added in v0.0.12

func (l *LightClientReader) IsHotShotAvailable(t time.Duration) bool

func (*LightClientReader) ValidatedHeight

func (l *LightClientReader) ValidatedHeight() (validatedHeight uint64, l1Height uint64, err error)

Returns the L1 block number where the light client has validated a particular hotshot block number

type LightClientReaderInterface added in v0.0.11

type LightClientReaderInterface interface {
	ValidatedHeight() (validatedHeight uint64, l1Height uint64, err error)
	FetchMerkleRootAtL1Block(L1BlockHeight uint64) (types.BlockMerkleRoot, error)

	// A mock function for now
	IsHotShotAvailable(maxDriftTime time.Duration) bool
}

type Lightclient

type Lightclient struct {
	LightclientCaller     // Read-only binding to the contract
	LightclientTransactor // Write-only binding to the contract
	LightclientFilterer   // Log filterer for contract events
}

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

func NewLightclient

func NewLightclient(address common.Address, backend bind.ContractBackend) (*Lightclient, error)

NewLightclient creates a new instance of Lightclient, bound to a specific deployed contract.

type LightclientCaller

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

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

func NewLightclientCaller

func NewLightclientCaller(address common.Address, caller bind.ContractCaller) (*LightclientCaller, error)

NewLightclientCaller creates a new read-only instance of Lightclient, bound to a specific deployed contract.

func (*LightclientCaller) BlocksPerEpoch added in v0.0.12

func (_Lightclient *LightclientCaller) BlocksPerEpoch(opts *bind.CallOpts) (uint32, error)

BlocksPerEpoch is a free data retrieval call binding the contract method 0xf0682054.

Solidity: function blocksPerEpoch() view returns(uint32)

func (*LightclientCaller) ComputeStakeTableComm

func (_Lightclient *LightclientCaller) ComputeStakeTableComm(opts *bind.CallOpts, state LightClientLightClientState) ([32]byte, error)

ComputeStakeTableComm is a free data retrieval call binding the contract method 0xaa922732.

Solidity: function computeStakeTableComm((uint64,uint64,uint256,uint256,uint256,uint256,uint256,uint256) state) pure returns(bytes32)

func (*LightclientCaller) CurrentEpoch

func (_Lightclient *LightclientCaller) CurrentEpoch(opts *bind.CallOpts) (uint64, error)

CurrentEpoch is a free data retrieval call binding the contract method 0x76671808.

Solidity: function currentEpoch() view returns(uint64)

func (*LightclientCaller) FrozenStakeTableCommitment

func (_Lightclient *LightclientCaller) FrozenStakeTableCommitment(opts *bind.CallOpts) ([32]byte, error)

FrozenStakeTableCommitment is a free data retrieval call binding the contract method 0x382b215a.

Solidity: function frozenStakeTableCommitment() view returns(bytes32)

func (*LightclientCaller) FrozenThreshold

func (_Lightclient *LightclientCaller) FrozenThreshold(opts *bind.CallOpts) (*big.Int, error)

FrozenThreshold is a free data retrieval call binding the contract method 0xca6fe855.

Solidity: function frozenThreshold() view returns(uint256)

func (*LightclientCaller) GetFinalizedState added in v0.0.12

func (_Lightclient *LightclientCaller) GetFinalizedState(opts *bind.CallOpts) (LightClientLightClientState, error)

GetFinalizedState is a free data retrieval call binding the contract method 0x82d07ff3.

Solidity: function getFinalizedState() view returns((uint64,uint64,uint256,uint256,uint256,uint256,uint256,uint256))

func (*LightclientCaller) GetGenesisState added in v0.0.12

func (_Lightclient *LightclientCaller) GetGenesisState(opts *bind.CallOpts) (LightClientLightClientState, error)

GetGenesisState is a free data retrieval call binding the contract method 0x4847ae5d.

Solidity: function getGenesisState() view returns((uint64,uint64,uint256,uint256,uint256,uint256,uint256,uint256))

func (*LightclientCaller) GetVersion added in v0.0.12

func (_Lightclient *LightclientCaller) GetVersion(opts *bind.CallOpts) (struct {
	MajorVersion uint8
	MinorVersion uint8
	PatchVersion uint8
}, error)

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

Solidity: function getVersion() pure returns(uint8 majorVersion, uint8 minorVersion, uint8 patchVersion)

func (*LightclientCaller) Owner added in v0.0.12

func (_Lightclient *LightclientCaller) Owner(opts *bind.CallOpts) (common.Address, error)

Owner is a free data retrieval call binding the contract method 0x8da5cb5b.

Solidity: function owner() view returns(address)

func (*LightclientCaller) ProxiableUUID added in v0.0.12

func (_Lightclient *LightclientCaller) ProxiableUUID(opts *bind.CallOpts) ([32]byte, error)

ProxiableUUID is a free data retrieval call binding the contract method 0x52d1902d.

Solidity: function proxiableUUID() view returns(bytes32)

func (*LightclientCaller) States added in v0.0.12

func (_Lightclient *LightclientCaller) States(opts *bind.CallOpts, index uint32) (struct {
	ViewNum                  uint64
	BlockHeight              uint64
	BlockCommRoot            *big.Int
	FeeLedgerComm            *big.Int
	StakeTableBlsKeyComm     *big.Int
	StakeTableSchnorrKeyComm *big.Int
	StakeTableAmountComm     *big.Int
	Threshold                *big.Int
}, error)

States is a free data retrieval call binding the contract method 0x7f17baad.

Solidity: function states(uint32 index) view returns(uint64 viewNum, uint64 blockHeight, uint256 blockCommRoot, uint256 feeLedgerComm, uint256 stakeTableBlsKeyComm, uint256 stakeTableSchnorrKeyComm, uint256 stakeTableAmountComm, uint256 threshold)

func (*LightclientCaller) UPGRADEINTERFACEVERSION added in v0.0.12

func (_Lightclient *LightclientCaller) UPGRADEINTERFACEVERSION(opts *bind.CallOpts) (string, error)

UPGRADEINTERFACEVERSION is a free data retrieval call binding the contract method 0xad3cb1cc.

Solidity: function UPGRADE_INTERFACE_VERSION() view returns(string)

func (*LightclientCaller) VotingStakeTableCommitment

func (_Lightclient *LightclientCaller) VotingStakeTableCommitment(opts *bind.CallOpts) ([32]byte, error)

VotingStakeTableCommitment is a free data retrieval call binding the contract method 0x76b6b7cb.

Solidity: function votingStakeTableCommitment() view returns(bytes32)

func (*LightclientCaller) VotingThreshold

func (_Lightclient *LightclientCaller) VotingThreshold(opts *bind.CallOpts) (*big.Int, error)

VotingThreshold is a free data retrieval call binding the contract method 0x62827733.

Solidity: function votingThreshold() view returns(uint256)

type LightclientCallerRaw

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

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

func (*LightclientCallerRaw) Call

func (_Lightclient *LightclientCallerRaw) 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 LightclientCallerSession

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

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

func (*LightclientCallerSession) BlocksPerEpoch added in v0.0.12

func (_Lightclient *LightclientCallerSession) BlocksPerEpoch() (uint32, error)

BlocksPerEpoch is a free data retrieval call binding the contract method 0xf0682054.

Solidity: function blocksPerEpoch() view returns(uint32)

func (*LightclientCallerSession) ComputeStakeTableComm

func (_Lightclient *LightclientCallerSession) ComputeStakeTableComm(state LightClientLightClientState) ([32]byte, error)

ComputeStakeTableComm is a free data retrieval call binding the contract method 0xaa922732.

Solidity: function computeStakeTableComm((uint64,uint64,uint256,uint256,uint256,uint256,uint256,uint256) state) pure returns(bytes32)

func (*LightclientCallerSession) CurrentEpoch

func (_Lightclient *LightclientCallerSession) CurrentEpoch() (uint64, error)

CurrentEpoch is a free data retrieval call binding the contract method 0x76671808.

Solidity: function currentEpoch() view returns(uint64)

func (*LightclientCallerSession) FrozenStakeTableCommitment

func (_Lightclient *LightclientCallerSession) FrozenStakeTableCommitment() ([32]byte, error)

FrozenStakeTableCommitment is a free data retrieval call binding the contract method 0x382b215a.

Solidity: function frozenStakeTableCommitment() view returns(bytes32)

func (*LightclientCallerSession) FrozenThreshold

func (_Lightclient *LightclientCallerSession) FrozenThreshold() (*big.Int, error)

FrozenThreshold is a free data retrieval call binding the contract method 0xca6fe855.

Solidity: function frozenThreshold() view returns(uint256)

func (*LightclientCallerSession) GetFinalizedState added in v0.0.12

func (_Lightclient *LightclientCallerSession) GetFinalizedState() (LightClientLightClientState, error)

GetFinalizedState is a free data retrieval call binding the contract method 0x82d07ff3.

Solidity: function getFinalizedState() view returns((uint64,uint64,uint256,uint256,uint256,uint256,uint256,uint256))

func (*LightclientCallerSession) GetGenesisState added in v0.0.12

func (_Lightclient *LightclientCallerSession) GetGenesisState() (LightClientLightClientState, error)

GetGenesisState is a free data retrieval call binding the contract method 0x4847ae5d.

Solidity: function getGenesisState() view returns((uint64,uint64,uint256,uint256,uint256,uint256,uint256,uint256))

func (*LightclientCallerSession) GetVersion added in v0.0.12

func (_Lightclient *LightclientCallerSession) GetVersion() (struct {
	MajorVersion uint8
	MinorVersion uint8
	PatchVersion uint8
}, error)

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

Solidity: function getVersion() pure returns(uint8 majorVersion, uint8 minorVersion, uint8 patchVersion)

func (*LightclientCallerSession) Owner added in v0.0.12

func (_Lightclient *LightclientCallerSession) Owner() (common.Address, error)

Owner is a free data retrieval call binding the contract method 0x8da5cb5b.

Solidity: function owner() view returns(address)

func (*LightclientCallerSession) ProxiableUUID added in v0.0.12

func (_Lightclient *LightclientCallerSession) ProxiableUUID() ([32]byte, error)

ProxiableUUID is a free data retrieval call binding the contract method 0x52d1902d.

Solidity: function proxiableUUID() view returns(bytes32)

func (*LightclientCallerSession) States added in v0.0.12

func (_Lightclient *LightclientCallerSession) States(index uint32) (struct {
	ViewNum                  uint64
	BlockHeight              uint64
	BlockCommRoot            *big.Int
	FeeLedgerComm            *big.Int
	StakeTableBlsKeyComm     *big.Int
	StakeTableSchnorrKeyComm *big.Int
	StakeTableAmountComm     *big.Int
	Threshold                *big.Int
}, error)

States is a free data retrieval call binding the contract method 0x7f17baad.

Solidity: function states(uint32 index) view returns(uint64 viewNum, uint64 blockHeight, uint256 blockCommRoot, uint256 feeLedgerComm, uint256 stakeTableBlsKeyComm, uint256 stakeTableSchnorrKeyComm, uint256 stakeTableAmountComm, uint256 threshold)

func (*LightclientCallerSession) UPGRADEINTERFACEVERSION added in v0.0.12

func (_Lightclient *LightclientCallerSession) UPGRADEINTERFACEVERSION() (string, error)

UPGRADEINTERFACEVERSION is a free data retrieval call binding the contract method 0xad3cb1cc.

Solidity: function UPGRADE_INTERFACE_VERSION() view returns(string)

func (*LightclientCallerSession) VotingStakeTableCommitment

func (_Lightclient *LightclientCallerSession) VotingStakeTableCommitment() ([32]byte, error)

VotingStakeTableCommitment is a free data retrieval call binding the contract method 0x76b6b7cb.

Solidity: function votingStakeTableCommitment() view returns(bytes32)

func (*LightclientCallerSession) VotingThreshold

func (_Lightclient *LightclientCallerSession) VotingThreshold() (*big.Int, error)

VotingThreshold is a free data retrieval call binding the contract method 0x62827733.

Solidity: function votingThreshold() view returns(uint256)

type LightclientEpochChanged

type LightclientEpochChanged struct {
	Arg0 uint64
	Raw  types.Log // Blockchain specific contextual infos
}

LightclientEpochChanged represents a EpochChanged event raised by the Lightclient contract.

type LightclientEpochChangedIterator

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

LightclientEpochChangedIterator is returned from FilterEpochChanged and is used to iterate over the raw logs and unpacked data for EpochChanged events raised by the Lightclient contract.

func (*LightclientEpochChangedIterator) Close

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

func (*LightclientEpochChangedIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*LightclientEpochChangedIterator) 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 LightclientFilterer

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

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

func NewLightclientFilterer

func NewLightclientFilterer(address common.Address, filterer bind.ContractFilterer) (*LightclientFilterer, error)

NewLightclientFilterer creates a new log filterer instance of Lightclient, bound to a specific deployed contract.

func (*LightclientFilterer) FilterEpochChanged

func (_Lightclient *LightclientFilterer) FilterEpochChanged(opts *bind.FilterOpts) (*LightclientEpochChangedIterator, error)

FilterEpochChanged is a free log retrieval operation binding the contract event 0xdb3558259e039d7e50e816b9dcce30fb114d8a9c86eca5ab14b60194d6945d3f.

Solidity: event EpochChanged(uint64 arg0)

func (*LightclientFilterer) FilterInitialized added in v0.0.12

func (_Lightclient *LightclientFilterer) FilterInitialized(opts *bind.FilterOpts) (*LightclientInitializedIterator, error)

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

Solidity: event Initialized(uint64 version)

func (*LightclientFilterer) FilterNewState

func (_Lightclient *LightclientFilterer) FilterNewState(opts *bind.FilterOpts, viewNum []uint64, blockHeight []uint64) (*LightclientNewStateIterator, error)

FilterNewState is a free log retrieval operation binding the contract event 0xa04a773924505a418564363725f56832f5772e6b8d0dbd6efce724dfe803dae6.

Solidity: event NewState(uint64 indexed viewNum, uint64 indexed blockHeight, uint256 blockCommRoot)

func (*LightclientFilterer) FilterOwnershipTransferred added in v0.0.12

func (_Lightclient *LightclientFilterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*LightclientOwnershipTransferredIterator, error)

FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0.

Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)

func (*LightclientFilterer) FilterUpgrade added in v0.0.12

func (_Lightclient *LightclientFilterer) FilterUpgrade(opts *bind.FilterOpts) (*LightclientUpgradeIterator, error)

FilterUpgrade is a free log retrieval operation binding the contract event 0xf78721226efe9a1bb678189a16d1554928b9f2192e2cb93eeda83b79fa40007d.

Solidity: event Upgrade(address implementation)

func (*LightclientFilterer) FilterUpgraded added in v0.0.12

func (_Lightclient *LightclientFilterer) FilterUpgraded(opts *bind.FilterOpts, implementation []common.Address) (*LightclientUpgradedIterator, error)

FilterUpgraded is a free log retrieval operation binding the contract event 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b.

Solidity: event Upgraded(address indexed implementation)

func (*LightclientFilterer) ParseEpochChanged

func (_Lightclient *LightclientFilterer) ParseEpochChanged(log types.Log) (*LightclientEpochChanged, error)

ParseEpochChanged is a log parse operation binding the contract event 0xdb3558259e039d7e50e816b9dcce30fb114d8a9c86eca5ab14b60194d6945d3f.

Solidity: event EpochChanged(uint64 arg0)

func (*LightclientFilterer) ParseInitialized added in v0.0.12

func (_Lightclient *LightclientFilterer) ParseInitialized(log types.Log) (*LightclientInitialized, error)

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

Solidity: event Initialized(uint64 version)

func (*LightclientFilterer) ParseNewState

func (_Lightclient *LightclientFilterer) ParseNewState(log types.Log) (*LightclientNewState, error)

ParseNewState is a log parse operation binding the contract event 0xa04a773924505a418564363725f56832f5772e6b8d0dbd6efce724dfe803dae6.

Solidity: event NewState(uint64 indexed viewNum, uint64 indexed blockHeight, uint256 blockCommRoot)

func (*LightclientFilterer) ParseOwnershipTransferred added in v0.0.12

func (_Lightclient *LightclientFilterer) ParseOwnershipTransferred(log types.Log) (*LightclientOwnershipTransferred, error)

ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0.

Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)

func (*LightclientFilterer) ParseUpgrade added in v0.0.12

func (_Lightclient *LightclientFilterer) ParseUpgrade(log types.Log) (*LightclientUpgrade, error)

ParseUpgrade is a log parse operation binding the contract event 0xf78721226efe9a1bb678189a16d1554928b9f2192e2cb93eeda83b79fa40007d.

Solidity: event Upgrade(address implementation)

func (*LightclientFilterer) ParseUpgraded added in v0.0.12

func (_Lightclient *LightclientFilterer) ParseUpgraded(log types.Log) (*LightclientUpgraded, error)

ParseUpgraded is a log parse operation binding the contract event 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b.

Solidity: event Upgraded(address indexed implementation)

func (*LightclientFilterer) WatchEpochChanged

func (_Lightclient *LightclientFilterer) WatchEpochChanged(opts *bind.WatchOpts, sink chan<- *LightclientEpochChanged) (event.Subscription, error)

WatchEpochChanged is a free log subscription operation binding the contract event 0xdb3558259e039d7e50e816b9dcce30fb114d8a9c86eca5ab14b60194d6945d3f.

Solidity: event EpochChanged(uint64 arg0)

func (*LightclientFilterer) WatchInitialized added in v0.0.12

func (_Lightclient *LightclientFilterer) WatchInitialized(opts *bind.WatchOpts, sink chan<- *LightclientInitialized) (event.Subscription, error)

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

Solidity: event Initialized(uint64 version)

func (*LightclientFilterer) WatchNewState

func (_Lightclient *LightclientFilterer) WatchNewState(opts *bind.WatchOpts, sink chan<- *LightclientNewState, viewNum []uint64, blockHeight []uint64) (event.Subscription, error)

WatchNewState is a free log subscription operation binding the contract event 0xa04a773924505a418564363725f56832f5772e6b8d0dbd6efce724dfe803dae6.

Solidity: event NewState(uint64 indexed viewNum, uint64 indexed blockHeight, uint256 blockCommRoot)

func (*LightclientFilterer) WatchOwnershipTransferred added in v0.0.12

func (_Lightclient *LightclientFilterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *LightclientOwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error)

WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0.

Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)

func (*LightclientFilterer) WatchUpgrade added in v0.0.12

func (_Lightclient *LightclientFilterer) WatchUpgrade(opts *bind.WatchOpts, sink chan<- *LightclientUpgrade) (event.Subscription, error)

WatchUpgrade is a free log subscription operation binding the contract event 0xf78721226efe9a1bb678189a16d1554928b9f2192e2cb93eeda83b79fa40007d.

Solidity: event Upgrade(address implementation)

func (*LightclientFilterer) WatchUpgraded added in v0.0.12

func (_Lightclient *LightclientFilterer) WatchUpgraded(opts *bind.WatchOpts, sink chan<- *LightclientUpgraded, implementation []common.Address) (event.Subscription, error)

WatchUpgraded is a free log subscription operation binding the contract event 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b.

Solidity: event Upgraded(address indexed implementation)

type LightclientInitialized added in v0.0.12

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

LightclientInitialized represents a Initialized event raised by the Lightclient contract.

type LightclientInitializedIterator added in v0.0.12

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

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

func (*LightclientInitializedIterator) Close added in v0.0.12

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

func (*LightclientInitializedIterator) Error added in v0.0.12

Error returns any retrieval or parsing error occurred during filtering.

func (*LightclientInitializedIterator) Next added in v0.0.12

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 LightclientNewState

type LightclientNewState struct {
	ViewNum       uint64
	BlockHeight   uint64
	BlockCommRoot *big.Int
	Raw           types.Log // Blockchain specific contextual infos
}

LightclientNewState represents a NewState event raised by the Lightclient contract.

type LightclientNewStateIterator

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

LightclientNewStateIterator is returned from FilterNewState and is used to iterate over the raw logs and unpacked data for NewState events raised by the Lightclient contract.

func (*LightclientNewStateIterator) Close

func (it *LightclientNewStateIterator) Close() error

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

func (*LightclientNewStateIterator) Error

func (it *LightclientNewStateIterator) Error() error

Error returns any retrieval or parsing error occurred during filtering.

func (*LightclientNewStateIterator) Next

func (it *LightclientNewStateIterator) Next() bool

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 LightclientOwnershipTransferred added in v0.0.12

type LightclientOwnershipTransferred struct {
	PreviousOwner common.Address
	NewOwner      common.Address
	Raw           types.Log // Blockchain specific contextual infos
}

LightclientOwnershipTransferred represents a OwnershipTransferred event raised by the Lightclient contract.

type LightclientOwnershipTransferredIterator added in v0.0.12

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

LightclientOwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the Lightclient contract.

func (*LightclientOwnershipTransferredIterator) Close added in v0.0.12

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

func (*LightclientOwnershipTransferredIterator) Error added in v0.0.12

Error returns any retrieval or parsing error occurred during filtering.

func (*LightclientOwnershipTransferredIterator) Next added in v0.0.12

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 LightclientRaw

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

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

func (*LightclientRaw) Call

func (_Lightclient *LightclientRaw) 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 (*LightclientRaw) Transact

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

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

func (*LightclientRaw) Transfer

func (_Lightclient *LightclientRaw) 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 LightclientSession

type LightclientSession struct {
	Contract     *Lightclient      // 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
}

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

func (*LightclientSession) BlocksPerEpoch added in v0.0.12

func (_Lightclient *LightclientSession) BlocksPerEpoch() (uint32, error)

BlocksPerEpoch is a free data retrieval call binding the contract method 0xf0682054.

Solidity: function blocksPerEpoch() view returns(uint32)

func (*LightclientSession) ComputeStakeTableComm

func (_Lightclient *LightclientSession) ComputeStakeTableComm(state LightClientLightClientState) ([32]byte, error)

ComputeStakeTableComm is a free data retrieval call binding the contract method 0xaa922732.

Solidity: function computeStakeTableComm((uint64,uint64,uint256,uint256,uint256,uint256,uint256,uint256) state) pure returns(bytes32)

func (*LightclientSession) CurrentEpoch

func (_Lightclient *LightclientSession) CurrentEpoch() (uint64, error)

CurrentEpoch is a free data retrieval call binding the contract method 0x76671808.

Solidity: function currentEpoch() view returns(uint64)

func (*LightclientSession) FrozenStakeTableCommitment

func (_Lightclient *LightclientSession) FrozenStakeTableCommitment() ([32]byte, error)

FrozenStakeTableCommitment is a free data retrieval call binding the contract method 0x382b215a.

Solidity: function frozenStakeTableCommitment() view returns(bytes32)

func (*LightclientSession) FrozenThreshold

func (_Lightclient *LightclientSession) FrozenThreshold() (*big.Int, error)

FrozenThreshold is a free data retrieval call binding the contract method 0xca6fe855.

Solidity: function frozenThreshold() view returns(uint256)

func (*LightclientSession) GetFinalizedState added in v0.0.12

func (_Lightclient *LightclientSession) GetFinalizedState() (LightClientLightClientState, error)

GetFinalizedState is a free data retrieval call binding the contract method 0x82d07ff3.

Solidity: function getFinalizedState() view returns((uint64,uint64,uint256,uint256,uint256,uint256,uint256,uint256))

func (*LightclientSession) GetGenesisState added in v0.0.12

func (_Lightclient *LightclientSession) GetGenesisState() (LightClientLightClientState, error)

GetGenesisState is a free data retrieval call binding the contract method 0x4847ae5d.

Solidity: function getGenesisState() view returns((uint64,uint64,uint256,uint256,uint256,uint256,uint256,uint256))

func (*LightclientSession) GetVersion added in v0.0.12

func (_Lightclient *LightclientSession) GetVersion() (struct {
	MajorVersion uint8
	MinorVersion uint8
	PatchVersion uint8
}, error)

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

Solidity: function getVersion() pure returns(uint8 majorVersion, uint8 minorVersion, uint8 patchVersion)

func (*LightclientSession) Initialize added in v0.0.12

func (_Lightclient *LightclientSession) Initialize(genesis LightClientLightClientState, numBlocksPerEpoch uint32, owner common.Address) (*types.Transaction, error)

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

Solidity: function initialize((uint64,uint64,uint256,uint256,uint256,uint256,uint256,uint256) genesis, uint32 numBlocksPerEpoch, address owner) returns()

func (*LightclientSession) NewFinalizedState

func (_Lightclient *LightclientSession) NewFinalizedState(newState LightClientLightClientState, proof IPlonkVerifierPlonkProof) (*types.Transaction, error)

NewFinalizedState is a paid mutator transaction binding the contract method 0x409939b7.

Solidity: function newFinalizedState((uint64,uint64,uint256,uint256,uint256,uint256,uint256,uint256) newState, ((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256) proof) returns()

func (*LightclientSession) Owner added in v0.0.12

func (_Lightclient *LightclientSession) Owner() (common.Address, error)

Owner is a free data retrieval call binding the contract method 0x8da5cb5b.

Solidity: function owner() view returns(address)

func (*LightclientSession) ProxiableUUID added in v0.0.12

func (_Lightclient *LightclientSession) ProxiableUUID() ([32]byte, error)

ProxiableUUID is a free data retrieval call binding the contract method 0x52d1902d.

Solidity: function proxiableUUID() view returns(bytes32)

func (*LightclientSession) RenounceOwnership added in v0.0.12

func (_Lightclient *LightclientSession) RenounceOwnership() (*types.Transaction, error)

RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6.

Solidity: function renounceOwnership() returns()

func (*LightclientSession) States added in v0.0.12

func (_Lightclient *LightclientSession) States(index uint32) (struct {
	ViewNum                  uint64
	BlockHeight              uint64
	BlockCommRoot            *big.Int
	FeeLedgerComm            *big.Int
	StakeTableBlsKeyComm     *big.Int
	StakeTableSchnorrKeyComm *big.Int
	StakeTableAmountComm     *big.Int
	Threshold                *big.Int
}, error)

States is a free data retrieval call binding the contract method 0x7f17baad.

Solidity: function states(uint32 index) view returns(uint64 viewNum, uint64 blockHeight, uint256 blockCommRoot, uint256 feeLedgerComm, uint256 stakeTableBlsKeyComm, uint256 stakeTableSchnorrKeyComm, uint256 stakeTableAmountComm, uint256 threshold)

func (*LightclientSession) TransferOwnership added in v0.0.12

func (_Lightclient *LightclientSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error)

TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b.

Solidity: function transferOwnership(address newOwner) returns()

func (*LightclientSession) UPGRADEINTERFACEVERSION added in v0.0.12

func (_Lightclient *LightclientSession) UPGRADEINTERFACEVERSION() (string, error)

UPGRADEINTERFACEVERSION is a free data retrieval call binding the contract method 0xad3cb1cc.

Solidity: function UPGRADE_INTERFACE_VERSION() view returns(string)

func (*LightclientSession) UpgradeToAndCall added in v0.0.12

func (_Lightclient *LightclientSession) UpgradeToAndCall(newImplementation common.Address, data []byte) (*types.Transaction, error)

UpgradeToAndCall is a paid mutator transaction binding the contract method 0x4f1ef286.

Solidity: function upgradeToAndCall(address newImplementation, bytes data) payable returns()

func (*LightclientSession) VotingStakeTableCommitment

func (_Lightclient *LightclientSession) VotingStakeTableCommitment() ([32]byte, error)

VotingStakeTableCommitment is a free data retrieval call binding the contract method 0x76b6b7cb.

Solidity: function votingStakeTableCommitment() view returns(bytes32)

func (*LightclientSession) VotingThreshold

func (_Lightclient *LightclientSession) VotingThreshold() (*big.Int, error)

VotingThreshold is a free data retrieval call binding the contract method 0x62827733.

Solidity: function votingThreshold() view returns(uint256)

type LightclientTransactor

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

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

func NewLightclientTransactor

func NewLightclientTransactor(address common.Address, transactor bind.ContractTransactor) (*LightclientTransactor, error)

NewLightclientTransactor creates a new write-only instance of Lightclient, bound to a specific deployed contract.

func (*LightclientTransactor) Initialize added in v0.0.12

func (_Lightclient *LightclientTransactor) Initialize(opts *bind.TransactOpts, genesis LightClientLightClientState, numBlocksPerEpoch uint32, owner common.Address) (*types.Transaction, error)

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

Solidity: function initialize((uint64,uint64,uint256,uint256,uint256,uint256,uint256,uint256) genesis, uint32 numBlocksPerEpoch, address owner) returns()

func (*LightclientTransactor) NewFinalizedState

func (_Lightclient *LightclientTransactor) NewFinalizedState(opts *bind.TransactOpts, newState LightClientLightClientState, proof IPlonkVerifierPlonkProof) (*types.Transaction, error)

NewFinalizedState is a paid mutator transaction binding the contract method 0x409939b7.

Solidity: function newFinalizedState((uint64,uint64,uint256,uint256,uint256,uint256,uint256,uint256) newState, ((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256) proof) returns()

func (*LightclientTransactor) RenounceOwnership added in v0.0.12

func (_Lightclient *LightclientTransactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error)

RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6.

Solidity: function renounceOwnership() returns()

func (*LightclientTransactor) TransferOwnership added in v0.0.12

func (_Lightclient *LightclientTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error)

TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b.

Solidity: function transferOwnership(address newOwner) returns()

func (*LightclientTransactor) UpgradeToAndCall added in v0.0.12

func (_Lightclient *LightclientTransactor) UpgradeToAndCall(opts *bind.TransactOpts, newImplementation common.Address, data []byte) (*types.Transaction, error)

UpgradeToAndCall is a paid mutator transaction binding the contract method 0x4f1ef286.

Solidity: function upgradeToAndCall(address newImplementation, bytes data) payable returns()

type LightclientTransactorRaw

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

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

func (*LightclientTransactorRaw) Transact

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

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

func (*LightclientTransactorRaw) Transfer

func (_Lightclient *LightclientTransactorRaw) 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 LightclientTransactorSession

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

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

func (*LightclientTransactorSession) Initialize added in v0.0.12

func (_Lightclient *LightclientTransactorSession) Initialize(genesis LightClientLightClientState, numBlocksPerEpoch uint32, owner common.Address) (*types.Transaction, error)

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

Solidity: function initialize((uint64,uint64,uint256,uint256,uint256,uint256,uint256,uint256) genesis, uint32 numBlocksPerEpoch, address owner) returns()

func (*LightclientTransactorSession) NewFinalizedState

func (_Lightclient *LightclientTransactorSession) NewFinalizedState(newState LightClientLightClientState, proof IPlonkVerifierPlonkProof) (*types.Transaction, error)

NewFinalizedState is a paid mutator transaction binding the contract method 0x409939b7.

Solidity: function newFinalizedState((uint64,uint64,uint256,uint256,uint256,uint256,uint256,uint256) newState, ((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256) proof) returns()

func (*LightclientTransactorSession) RenounceOwnership added in v0.0.12

func (_Lightclient *LightclientTransactorSession) RenounceOwnership() (*types.Transaction, error)

RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6.

Solidity: function renounceOwnership() returns()

func (*LightclientTransactorSession) TransferOwnership added in v0.0.12

func (_Lightclient *LightclientTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error)

TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b.

Solidity: function transferOwnership(address newOwner) returns()

func (*LightclientTransactorSession) UpgradeToAndCall added in v0.0.12

func (_Lightclient *LightclientTransactorSession) UpgradeToAndCall(newImplementation common.Address, data []byte) (*types.Transaction, error)

UpgradeToAndCall is a paid mutator transaction binding the contract method 0x4f1ef286.

Solidity: function upgradeToAndCall(address newImplementation, bytes data) payable returns()

type LightclientUpgrade added in v0.0.12

type LightclientUpgrade struct {
	Implementation common.Address
	Raw            types.Log // Blockchain specific contextual infos
}

LightclientUpgrade represents a Upgrade event raised by the Lightclient contract.

type LightclientUpgradeIterator added in v0.0.12

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

LightclientUpgradeIterator is returned from FilterUpgrade and is used to iterate over the raw logs and unpacked data for Upgrade events raised by the Lightclient contract.

func (*LightclientUpgradeIterator) Close added in v0.0.12

func (it *LightclientUpgradeIterator) Close() error

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

func (*LightclientUpgradeIterator) Error added in v0.0.12

func (it *LightclientUpgradeIterator) Error() error

Error returns any retrieval or parsing error occurred during filtering.

func (*LightclientUpgradeIterator) Next added in v0.0.12

func (it *LightclientUpgradeIterator) Next() bool

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 LightclientUpgraded added in v0.0.12

type LightclientUpgraded struct {
	Implementation common.Address
	Raw            types.Log // Blockchain specific contextual infos
}

LightclientUpgraded represents a Upgraded event raised by the Lightclient contract.

type LightclientUpgradedIterator added in v0.0.12

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

LightclientUpgradedIterator is returned from FilterUpgraded and is used to iterate over the raw logs and unpacked data for Upgraded events raised by the Lightclient contract.

func (*LightclientUpgradedIterator) Close added in v0.0.12

func (it *LightclientUpgradedIterator) Close() error

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

func (*LightclientUpgradedIterator) Error added in v0.0.12

func (it *LightclientUpgradedIterator) Error() error

Error returns any retrieval or parsing error occurred during filtering.

func (*LightclientUpgradedIterator) Next added in v0.0.12

func (it *LightclientUpgradedIterator) Next() bool

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.

Jump to

Keyboard shortcuts

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