Solidity API
Settleable
Contract module that allows children to implement state settlement mechanisms.
This module is supposed to be used in layer 1 (settlement layer).
bridgeAddressSettleable
address bridgeAddressSettleable
_settleable
bool _settleable
_executeBatchNonce
mapping(uint72 => uint256) _executeBatchNonce
SettlementDisabled
event SettlementDisabled(address account)
Emitted when state settlement is diabled by account
.
SettlementEnabled
event SettlementEnabled(address account)
Emitted when state settlement is enabled by account
.
constructor
constructor(address bridgeAddress) internal
receiveRollupInfo
function receiveRollupInfo(struct RollupInfo rollupInfo, bytes state, bytes32[] proof) external
Receives rollup info.
Requirements:
- {_settleable} must be true.
- It must be called only by the bridge.
- Batch index must be valid.
- Merkle proof must be verified.
_disableSettlement
function _disableSettlement() internal
_enableSettlement
function _enableSettlement() internal
_settle
function _settle(address, uint16, struct KeyValuePair[]) internal virtual
_It is implemented in the following:
- ERC20Settleable
- ERC721Settleable
- ERC20RollupHandler
- NativeTokenHandler_
_isSettleable
function _isSettleable() internal view virtual returns (bool)
Returns true if the contract is Settleable, and false otherwise.
Name | Type | Description |
---|---|---|
[0] | bool | true if Settleable. otherwise, false. |