LidoLocator
LidoLocator is the universal address book for the Lido protocol. It follows the well-known service locator pattern.
Upgradability​
The contract uses OssifiableProxy for upgradability and does not use storage for the address book. Instead, all addresses are embedded into the implementation's bytecode as immutables for gas efficiency, allowing one to update them along with a proxy implementation.
Methods​
accountingOracle()​
Returns an address of the AccountingOracle contract
function accountingOracle() view returns(address);
accounting()​
Returns an address of the Accounting contract.
function accounting() view returns(address);
depositSecurityModule()​
Returns an address of the DepositSecurityModule contract
function depositSecurityModule() view returns(address);
elRewardsVault()​
Returns an address of the LidoExecutionLayerRewardsVault contract
function elRewardsVault() view returns(address);
lido()​
Returns an address of the Lido contract
function lido() external view returns(address);
oracleReportSanityChecker()​
Returns an address of the OracleReportSanityChecker contract
function oracleReportSanityChecker() view returns(address);
burner()​
Returns an address of the Burner contract
function burner() view returns(address);
stakingRouter()​
Returns an address of the StakingRouter contract
function stakingRouter() view returns(address);
treasury()​
Returns an address of the treasury
function treasury() view returns(address);
validatorsExitBusOracle()​
Returns an address of the ValidatorsExitBusOracle contract
function validatorsExitBusOracle() external view returns(address);
withdrawalQueue()​
Returns an address of the WithdrawalQueueERC721 contract
function withdrawalQueue() view returns(address);
withdrawalVault()​
Returns an address of the WithdrawalVault contract
function withdrawalVault() view returns(address);
postTokenRebaseReceiver()​
Returns an address of the contract following the IPostTokenRebaseReceiver
interface described inside Lido.
function postTokenRebaseReceiver() view returns(address);
oracleDaemonConfig()​
Returns an address of the OracleDaemonConfig contract
function oracleDaemonConfig() view returns(address);
triggerableWithdrawalsGateway()​
Returns an address of the TriggerableWithdrawalsGateway contract
function triggerableWithdrawalsGateway() view returns(address);
validatorExitDelayVerifier()​
Returns an address of the ValidatorExitDelayVerifier contract
function validatorExitDelayVerifier() view returns(address);
predepositGuarantee()​
Returns an address of the PredepositGuarantee contract
function predepositGuarantee() view returns(address);
wstETH()​
Returns an address of the wstETH contract
function wstETH() view returns(address);
vaultHub()​
Returns an address of the VaultHub contract
function vaultHub() view returns(address);
vaultFactory()​
Returns an address of the VaultFactory contract
function vaultFactory() view returns(address);
lazyOracle()​
Returns an address of the LazyOracle contract
function lazyOracle() view returns(address);
operatorGrid()​
Returns an address of the OperatorGrid contract
function operatorGrid() view returns(address);
coreComponents()​
Returns a batch of core components addresses at once.
It's just a more gas-efficient way of calling several public getters at once.
function coreComponents() view returns(
address elRewardsVault,
address oracleReportSanityChecker,
address stakingRouter,
address treasury,
address withdrawalQueue,
address withdrawalVault
);
oracleReportComponents()​
Returns a batch of addresses that is used specifically during oracle report handling in the Lido contract.
It's just a more gas-efficient way of calling several public getters at once.
function oracleReportComponents() view returns(
address accountingOracle,
address oracleReportSanityChecker,
address burner,
address withdrawalQueue,
address postTokenRebaseReceiver,
address stakingRouter,
address vaultHub
);