Function: deposit(address receiver, DepositParams depositParams, byte[] depositParamsSignature)
This deposits funds into the vault, with a signature from Definitive minting shares to a specific address.
Inputs
receiver
Constraints: None. None are necessary as the funds come from the sender.
Impact: The funds are deposited under this account.
depositParams
Constraints: None enforced here but must be signed by Definitive.
Impact: Controls what tokens and in what amounts to deposit into the strategy.
depositParamsSignature
Constraints: Must be a matching signature to
depositParams
.Impact: Used to verify
depositParams
.
Branches and code coverage
Intended branches
The right number of shares is minted to the right address.
Negative behavior
Reverts if
depositParams
is not properly signed.Reverts if the deadline is passed.
Reverts if in Safe Harbor Mode.
Reverts if TLV limit is not within limits after transaction.
Reverts if the change in ratio to shares is too large.
Reverts if the depositor does not have enough funds.
Reverts if there are too many transfers per block.