Skip to content

FluidGenericUniV3CheckedOracle ​

Git Source

Inherits:FluidGenericOracleBase, UniV3CheckedSourceReader

generic configurable Oracle combines up to 4 hops from sources such as

  • an existing IFluidOracle (e.g. ContractRate)
  • Redstone
  • Chainlink
  • UniV3 checked against Chainlink

Functions ​

constructor ​

solidity
constructor(
    string memory infoName_,
    uint8 targetDecimals_,
    OracleHopSource[] memory sources_,
    UniV3CheckCLRSConstructorParams memory uniV3Params_
) FluidGenericOracleBase(sources_) UniV3CheckedSourceReader(infoName_, targetDecimals_, uniV3Params_);

_verifyOracleHopSource ​

verifies a hop source config

solidity
function _verifyOracleHopSource(OracleHopSource memory source_) internal view virtual override;

_readSource ​

reads the exchange rate for a hop source

solidity
function _readSource(address source_, SourceType sourceType_, bool isOperate_)
    internal
    view
    virtual
    override
    returns (uint256 rate_);

getExchangeRateOperate ​

solidity
function getExchangeRateOperate() public view override returns (uint256 exchangeRate_);

getExchangeRateLiquidate ​

solidity
function getExchangeRateLiquidate() public view override returns (uint256 exchangeRate_);

getExchangeRate ​

solidity
function getExchangeRate() public view override returns (uint256 exchangeRate_);