PoolAddressesProviderRegistry
A registry of all PoolAddressesProvider instances (one per SparkLend market). Each provider is assigned a non-zero id; the registry maps both directions (provider → id and id → provider).
The registry is Ownable. Only the owner (Sky Governance on mainnet) can register or unregister providers.
View methods
getAddressesProvidersList
function getAddressesProvidersList() external view returns (address[] memory)Returns the array of currently-registered PoolAddressesProvider addresses. Order is not stable (unregistration uses swap-and-pop).
getAddressesProviderIdByAddress
function getAddressesProviderIdByAddress(address addressesProvider) external view returns (uint256)Returns the id registered for a provider, or 0 if not registered.
getAddressesProviderAddressById
function getAddressesProviderAddressById(uint256 id) external view returns (address)Returns the provider registered at id, or address(0) if none.
Write methods (owner only)
registerAddressesProvider
function registerAddressesProvider(address provider, uint256 id) external onlyOwnerRegisters provider under id. Reverts on id == 0, on id already taken, or on provider already registered. Emits AddressesProviderRegistered.
unregisterAddressesProvider
function unregisterAddressesProvider(address provider) external onlyOwnerRemoves provider from the registry. Reverts if it was never registered. Emits AddressesProviderUnregistered.