nonReentrant() modifier

Prevents a contract from calling itself, directly or indirectly. Calling a nonReentrant function from another nonReentrant function is not supported. It is possible to prevent this from happening by making the nonReentrant function external, and make it call a private function that does the actual work.

nonReentrantView() modifier

Designed to prevent a view-only method from being re-entered during a call to a nonReentrant() state-changing method.

transformPrice(struct FixedPoint.Unsigned oraclePrice, uint256 requestTime) → struct FixedPoint.Unsigned public

Returns a transformed price for pre-expiry price requests.


  • oraclePrice: price from the oracle to be transformed.

  • requestTime: timestamp the oraclePrice was requested at.

transformCollateralRequirement(struct FixedPoint.Unsigned oraclePrice, struct FixedPoint.Unsigned collateralRequirement) → struct FixedPoint.Unsigned public

Returns a transformed collateral requirement that is set to be equivalent to 2 tokens pre-expiry.


  • oraclePrice: price from the oracle to transform the collateral requirement.

  • collateralRequirement: financial products collateral requirement to be scaled to a flat rate.

constructor() internal

_preEntranceCheck() internal

_preEntranceSet() internal

_postEntranceReset() internal

transformPriceIdentifier(bytes32 priceIdentifier, uint256 requestTime) → bytes32 public

Transforms a given price identifier using the financial product libraries transformation logic.


  • priceIdentifier: input price identifier defined for the financial contract.

  • requestTime: timestamp the identifier is to be used at. EG the time that a price request would be sent using this identifier.

© UMA Project 2018-2019