# ArbRelayHub
The RelayHub Implementation for Arbitrum
This contract implements the IRelayHub
interface for the Arbitrum-compatible Rollups.
This implementation relies on the ArbSys
built-ins that do not exist outside of Arbitrum.
# Functions
# versionHub()
→ string
(public)
# Return values
SemVer-compliant version of the RelayHub
contract.
# constructor(contract ArbSys _arbsys, contract IStakeManager _stakeManager, address _penalizer, address _batchGateway, address _relayRegistrar, struct IRelayHub.RelayHubConfig _config)
(public)
we accept the ArbSys
address in the constructor to allow mocking it in tests.
# getCreationBlock()
→ uint256
(external)
Uses ArbSys
L2 block number specific to the Arbitrum Rollup.
# Return values
block number in which the contract has been deployed.
# getL1CreationBlock()
→ uint256
(external)
Uses original L1 block number.
# Return values
block number in which the contract has been deployed.
# aggregateGasleft()
→ uint256
(public)
Includes the 'storage gas' specific to the Arbitrum Rollup.
# Return values
total measurable amount of gas left to current execution. Same as 'gasleft()' for pure EVMs.
← StakeManager ArbSys →