Skip to main content

TokenRegistry

Git Source

Inherits: AccessManagedUpgradeable, ITokenRegistry

State Variables

TokenRegistryStorageLocation

bytes32 private constant TokenRegistryStorageLocation =
0x1aeafc547075d7f69f86c9a87aafb3edc5a48d01acbbe220b9a330d69702ed00;

Functions

_getTokenRegistryStorage

function _getTokenRegistryStorage() private pure returns (TokenRegistryStorage storage $);

constructor

constructor();

initialize

function initialize(address _accessManager) external initializer;

getForeignToken

Local token address => Foreign EVM chain ID => Foreign Token address

function getForeignToken(address _localToken, uint256 _foreignEvmChainId) external view returns (address);

getLocalToken

Foreign token address => Foreign EVM chain ID => Local Token address

function getLocalToken(address _foreignToken, uint256 _foreignEvmChainId) external view returns (address);

setToken

Associates a local and a foreign token addresse.

function setToken(address _localToken, uint256 _foreignEvmChainId, address _foreignToken) external restricted;

Parameters

NameTypeDescription
_localTokenaddressThe local token address.
_foreignEvmChainIduint256The foreign EVM chain ID.
_foreignTokenaddressThe foreign token address.

Structs

TokenRegistryStorage

Note: storage-location: erc7201:makina.storage.TokenRegistry

struct TokenRegistryStorage {
mapping(address localToken => mapping(uint256 foreignEvmChainId => address foreignToken)) _localToForeignTokens;
mapping(address foreignToken => mapping(uint256 foreignEvmChainId => address localToken)) _foreignToLocalTokens;
}