RedstoneOracleImpl

Git Source

Inherits: OracleError, RedstoneStructs

This contract is used to get the exchange rate from a Redstone Oracle

State Variables

_REDSTONE_ORACLE

Redstone price oracle to check for the exchange rate

IRedstoneOracle internal immutable _REDSTONE_ORACLE;

_REDSTONE_INVERT_RATE

Flag to invert the price or not (to e.g. for WETH/USDC pool return prive of USDC per 1 WETH)

bool internal immutable _REDSTONE_INVERT_RATE;

_REDSTONE_PRICE_SCALER_MULTIPLIER

constant value for price scaling to reduce gas usage

uint256 internal immutable _REDSTONE_PRICE_SCALER_MULTIPLIER;

_REDSTONE_INVERT_PRICE_DIVIDEND

constant value for inverting price to reduce gas usage

uint256 internal immutable _REDSTONE_INVERT_PRICE_DIVIDEND;

_REDSTONE_ORACLE_NOT_SET_ADDRESS

address internal immutable _REDSTONE_ORACLE_NOT_SET_ADDRESS = 0x000000000000000000000000000000000000dEaD;

Functions

constructor

constructor sets the Redstone oracle data

constructor(RedstoneOracleData memory oracleData_);

_getRedstoneExchangeRate

Get the exchange rate from Redstone oracle

function _getRedstoneExchangeRate() internal view returns (uint256 rate_);

redstoneOracleData

returns all Redstone oracle related data as utility for easy off-chain use / block explorer in a single view method

function redstoneOracleData()
    public
    view
    returns (uint256 redstoneExchangeRate_, IRedstoneOracle redstoneOracle_, bool redstoneInvertRate_);