Documentation ¶
Index ¶
- Constants
- Variables
- func OpenKeystore(dir string) *keystore.KeyStore
- func StoredContracts() map[string]StoredContract
- func TestAndVerifyConfig(ctx context.Context, cfg config.EVM) error
- type Client
- func (c *Client) BalanceAt(ctx context.Context, address common.Address, blockHeight uint64) (*big.Int, error)
- func (c *Client) BlockByHash(ctx context.Context, blockHash common.Hash) (*ethtypes.Block, error)
- func (c *Client) DeployContract(ctx context.Context, chainID *big.Int, rawABI string, ...) (contractAddr common.Address, tx *ethtypes.Transaction, err error)
- func (c *Client) ExecuteSmartContract(ctx context.Context, chainID *big.Int, contractAbi abi.ABI, ...) (*etherumtypes.Transaction, error)
- func (c *Client) FilterLogs(ctx context.Context, fq etherum.FilterQuery, currBlockHeight *big.Int, ...) (bool, error)
- func (c *Client) FindBlockNearestToTime(ctx context.Context, startingHeight uint64, when time.Time) (uint64, error)
- func (c *Client) FindCurrentBlockNumber(ctx context.Context) (*big.Int, error)
- func (c Client) GetEthClient() ethClientConn
- func (c *Client) LastValsetID(ctx context.Context, addr common.Address) (*big.Int, error)
- func (c *Client) TransactionByHash(ctx context.Context, txHash common.Hash) (*ethtypes.Transaction, bool, error)
- type CompassBinding
- type CompassBindingCaller
- type CompassBindingFilterer
- type CompassBindingTransactor
- type CompassConsensus
- type CompassLogicCallArgs
- type CompassTokenSendArgs
- type CompassValset
- type Factory
- type PalomaClienter
- type Processor
- func (p Processor) ExternalAccount() chain.ExternalAccount
- func (p Processor) GetChainReferenceID() string
- func (p Processor) GetSkywayEvents(ctx context.Context, orchestrator string) ([]chain.SkywayEventer, error)
- func (p Processor) HealthCheck(ctx context.Context) error
- func (p Processor) IsRightChain(ctx context.Context) error
- func (p Processor) ProcessMessages(ctx context.Context, queueTypeName queue.TypeName, ...) error
- func (p Processor) ProvideEvidence(ctx context.Context, queueTypeName queue.TypeName, ...) error
- func (p Processor) SignMessages(ctx context.Context, messages ...chain.QueuedMessage) ([]chain.SignedQueuedMessage, error)
- func (p Processor) SkywayRelayBatches(ctx context.Context, batches []chain.SkywayBatchWithSignatures) error
- func (p Processor) SkywaySignBatches(ctx context.Context, batches ...skyway.OutgoingTxBatch) ([]chain.SignedSkywayOutgoingTxBatch, error)
- func (p Processor) SubmitEventClaims(ctx context.Context, events []chain.SkywayEventer, orchestrator string) error
- func (p Processor) SupportedQueues() []string
- type Signature
- type StoredContract
Constants ¶
View Source
const ( ErrSmartContractNotFound = whoops.Errorf("smart contract %s was not found") ErrInvalidAddress = whoops.Errorf("provided address: '%s' is not valid") ErrAddressNotFoundInKeyStore = whoops.Errorf("address: '%s' not found in keystore: %s") ErrUnsupportedMessageType = whoops.Errorf("unsupported message type: %T") ErrABINotInitialized = whoops.String("ABI is not initialized") ErrEvm = whoops.String("EVM related error") ErrNoConsensus = whoops.String("no consensus reached") ErrCallAlreadyExecuted = whoops.String("message with identical ID already on target chain") ErrCouldntFindBlockWithTime = whoops.String("couldn't find block") )
View Source
const ( FieldMessageID whoops.Field[uint64] = "message id" FieldMessageType whoops.Field[any] = "message type" )
View Source
const (
SignedMessagePrefix = "\x19Ethereum Signed Message:\n32"
)
Variables ¶
View Source
var ErrStartingBlockIsInTheFuture = ErrCouldntFindBlockWithTime.WrapS("starting height's block time is set in future")
Functions ¶
func OpenKeystore ¶
func StoredContracts ¶
func StoredContracts() map[string]StoredContract
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func (*Client) BlockByHash ¶
func (*Client) DeployContract ¶
func (*Client) ExecuteSmartContract ¶
func (*Client) FilterLogs ¶
func (c *Client) FilterLogs(ctx context.Context, fq etherum.FilterQuery, currBlockHeight *big.Int, fn func(logs []ethtypes.Log) bool) (bool, error)
FilterLogs will gather all logs given a FilterQuery. If it encounters an error saying that there are too many results in the provided block window, then it's going to try to do this using a "binary search" approach while splitting the possible set in two, recursively.
func (*Client) FindBlockNearestToTime ¶ added in v0.5.0
func (*Client) FindCurrentBlockNumber ¶ added in v0.11.7
func (Client) GetEthClient ¶ added in v1.8.0
func (c Client) GetEthClient() ethClientConn
func (*Client) LastValsetID ¶ added in v0.11.7
type CompassBinding ¶ added in v0.11.7
type CompassBinding interface { CompassBindingCaller CompassBindingTransactor CompassBindingFilterer }
type CompassBindingCaller ¶ added in v0.11.7
type CompassBindingFilterer ¶ added in v0.11.7
type CompassBindingFilterer interface { FilterLogicCallEvent(opts *bind.FilterOpts) (*compassABI.CompassLogicCallEventIterator, error) FilterValsetUpdated(opts *bind.FilterOpts) (*compassABI.CompassValsetUpdatedIterator, error) ParseLogicCallEvent(log ethtypes.Log) (*compassABI.CompassLogicCallEvent, error) ParseValsetUpdated(log ethtypes.Log) (*compassABI.CompassValsetUpdated, error) WatchLogicCallEvent(opts *bind.WatchOpts, sink chan<- *compassABI.CompassLogicCallEvent) (event.Subscription, error) WatchValsetUpdated(opts *bind.WatchOpts, sink chan<- *compassABI.CompassValsetUpdated) (event.Subscription, error) }
type CompassBindingTransactor ¶ added in v0.11.7
type CompassBindingTransactor interface { SubmitLogicCall(opts *bind.TransactOpts, consensus compassABI.Struct2, args compassABI.Struct3, messageId *big.Int, deadline *big.Int) (*ethtypes.Transaction, error) UpdateValset(opts *bind.TransactOpts, consensus compassABI.Struct2, newValset compassABI.Struct0) (*ethtypes.Transaction, error) }
type CompassConsensus ¶ added in v0.4.0
type CompassConsensus struct { Valset CompassValset Signatures []Signature // contains filtered or unexported fields }
func BuildCompassConsensus ¶ added in v0.4.0
func BuildCompassConsensus( v *evmtypes.Valset, signatures []chain.ValidatorSignature, ) CompassConsensus
func (CompassConsensus) OriginalSignatures ¶ added in v0.4.0
func (c CompassConsensus) OriginalSignatures() [][]byte
type CompassLogicCallArgs ¶ added in v0.8.0
type CompassTokenSendArgs ¶ added in v1.8.0
type CompassValset ¶ added in v0.4.0
func TransformValsetToCompassValset ¶ added in v0.4.0
func TransformValsetToCompassValset(val *evmtypes.Valset) CompassValset
type Factory ¶
type Factory struct {
// contains filtered or unexported fields
}
func NewFactory ¶
func NewFactory(pc PalomaClienter) *Factory
type PalomaClienter ¶
type PalomaClienter interface { NewStatus() paloma.StatusUpdater AddMessageEvidence(ctx context.Context, queueTypeName string, messageID uint64, proof proto.Message) error SetPublicAccessData(ctx context.Context, queueTypeName string, messageID uint64, valsetID uint64, data []byte) error SetErrorData(ctx context.Context, queueTypeName string, messageID uint64, data []byte) error QueryGetEVMValsetByID(ctx context.Context, id uint64, chainID string) (*types.Valset, error) SendBatchSendToEVMClaim(ctx context.Context, claim skywaytypes.MsgBatchSendToRemoteClaim) error SendSendToPalomaClaim(ctx context.Context, claim skywaytypes.MsgSendToPalomaClaim) error SendLightNodeSaleClaim(ctx context.Context, claim skywaytypes.MsgLightNodeSaleClaim) error QueryLastObservedSkywayNonceByAddr(ctx context.Context, chainReferenceID string, orchestrator string) (uint64, error) QueryBatchRequestByNonce(ctx context.Context, nonce uint64, contract string) (skywaytypes.OutgoingTxBatch, error) QueryGetLatestPublishedSnapshot(ctx context.Context, chainReferenceID string) (*valset.Snapshot, error) }
type Processor ¶
type Processor struct {
// contains filtered or unexported fields
}
func (Processor) ExternalAccount ¶
func (p Processor) ExternalAccount() chain.ExternalAccount
func (Processor) GetChainReferenceID ¶ added in v1.5.5
func (Processor) GetSkywayEvents ¶ added in v1.12.4
func (Processor) HealthCheck ¶ added in v0.7.0
func (Processor) ProcessMessages ¶
func (Processor) ProvideEvidence ¶ added in v0.4.0
func (Processor) SignMessages ¶
func (p Processor) SignMessages(ctx context.Context, messages ...chain.QueuedMessage) ([]chain.SignedQueuedMessage, error)
func (Processor) SkywayRelayBatches ¶ added in v1.12.2
func (Processor) SkywaySignBatches ¶ added in v1.12.2
func (p Processor) SkywaySignBatches(ctx context.Context, batches ...skyway.OutgoingTxBatch) ([]chain.SignedSkywayOutgoingTxBatch, error)
func (Processor) SubmitEventClaims ¶ added in v1.12.4
func (p Processor) SubmitEventClaims( ctx context.Context, events []chain.SkywayEventer, orchestrator string, ) error
Submit all gathered events to Paloma. Events need to be sent in order to preserve skyway nonce order.
func (Processor) SupportedQueues ¶
type StoredContract ¶
Source Files ¶
Click to show internal directories.
Click to hide internal directories.