Skip to main content

OptimisticRewarderCreator

OptimisticRewarderCreator#

The creator contract for optimistic rewarders. Using this contract is totally optional. It only aids in creating a simpler deployment experience with a guarantee of repeatable verification and easier tracking through events.

Functions#

constructor(contract FinderInterface _finder) (public)
createOptimisticRewarder(string _name, string _symbol, string _baseUri, uint256 _liveness, contract IERC20 _bondToken, uint256 _bond, bytes32 _identifier, bytes _customAncillaryData) → address (public)

Deploys an optimistic rewarder.

Parameters:#

  • _name: name for the ERC721 token.
  • _symbol: symbol for the ERC721 token.
  • _baseUri: prefix to each ERC721 tokenId's name.
  • _liveness: liveness period between submission and verification of a reward.
  • _bondToken: ERC20 token that the bond is paid in.
  • _bond: size of the bond.
  • _identifier: identifier that should be passed to the optimistic oracle on dispute.
  • _customAncillaryData: custom ancillary data that should be sent to the optimistic oracle on dispute.
createOptimisticRewarderNoToken(contract OptimisticRewarderToken _token, uint256 _liveness, contract IERC20 _bondToken, uint256 _bond, bytes32 _identifier, bytes _customAncillaryData) → address (public)

Deploys an optimistic rewarder with an external ERC721 token.

Parameters:#

  • _token: external ERC721 token for the rewarder to base redemptions on.
  • _liveness: liveness period between submission and verification of a reward.
  • _bondToken: ERC20 token that the bond is paid in.
  • _bond: size of the bond.
  • _identifier: identifier that should be passed to the optimistic oracle on dispute.
  • _customAncillaryData: custom ancillary data that should be sent to the optimistic oracle on dispute.
_preEntranceCheck() (internal)
_preEntranceSet() (internal)
_postEntranceReset() (internal)

Events#

CreatedOptimisticRewarder(address optimisticRewarder, bool includesToken)

Modifiers#

nonReentrant()

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 making it call a private function that does the actual state modification.

nonReentrantView()

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