Skip to content
Lattice

CCIPGatewayAdapterStorage

Git Source

ERC-7201 namespaced storage for the CCIP gateway adapter.

Note:

  • storage-location: erc7201:lattice.storage.CCIPGatewayAdapter
struct CCIPGatewayAdapterStorage {
    /// @notice The Chainlink CCIP router (OZ-style immutable → Diamond storage). APPEND-ONLY.
    address _router;
    /// @notice Fee token: `address(0)` ⇒ native (`msg.value`), else an ERC-20 (e.g. LINK). APPEND-ONLY.
    address _feeToken;
    /// @notice EVM chainId => CCIP chain selector (0 = unset). APPEND-ONLY.
    mapping(uint256 chainId => uint64 selector) _chainIdToSelector;
    /// @notice CCIP chain selector => EVM chainId (0 = unset). APPEND-ONLY.
    mapping(uint64 selector => uint256 chainId) _selectorToChainId;
    /// @notice Trusted remote gateway adapter per EVM chainId. APPEND-ONLY.
    mapping(uint256 chainId => address remote) _remoteGateways;
    /// @notice Per-destination delivery gas limit (0 = unconfigured). APPEND-ONLY.
    mapping(uint256 chainId => uint256 gasLimit) _destGasLimit;
    /// @notice Per-destination `allowOutOfOrderExecution` flag. APPEND-ONLY.
    mapping(uint256 chainId => bool allowOutOfOrder) _destAllowOutOfOrder;
    /// @notice Replay guard: per source chainId, the set of consumed CCIP messageIds. APPEND-ONLY.
    mapping(uint256 chainId => mapping(bytes32 messageId => bool used)) _executed;
    /// @notice Per source chainId, the CCV requirements + finality returned to the router (V2/CCV). APPEND-ONLY.
    mapping(uint256 chainId => CCVConfig) _ccvConfigs;
}

Properties

NameTypeDescription
_routeraddress
_feeTokenaddress
_chainIdToSelectormapping(uint256 chainId => uint64 selector)
_selectorToChainIdmapping(uint64 selector => uint256 chainId)
_remoteGatewaysmapping(uint256 chainId => address remote)
_destGasLimitmapping(uint256 chainId => uint256 gasLimit)
_destAllowOutOfOrdermapping(uint256 chainId => bool allowOutOfOrder)
_executedmapping(uint256 chainId => mapping(bytes32 messageId => bool used))
_ccvConfigsmapping(uint256 chainId => CCVConfig)