Tranche
Tranche
struct Tranche {
uint256 _principalDeposited;
uint256 _principalPaid;
uint256 _principalReserved;
uint256 _interestPaid;
uint256[28] __padding;
}
TrancheLogic
settleReserves
function settleReserves(struct Tranche t) internal
pay
function pay(struct Tranche t, uint256 principalAmount, uint256 interestAmount) internal
reserve
function reserve(struct Tranche t, uint256 principalAmount, uint256 interestAmount) internal
principalOutstandingBeforeReserves
function principalOutstandingBeforeReserves(struct Tranche t) internal view returns (uint256)
Returns principal outstanding, omitting _principalReserved.
principalOutstandingAfterReserves
function principalOutstandingAfterReserves(struct Tranche t) internal view returns (uint256)
Returns principal outstanding, taking into account any _principalReserved.
withdraw
function withdraw(struct Tranche t, uint256 principal) internal
Only valid for Uncalled Tranche Withdraw principal from tranche - effectively nullifying the deposit.
reverts if interest has been paid to tranche
take
function take(struct Tranche t, uint256 principalOutstandingToTake) internal returns (uint256 principalDepositedTaken, uint256 principalPaidTaken, uint256 principalReservedTaken, uint256 interestTaken)
Only valid for Uncalled Tranche
remove principalOutstanding
from the Tranche and its corresponding interest.
Take as much reserved principal as possible.
Only applicable to the uncalled tranche.
deposit
function deposit(struct Tranche t, uint256 principal) internal
Only valid for Uncalled Tranche depositing into the tranche for the first time(uncalled)
addToBalances
function addToBalances(struct Tranche t, uint256 addToPrincipalDeposited, uint256 addToPrincipalPaid, uint256 addToPrincipalReserved, uint256 addToInterestPaid) internal
Only valid for Callable Principal Tranches in the context of a call submission
principalDeposited
function principalDeposited(struct Tranche t) internal view returns (uint256)
principalPaid
function principalPaid(struct Tranche t) internal view returns (uint256)
Returns the amount of principal paid to the tranche
principalReserved
function principalReserved(struct Tranche t) internal view returns (uint256)
Returns the amount of principal paid to the tranche
principalPaidAfterSettlement
function principalPaidAfterSettlement(struct Tranche t) internal view returns (uint256)
Returns the amount of principal paid + principal reserved
interestPaid
function interestPaid(struct Tranche t) internal view returns (uint256)
proportionalInterestAndPrincipalAvailableAfterReserves
function proportionalInterestAndPrincipalAvailableAfterReserves(struct Tranche t, uint256 principalAmount, uint256 feePercent) internal view returns (uint256, uint256)
proportionalInterestAndPrincipalAvailable
function proportionalInterestAndPrincipalAvailable(struct Tranche t, uint256 principalAmount, uint256 feePercent) internal view returns (uint256, uint256)
proportionalPrincipalAvailableAfterReserves
function proportionalPrincipalAvailableAfterReserves(struct Tranche t, uint256 principalAmount) internal view returns (uint256)
proportionalPrincipalWithdrawable
function proportionalPrincipalWithdrawable(struct Tranche t, uint256 principalAmount) internal view returns (uint256)
proportionalPrincipalOutstandingBeforeReserves
function proportionalPrincipalOutstandingBeforeReserves(struct Tranche t, uint256 principalAmount) internal view returns (uint256)
proportionalPrincipalOutstandingAfterReserves
function proportionalPrincipalOutstandingAfterReserves(struct Tranche t, uint256 principalAmount) internal view returns (uint256)
proportionalInterestWithdrawable
function proportionalInterestWithdrawable(struct Tranche t, uint256 principalAmount, uint256 feePercent) internal view returns (uint256)
drawdown
function drawdown(struct Tranche t, uint256 principalAmount) internal
Only valid for Uncalled Tranche Updates the tranche as the result of a drawdown