src/core/issuance/ReferenceCurve_v1.sol.
Interfaces: IReferenceCurve_v1, IBC_Discrete_Redeeming_VirtualSupply_v1, IRedeemingIssuanceBase_v2, IIssuanceBase_v2, IVirtualCollateralSupplyBase_v1.
Functions
buy
Returns
IIssuanceBase_v2.sol#L141
buyFor
Returns
IIssuanceBase_v2.sol#L130
calculatePurchaseReturn
Returns
IIssuanceBase_v2.sol#L112
disableBuy
IIssuanceBase_v2.sol#L154
disableSell
IRedeemingIssuanceBase_v2.sol#L136
drawReserves
to_ without modifying virtual collateral supply. Only the bound ReserveManager may call.
Parameters
IBC_Discrete_Redeeming_VirtualSupply_v1.sol#L172
elevate
IReferenceCurve_v1.sol#L324
enableBuy
IIssuanceBase_v2.sol#L150
enableBuy
IReferenceCurve_v1.sol#L264
enableSell
IRedeemingIssuanceBase_v2.sol#L131
enableSell
IReferenceCurve_v1.sol#L270
reconfigureSegments
IBC_Discrete_Redeeming_VirtualSupply_v1.sol#L140
restoreReserves
from_ without modifying virtual collateral supply. Only the bound ReserveManager may call.
Parameters
IBC_Discrete_Redeeming_VirtualSupply_v1.sol#L188
sell
Returns
IRedeemingIssuanceBase_v2.sol#L121
sellTo
Returns
IRedeemingIssuanceBase_v2.sol#L110
setBuyFee
IIssuanceBase_v2.sol#L158
setEndowmentSetupOpen
IReferenceCurve_v1.sol#L246
setReferenceSellController
IReferenceCurve_v1.sol#L247
setReferenceSellsClosed
IReferenceCurve_v1.sol#L248
setSellFee
IRedeemingIssuanceBase_v2.sol#L144
setVirtualCollateralSupply
Module__BC_Discrete_Redeeming_VirtualSupply__ManualVirtualSupplyOverrideDisabled. Initialization and internal automatic accounting remain intact: buys, sells, elevation, and collateral supplied through segment reconfiguration update virtual collateral supply. ReserveManager drawReserves and restoreReserves intentionally leave it unchanged; reserve liabilities are tracked separately.
Parameters
IBC_Discrete_Redeeming_VirtualSupply_v1.sol#L161
View functions
areReferenceSellsClosed
IReferenceCurve_v1.sol#L245
calculateSaleReturn
Returns
IRedeemingIssuanceBase_v2.sol#L89
getBuyFee
IIssuanceBase_v2.sol#L86
getCollateralToken
IIssuanceBase_v2.sol#L94
getDisableEpochs
IReferenceCurve_v1.sol#L255
getIssuanceToken
IIssuanceBase_v2.sol#L90
getPremiumSections
IReferenceCurve_v1.sol#L281
getReferenceMetrics
IReferenceCurve_v1.sol#L299
getReferencePrice
IReferenceCurve_v1.sol#L292
getReferenceSection
IReferenceCurve_v1.sol#L274
getReferenceSellController
IReferenceCurve_v1.sol#L241
getSegments
IBC_Discrete_Redeeming_VirtualSupply_v1.sol#L102
getSellFee
IRedeemingIssuanceBase_v2.sol#L71
getStaticPriceForBuying
IBC_Discrete_Redeeming_VirtualSupply_v1.sol#L111
getStaticPriceForSelling
IBC_Discrete_Redeeming_VirtualSupply_v1.sol#L117
getVirtualCollateralSupply
IVirtualCollateralSupplyBase_v1.sol#L64
isBuyOpen
IIssuanceBase_v2.sol#L82
isEndowmentSetupOpen
IReferenceCurve_v1.sol#L240
isSellOpen
IRedeemingIssuanceBase_v2.sol#L67
maxElevatable
IReferenceCurve_v1.sol#L333
maxElevatable
Returns
IReferenceCurve_v1.sol#L339
Events
BuyFeeUpdated
IIssuanceBase_v2.sol#L52
BuyingDisabled
IIssuanceBase_v2.sol#L47
BuyingEnabled
IIssuanceBase_v2.sol#L44
CollateralDeposited
IBC_Discrete_Redeeming_VirtualSupply_v1.sol#L92
CollateralTokenSet
IIssuanceBase_v2.sol#L61
CollateralWithdrawn
IBC_Discrete_Redeeming_VirtualSupply_v1.sol#L84
Elevated
IReferenceCurve_v1.sol#L205
ElevationSurplusAbsorbed
Elevated.collateralConsumed_ stays the amount pulled from the caller.
Parameters
IReferenceCurve_v1.sol#L217
EndowmentSetupStateChanged
IReferenceCurve_v1.sol#L44
IssuanceTokenSet
IIssuanceBase_v2.sol#L57
ReferenceAdjustedToSupply
IReferenceCurve_v1.sol#L198
ReferencePriceUpdated
IReferenceCurve_v1.sol#L221
ReferenceSellControllerSet
IReferenceCurve_v1.sol#L45
ReferenceSellsClosed
IReferenceCurve_v1.sol#L46
SegmentsSet
IBC_Discrete_Redeeming_VirtualSupply_v1.sol#L78
SellFeeUpdated
IRedeemingIssuanceBase_v2.sol#L46
SellingDisabled
IRedeemingIssuanceBase_v2.sol#L41
SellingEnabled
IRedeemingIssuanceBase_v2.sol#L38
SpotToleranceBpsUpdated
IReferenceCurve_v1.sol#L233
TerminalLeftoverSentToFeeTreasury
IReferenceCurve_v1.sol#L228
TokensBought
IIssuanceBase_v2.sol#L69
TokensSold
IRedeemingIssuanceBase_v2.sol#L54
VirtualCollateralAmountAdded
IVirtualCollateralSupplyBase_v1.sol#L38
VirtualCollateralAmountSubtracted
IVirtualCollateralSupplyBase_v1.sol#L45
VirtualCollateralSupplySet
IVirtualCollateralSupplyBase_v1.sol#L33
Errors
Module__BC_Discrete_Redeeming_VirtualSupply__CurveInteractionsOpen
IBC_Discrete_Redeeming_VirtualSupply_v1.sol#L59
Module__BC_Discrete_Redeeming_VirtualSupply__InsufficientCollateralBalance
IBC_Discrete_Redeeming_VirtualSupply_v1.sol#L48
Module__BC_Discrete_Redeeming_VirtualSupply__InvarianceCheckFailed
IBC_Discrete_Redeeming_VirtualSupply_v1.sol#L38
Module__BC_Discrete_Redeeming_VirtualSupply__ManualVirtualSupplyOverrideDisabled
IBC_Discrete_Redeeming_VirtualSupply_v1.sol#L70
Module__BC_Discrete_Redeeming_VirtualSupply__OnlyReserveManager
IBC_Discrete_Redeeming_VirtualSupply_v1.sol#L54
Module__IssuanceBase__BuyingFunctionaltiesClosed
IIssuanceBase_v2.sol#L18
Module__IssuanceBase__InsufficientOutputAmount
IIssuanceBase_v2.sol#L25
Module__IssuanceBase__InvalidDepositAmount
IIssuanceBase_v2.sol#L12
Module__IssuanceBase__InvalidFeePercentage
IIssuanceBase_v2.sol#L9
Module__IssuanceBase__InvalidIssuanceToken
IIssuanceBase_v2.sol#L38
Module__IssuanceBase__InvalidMinAmountOut
IIssuanceBase_v2.sol#L32
Module__IssuanceBase__InvalidRecipient
IIssuanceBase_v2.sol#L22
Module__IssuanceBase__InvalidWithdrawAmount
IIssuanceBase_v2.sol#L15
Module__IssuanceBase__TradeAmountTooLow
IIssuanceBase_v2.sol#L29
Module__RedeemingIssuanceBase__InsufficientCollateralForProjectFee
IRedeemingIssuanceBase_v2.sol#L32
Module__RedeemingIssuanceBase__SellingFunctionaltiesClosed
IRedeemingIssuanceBase_v2.sol#L28
Module__ReferenceCurve__CapacityAboveTokenCap
IReferenceCurve_v1.sol#L147
Module__ReferenceCurve__CollateralTooSmall
IReferenceCurve_v1.sol#L72
Module__ReferenceCurve__CurveInteractionsOpen
IReferenceCurve_v1.sol#L82
Module__ReferenceCurve__DisableEpochMismatch
IReferenceCurve_v1.sol#L165
Module__ReferenceCurve__DisableEpochRequired
IReferenceCurve_v1.sol#L172
Module__ReferenceCurve__InsufficientPremiumSteps
IReferenceCurve_v1.sol#L52
Module__ReferenceCurve__InsufficientSegments
IReferenceCurve_v1.sol#L55
Module__ReferenceCurve__InvalidReferenceSegment
IReferenceCurve_v1.sol#L60
Module__ReferenceCurve__InvalidSpotTolerance
IReferenceCurve_v1.sol#L133
Module__ReferenceCurve__NoElevation
IReferenceCurve_v1.sol#L66
Module__ReferenceCurve__NoIssuanceSupply
IReferenceCurve_v1.sol#L78
Module__ReferenceCurve__RebalanceCapacityBelowSupply
IReferenceCurve_v1.sol#L104
Module__ReferenceCurve__RebalanceCollateralMismatch
IReferenceCurve_v1.sol#L129
Module__ReferenceCurve__RebalanceDeadlinePassed
IReferenceCurve_v1.sol#L176
Module__ReferenceCurve__RebalanceReferenceDecreased
IReferenceCurve_v1.sol#L96
Module__ReferenceCurve__RebalanceReserveDecreased
IReferenceCurve_v1.sol#L139
Module__ReferenceCurve__RebalanceSpotDecreased
IReferenceCurve_v1.sol#L112
Module__ReferenceCurve__RebalanceSpotMoved
IReferenceCurve_v1.sol#L121
Module__ReferenceCurve__RebalanceStateMismatch
IReferenceCurve_v1.sol#L186
Module__ReferenceCurve__ReconfigureReserveDecreased
IReferenceCurve_v1.sol#L156
Module__ReferenceCurve__ReferencePriceCannotDecrease
IReferenceCurve_v1.sol#L88
Module__VirtualCollateralSupplyBase__AddResultsInOverflow
IVirtualCollateralSupplyBase_v1.sol#L25
Module__VirtualCollateralSupplyBase__SubtractResultsInUnderflow
IVirtualCollateralSupplyBase_v1.sol#L22
Module__VirtualCollateralSupplyBase__VirtualSupplyCannotBeZero
IVirtualCollateralSupplyBase_v1.sol#L19
ReferenceCurve__ControllerAlreadySet
IReferenceCurve_v1.sol#L30
ReferenceCurve__ControllerMismatch
IReferenceCurve_v1.sol#L40
ReferenceCurve__ControllerOnly
IReferenceCurve_v1.sol#L34
ReferenceCurve__ControllerZero
IReferenceCurve_v1.sol#L29
ReferenceCurve__EndowmentDrawExceedsReferenceValue
IReferenceCurve_v1.sol#L37
ReferenceCurve__OutstandingDrawsOnReopen
IReferenceCurve_v1.sol#L36
ReferenceCurve__ReferenceSellsClosed
IReferenceCurve_v1.sol#L35
ReferenceCurve__ReserveManagerOnly
IReferenceCurve_v1.sol#L31
ReferenceCurve__SetupStateInvalid
IReferenceCurve_v1.sol#L28