ERC5095.sol
This document describes the functions, attributes and modifiers in ERC5095.sol
Last updated
This document describes the functions, attributes and modifiers in ERC5095.sol
Last updated
Inherits: ERC20Permit, IERC5095
unix timestamp when the ERC5095 token can be redeemed
address of the ERC20 token that is returned on ERC5095 redemption
address of the minting authority
address of the "marketplace" YieldSpace AMM router
Interface to interact with the pool
address and interface for an external custody contract (necessary for some project's backwards compatability)
ensures that only a certain address can call the function
Parameters
a
address
address that msg.sender must be to be authorized
Allows the marketplace to set the pool
Parameters
p
address
Address of the pool
Returns
<none>
bool
bool True if successful
Allows the marketplace to spend underlying, principal tokens held by the token
This is necessary when MarketPlace calls pool methods to swap tokens
Returns
<none>
bool
True if successful
Post or at maturity, converts an amount of principal tokens to an amount of underlying that would be returned.
Parameters
s
uint256
The amount of principal tokens to convert
Returns
<none>
uint256
uint256 The amount of underlying tokens returned by the conversion
Post or at maturity, converts a desired amount of underlying tokens returned to principal tokens needed.
Parameters
a
uint256
The amount of underlying tokens to convert
Returns
<none>
uint256
uint256 The amount of principal tokens returned by the conversion
Returns user's PT balance
Parameters
o
address
The address of the owner for which redemption is calculated
Returns
<none>
uint256
uint256 The maximum amount of principal tokens that owner
can redeem.
Post or at maturity, returns user's PT balance. Prior to maturity, returns a previewRedeem for owner's PT balance.
Parameters
o
address
The address of the owner for which withdrawal is calculated
Returns
<none>
uint256
uint256 maximum amount of underlying tokens that owner
can withdraw.
After maturity, returns 0. Prior to maturity, returns the amount of shares
when spending a
in underlying on a YieldSpace AMM.
Parameters
a
uint256
The amount of underlying spent
Returns
<none>
uint256
uint256 The amount of PT purchased by spending a
of underlying
After maturity, returns 0. Prior to maturity, returns the amount of assets
in underlying spent on a purchase of s
in PT on a YieldSpace AMM.
Parameters
s
uint256
The amount of principal tokens bought in the simulation
Returns
<none>
uint256
uint256 The amount of underlying required to purchase s
of PT
Post or at maturity, simulates the effects of redemption. Prior to maturity, returns the amount of assets
from a sale of s
PTs on a YieldSpace AMM.
Parameters
s
uint256
The amount of principal tokens redeemed in the simulation
Returns
<none>
uint256
uint256 The amount of underlying returned by s
of PT redemption
Post or at maturity, simulates the effects of withdrawal at the current block. Prior to maturity, simulates the amount of PTs necessary to receive a
in underlying from the sale of PTs on a YieldSpace AMM.
Parameters
a
uint256
The amount of underlying tokens withdrawn in the simulation
Returns
<none>
uint256
uint256 The amount of principal tokens required for the withdrawal of a
Before maturity spends a
of underlying, and sends PTs to r
. Post or at maturity, reverts.
Parameters
a
uint256
The amount of underlying tokens deposited
r
address
The receiver of the principal tokens
m
uint256
Minimum number of shares that the user will receive
Returns
<none>
uint256
uint256 The amount of principal tokens purchased
Before maturity spends assets
of underlying, and sends shares
of PTs to receiver
. Post or at maturity, reverts.
Parameters
a
uint256
The amount of underlying tokens deposited
r
address
The receiver of the principal tokens
Returns
<none>
uint256
uint256 The amount of principal tokens burnt by the withdrawal
Before maturity mints s
of PTs to r
by spending underlying. Post or at maturity, reverts.
Parameters
s
uint256
The amount of shares being minted
r
address
The receiver of the underlying tokens being withdrawn
m
uint256
Maximum amount of underlying that the user will spend
Returns
<none>
uint256
uint256 The amount of principal tokens purchased
Before maturity mints shares
of PTs to receiver
by spending underlying. Post or at maturity, reverts.
Parameters
s
uint256
The amount of shares being minted
r
address
The receiver of the underlying tokens being withdrawn
Returns
<none>
uint256
uint256 The amount of principal tokens purchased
At or after maturity, burns PTs from owner and sends a
underlying to r
. Before maturity, sends a
by selling shares of PT on a YieldSpace AMM.
Parameters
a
uint256
The amount of underlying tokens withdrawn
r
address
The receiver of the underlying tokens being withdrawn
o
address
The owner of the underlying tokens
m
uint256
Maximum amount of PTs to be sold
Returns
<none>
uint256
uint256 The amount of principal tokens burnt by the withdrawal
At or after maturity, burns PTs from owner and sends a
underlying to r
. Before maturity, sends a
by selling shares of PT on a YieldSpace AMM.
Parameters
a
uint256
The amount of underlying tokens withdrawn
r
address
The receiver of the underlying tokens being withdrawn
o
address
The owner of the underlying tokens
Returns
<none>
uint256
uint256 The amount of principal tokens burnt by the withdrawal
At or after maturity, burns exactly s
of Principal Tokens from o
and sends underlying tokens to r
. Before maturity, sends underlying by selling s
of PT on a YieldSpace AMM.
Parameters
s
uint256
The number of shares to be burned in exchange for the underlying asset
r
address
The receiver of the underlying tokens being withdrawn
o
address
Address of the owner of the shares being burned
m
uint256
Minimum amount of underlying that must be received
Returns
<none>
uint256
uint256 The amount of underlying tokens distributed by the redemption
At or after maturity, burns exactly shares
of Principal Tokens from owner
and sends assets
of underlying tokens to receiver
. Before maturity, sells s
of PT on a YieldSpace AMM.
Parameters
s
uint256
The number of shares to be burned in exchange for the underlying asset
r
address
The receiver of the underlying tokens being withdrawn
o
address
Address of the owner of the shares being burned
Returns
<none>
uint256
uint256 The amount of underlying tokens distributed by the redemption
Parameters
f
address
Address to burn from
a
uint256
Amount to burn
Returns
<none>
bool
bool true if successful
Parameters
t
address
Address recieving the minted amount
a
uint256
The amount to mint
Returns
<none>
bool
bool True if successful
Parameters
o
address
Address of the owner of the tokens
s
address
Address of the spender
a
uint256
Amount to be approved