WithdrawalManager (Queue)
\
Functions
addShares
addShares
Add shares to the withdrawal manager.
Parameters:
0
shares_
uint256
uint256
1
owner_
address
address
\
asset
asset
Returns the address of the underlying pool asset.
Return Values:
0
asset_
address
address
\
factory
factory
The address of the proxy factory.
Return Values:
0
factory_
address
address
\
globals
globals
Returns the address of the globals contract.
Return Values:
0
globals_
address
address
\
governor
governor
Return the address of the governor.
Return Values:
0
governor_
address
address
\
implementation
implementation
The address of the implementation contract being proxied.
Return Values:
0
implementation_
address
address
\
isInExitWindow
isInExitWindow
Returns if a user is able to withdraw. Required for compatibility with pool managers. NOTE: Always returns true to fulfil interface requirements.
Parameters:
0
owner_
address
address
The account to check if it's in withdraw window.
Return Values:
0
isInExitWindow_
bool
bool
True if the account is in the withdraw window.
\
isManualWithdrawal
isManualWithdrawal
Checks if an account is set to perform withdrawals manually.
Parameters:
0
``
address
address
Return Values:
0
bool
bool
\
lockedLiquidity
lockedLiquidity
Gets the total amount of funds that need to be locked to fulfill exits. NOTE: Always zero for this implementation.
Return Values:
0
lockedLiquidity_
uint256
uint256
The amount of locked liquidity.
\
lockedShares
lockedShares
Gets the amount of locked shares for an account.
Parameters:
0
owner_
address
address
The address to check the exit for.
Return Values:
0
lockedShares_
uint256
uint256
The amount of manual shares available.
\
manualSharesAvailable
manualSharesAvailable
Returns the amount of shares available for manual withdrawal.
Parameters:
0
``
address
address
Return Values:
0
uint256
uint256
\
migrate
migrate
Modifies the proxy's storage by delegate-calling a migrator contract with some arguments. Access control logic critical since caller can force a selfdestruct via a malicious `migrator_` which is delegatecalled.
Parameters:
0
migrator_
address
address
The address of a migrator contract.
1
arguments_
bytes
bytes
Some encoded arguments to use for the migration.
\
pool
pool
Returns the address of the pool contract.
Return Values:
0
address
address
\
poolDelegate
poolDelegate
Returns the address of the pool delegate.
Return Values:
0
poolDelegate_
address
address
\
poolManager
poolManager
Returns the address of the pool manager contract.
Return Values:
0
address
address
\
previewRedeem
previewRedeem
Returns the amount of shares that can be redeemed. NOTE: The `shares` value is ignored.
Parameters:
0
owner_
address
address
1
shares_
uint256
uint256
Return Values:
0
redeemableShares_
uint256
uint256
1
resultingAssets_
uint256
uint256
\
previewWithdraw
previewWithdraw
Gets the amount of shares that can be withdrawn. NOTE: Values just passed through as withdraw is not implemented.
Parameters:
0
owner_
address
address
The address to check the withdrawal for.
1
assets_
uint256
uint256
The amount of requested shares to withdraw.
Return Values:
0
redeemableAssets_
uint256
uint256
The amount of assets that can be withdrawn.
1
resultingShares_
uint256
uint256
The amount of shares that will be burned.
\
processExit
processExit
Processes a withdrawal request. Uses the current exchange rate to calculate the amount of assets withdrawn.
Parameters:
0
shares_
uint256
uint256
1
owner_
address
address
Return Values:
0
redeemableShares_
uint256
uint256
1
resultingAssets_
uint256
uint256
\
processRedemptions
processRedemptions
Processes pending redemption requests. Requests are processed in the order they were submitted. Automatic withdrawal requests will be fulfilled atomically.
Parameters:
0
maxSharesToProcess_
uint256
uint256
\
queue
queue
Returns the first and last withdrawal requests pending redemption.
Return Values:
0
nextRequestId
uint128
uint128
Identifier of the next withdrawal request that will be processed.
1
lastRequestId
uint128
uint128
Identifier of the last created withdrawal request.
\
removeRequest
removeRequest
Removes a withdrawal request from the queue. Can only be called by the pool delegate.
Parameters:
0
owner_
address
address
\
removeShares
removeShares
Removes shares from the withdrawal manager.
Parameters:
0
shares_
uint256
uint256
1
owner_
address
address
Return Values:
0
sharesReturned_
uint256
uint256
\
requestIds
requestIds
Returns the request identifier of an account. Returns zero if the account does not have a withdrawal request.
Parameters:
0
``
address
address
Return Values:
0
uint128
uint128
\
requests
requests
Returns the owner and amount of shares associated with a withdrawal request.
Parameters:
0
requestId_
uint128
uint128
Return Values:
0
owner_
address
address
1
shares_
uint256
uint256
\
securityAdmin
securityAdmin
Returns the address of the security admin.
Return Values:
0
securityAdmin_
address
address
\
setImplementation
setImplementation
Modifies the proxy's implementation address.
Parameters:
0
implementation_
address
address
\
setManualWithdrawal
setManualWithdrawal
Defines if an account will withdraw shares manually or automatically.
Parameters:
0
owner_
address
address
1
isManual_
bool
bool
\
totalShares
totalShares
Returns the total amount of shares pending redemption.
Return Values:
0
uint256
uint256
\
upgrade
upgrade
Upgrades a contract implementation to a specific version. Access control logic critical since caller can force a selfdestruct via a malicious `migrator_` which is delegatecalled.
Parameters:
0
version_
uint256
uint256
1
arguments_
bytes
bytes
Some encoded arguments to use for the upgrade.
\
Events
ManualSharesDecreased
ManualSharesDecreased
Emitted when a manual redemption takes place.
Parameters:
0
owner
address
address
Address of the account.
1
sharesDecreased
uint256
uint256
Amount of shares redeemed.
\
ManualSharesIncreased
ManualSharesIncreased
Emitted when a manual redemption is processed.
Parameters:
0
owner
address
address
Address of the account.
1
sharesAdded
uint256
uint256
Amount of shares added to the redeemable amount.
\
ManualWithdrawalSet
ManualWithdrawalSet
Emitted when the withdrawal type of an account is updated.
Parameters:
0
owner
address
address
Address of the account.
1
isManual
bool
bool
`true` if the withdrawal is manual, `false` if it is automatic.
\
RequestCreated
RequestCreated
Emitted when a withdrawal request is created.
Parameters:
0
requestId
uint128
uint128
Identifier of the withdrawal request.
1
owner
address
address
Address of the owner of the shares.
2
shares
uint256
uint256
Amount of shares requested for redemption.
\
RequestDecreased
RequestDecreased
Emitted when a withdrawal request is updated.
Parameters:
0
requestId
uint128
uint128
Identifier of the withdrawal request.
1
shares
uint256
uint256
Amount of shares reduced during a redemption request.
\
RequestProcessed
RequestProcessed
Emitted when a withdrawal request is processed.
Parameters:
0
requestId
uint128
uint128
Identifier of the withdrawal request.
1
owner
address
address
The owner of the shares.
2
shares
uint256
uint256
Amount of redeemable shares.
3
assets
uint256
uint256
Amount of withdrawable assets.
\
RequestRemoved
RequestRemoved
Emitted when a withdrawal request is removed.
Parameters:
0
requestId
uint128
uint128
Identifier of the withdrawal request.
\
Upgraded
Upgraded
The instance was upgraded.
Parameters:
0
toVersion_
uint256
uint256
The new version of the loan.
1
arguments_
bytes
bytes
The upgrade arguments, if any.
\
Last updated