UniV3RelayerFactory

Git Source

Inherits: Authorizable, IUniV3RelayerFactory

This contract is used to deploy UniV3Relayer contracts

The deployed contracts are UniV3RelayerChild instances

State Variables

_UNI_V3_FACTORY

Address of the UniswapV3Factory used to fetch the pool address

address internal immutable _UNI_V3_FACTORY;

_uniV3Relayers

The enumerable set of deployed UniV3Relayer contracts

EnumerableSet.AddressSet internal _uniV3Relayers;

Functions

constructor

constructor(address _uniV3Factory) Authorizable(msg.sender);

deployUniV3Relayer

Deploys a new UniV3Relayer contract

function deployUniV3Relayer(
  address _baseToken,
  address _quoteToken,
  uint24 _feeTier,
  uint32 _quotePeriod
) external isAuthorized returns (IBaseOracle _uniV3Relayer);

Parameters

NameTypeDescription
_baseTokenaddressAddress of the base token to be quoted
_quoteTokenaddressAddress of the quote reference token
_feeTieruint24Fee tier used to identify the UniV3 pool
_quotePerioduint32Length of the period used to calculate the TWAP quote

Returns

NameTypeDescription
_uniV3RelayerIBaseOracleAddress of the deployed UniV3Relayer contract

uniV3RelayersList

Getter for the list of UniV3Relayer contracts

function uniV3RelayersList() external view returns (address[] memory _uniV3RelayersList);

Returns

NameTypeDescription
_uniV3RelayersListaddress[]List of UniV3Relayer contracts