SavingsXDai

Variables

wxdai

contract IWXDAI wxdai

deploymentChainId

uint256 deploymentChainId

PERMIT_TYPEHASH

bytes32 PERMIT_TYPEHASH

VERSION

string VERSION

Errors

ERC2612ExpiredSignature

error ERC2612ExpiredSignature(uint256 deadline)

Permit deadline has expired.

ERC2612InvalidSigner

error ERC2612InvalidSigner(address signer, address owner)

Mismatched signature.

Functions

constructor

constructor(string _name, string _ticker) public

Set the underlying asset contract. This must be an ERC20-compatible contract (ERC20 or ERC777).

receive

receive() external payable

_isValidSignature

function _isValidSignature(address signer, bytes32 digest, bytes signature) internal view returns (bool)

permit

function permit(address owner, address spender, uint256 value, uint256 deadline, bytes signature) public

permit

function permit(address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s) external

_Sets value as the allowance of spender over owner's tokens, given owner's signed approval.

IMPORTANT: The same issues {IERC20-approve} has related to transaction ordering also apply here.

Emits an {Approval} event.

Requirements:

  • spender cannot be the zero address.

  • deadline must be a timestamp in the future.

  • v, r and s must be a valid secp256k1 signature from owner over the EIP712-formatted function arguments.

  • the signature must use owner's current nonce (see {nonces}).

For more information on the signature format, see the https://eips.ethereum.org/EIPS/eip-2612#specification[relevant EIP section].

CAUTION: See Security Considerations above._

nonces

function nonces(address owner) public view virtual returns (uint256)

See {IERC20Permit-nonces}.

DOMAIN_SEPARATOR

function DOMAIN_SEPARATOR() external view virtual returns (bytes32)

See {IERC20Permit-DOMAIN_SEPARATOR}.

Last updated