AddressResolver¶
Description¶
This contract is a type of Service Locator pattern that allows for easier interaction between multiple contracts. Instead of contract A needing references to contracts B and C (and updating every release), contract A can refer to an AddressResolver
and query for B and C at transaction time. Then, during a release, the AddressResolver is updated with the latest B and C contract. Thus this ensures that contract A always has the latest B and C contracts.
Source: contracts/AddressResolver.sol
Variables¶
repository
¶
The mapping of contract name to address
Type: mapping(bytes32 => address)
Constructor¶
constructor
¶
Details
Signature
constructor(address _owner)
Visibility
public
State Mutability
``
Views¶
areAddressesImported
¶
Details
Signature
areAddressesImported(bytes32[] names, address[] destinations) view returns (bool)
Visibility
external
State Mutability
view
getAddress
¶
Returns a single address by it's bytes32
key.
Details
Signature
getAddress(bytes32 name) view returns (address)
Visibility
external
State Mutability
view
getSynth
¶
Not yet on mainnet
This view, while in source, is not yet on mainnet. It is planned in the v2.23
Acrux release. As a workaround you can use IAddressResolver.getAddress("Synthetix").synths(key)
Details
Signature
getSynth(bytes32 key) view returns (address)
Visibility
external
State Mutability
view
Requires
requireAndGetAddress
¶
Details
Signature
requireAndGetAddress(bytes32 name, string reason) view returns (address)
Visibility
external
State Mutability
view
Requires
Restricted Functions¶
importAddresses
¶
Import one or more addresses into the system for the given keys. Note: this function will overrwite any previous entries with the same key names, allowing for inline updates.
Details
Signature
importAddresses(bytes32[] names, address[] destinations)
Visibility
external
State Mutability
``
Requires
Modifiers
External Functions¶
rebuildCaches
¶
Details
Signature
rebuildCaches(contract MixinResolver[] destinations)
Visibility
external
State Mutability
``
Events¶
AddressImported
¶
Signature: AddressImported(bytes32 name, address destination)