Skip to content

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

Source

The mapping of contract name to address

Type: mapping(bytes32 => address)

Constructor

constructor

Source

Details

Signature

constructor(address _owner)

Visibility

public

State Mutability

``

Views

areAddressesImported

Source

Details

Signature

areAddressesImported(bytes32[] names, address[] destinations) view returns (bool)

Visibility

external

State Mutability

view

getAddress

Source

Returns a single address by it's bytes32 key.

Details

Signature

getAddress(bytes32 name) view returns (address)

Visibility

external

State Mutability

view

getSynth

Source

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

Source

Details

Signature

requireAndGetAddress(bytes32 name, string reason) view returns (address)

Visibility

external

State Mutability

view

Requires

Restricted Functions

importAddresses

Source

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

Source

Details

Signature

rebuildCaches(contract MixinResolver[] destinations)

Visibility

external

State Mutability

``

Events

AddressImported

Source

Signature: AddressImported(bytes32 name, address destination)