HyperlaneImplementation
Introduction
This contract is used to allow Superform to send messages via Hyperlane.
Core Concepts
Hyperlane builds upon AMBImplementation
to formalize certain methods specific to the Hyperlane protocol.
Receiving Payloads
The implemented interface can be found in Hyperlane's MessageRecipient interface here.
handle
This function handles an interchain message sent via Hyperlane. Only the Hyperlane Mailbox may call this function.
name | description |
---|---|
| uint32 domain id for the chain where the message came from |
| address of the message sender on the src chain |
| bytes content of the message |
Retrying Payloads
As mentioned in the AMB Implementations section, messages can be retried by calling retryPayload
with a bytes hash of relevant data. In the case of Hyperlane, the data is the following:
Configuration Setters
There are multiple bridge related configurations to be made on the contract. These configuration functions can only be set by the PROTOCOL_ADMIN.
Other important variables, like the Mailbox and InterchainGasPaymaster, are set in the constructor.
setChainId
This function allows the ProtocolAdmin
to map a Hyperlane chain id to Superform's chain id, the EVM id.
name | description |
---|---|
| internal chain id used by Superform protocol. |
| uint16 chain id allocated to each chain by Hyperlane |
setReceiver
This function allows the ProtocolAdmin
to set receiver implementations on a new chain id.
name | description |
---|---|
| uint16 Hyperlane's chain id |
| address of the Hyperlane message bridge on the respective chain |
Last updated