MultiChainLayerZeroTellerWithMultiAssetSupport

Git Source

Inherits: MultiChainTellerBase, OAppAuth

LayerZero implementation of MultiChainTeller

Functions

constructor

constructor(
    address _owner,
    address _vault,
    address _accountant,
    address _endpoint
)
    MultiChainTellerBase(_owner, _vault, _accountant)
    OAppAuth(_endpoint, _owner);

_quote

function override to return the fee quote

function _quote(uint256 shareAmount, BridgeData calldata data) internal view override returns (uint256);

Parameters

NameTypeDescription

shareAmount

uint256

to be sent as a message

data

BridgeData

Bridge data

_lzReceive

Called when data is received from the protocol. It overrides the equivalent function in the parent contract. Protocol messages are defined as packets, comprised of the following parameters.

function _lzReceive(
    Origin calldata _origin,
    bytes32 _guid,
    bytes calldata payload,
    address,
    bytes calldata
)
    internal
    override;

Parameters

NameTypeDescription

_origin

Origin

A struct containing information about where the packet came from.

_guid

bytes32

A global unique identifier for tracking the packet.

payload

bytes

Encoded message.

<none>

address

<none>

bytes

_bridge

bridge override to allow bridge logic to be done for bridge() and depositAndBridge()

function _bridge(uint256 shareAmount, BridgeData calldata data) internal override returns (bytes32);

Parameters

NameTypeDescription

shareAmount

uint256

to be moved across chain

data

BridgeData

BridgeData

Errors

MultiChainLayerZeroTellerWithMultiAssetSupport_InvalidToken

error MultiChainLayerZeroTellerWithMultiAssetSupport_InvalidToken();