Collateral¶
Description¶
Source: contracts/Collateral.sol
Variables¶
canOpenLoans
¶
Type: bool
collateralKey
¶
Type: bytes32
interactionDelay
¶
Type: uint256
issueFeeRate
¶
Type: uint256
manager
¶
Type: address
maxLoansPerAccount
¶
Type: uint256
minCollateral
¶
Type: uint256
minCratio
¶
Type: uint256
shortingRewards
¶
Type: mapping(bytes32 => address)
state
¶
Type: contract CollateralState
synths
¶
Type: bytes32[]
synthsByKey
¶
Type: mapping(bytes32 => bytes32)
Constructor¶
constructor
¶
Details
Signature
constructor(contract CollateralState _state, address _owner, address _manager, address _resolver, bytes32 _collateralKey, uint256 _minCratio, uint256 _minCollateral)
Visibility
public
State Mutability
undefined
Restricted Functions¶
addRewardsContracts
¶
Details
Signature
addRewardsContracts(address rewardsContract, bytes32 synth)
Visibility
external
State Mutability
undefined
Modifiers
addSynths
¶
Details
Signature
addSynths(bytes32[] _synthNamesInResolver, bytes32[] _synthKeys)
Visibility
external
State Mutability
undefined
Requires
Modifiers
setCanOpenLoans
¶
Details
Signature
setCanOpenLoans(bool _canOpenLoans)
Visibility
external
State Mutability
undefined
Modifiers
Emits
setInteractionDelay
¶
Details
Signature
setInteractionDelay(uint256 _interactionDelay)
Visibility
external
State Mutability
undefined
Requires
Modifiers
Emits
setIssueFeeRate
¶
Details
Signature
setIssueFeeRate(uint256 _issueFeeRate)
Visibility
external
State Mutability
undefined
Modifiers
Emits
setManager
¶
Details
Signature
setManager(address _newManager)
Visibility
external
State Mutability
undefined
Modifiers
Emits
setMinCratio
¶
Details
Signature
setMinCratio(uint256 _minCratio)
Visibility
external
State Mutability
undefined
Requires
Modifiers
Emits
Internal Functions¶
_checkLoanAvailable
¶
Details
Signature
_checkLoanAvailable(struct ICollateralLoan.Loan _loan) view
Visibility
internal
State Mutability
undefined
Requires
_checkSynthBalance
¶
Details
Signature
_checkSynthBalance(address payer, bytes32 key, uint256 amount) view
Visibility
internal
State Mutability
undefined
Requires
_exchangeRates
¶
Details
Signature
_exchangeRates() view returns (contract IExchangeRates)
Visibility
internal
State Mutability
undefined
_exchanger
¶
Details
Signature
_exchanger() view returns (contract IExchanger)
Visibility
internal
State Mutability
undefined
_feePool
¶
Details
Signature
_feePool() view returns (contract IFeePool)
Visibility
internal
State Mutability
undefined
_manager
¶
Details
Signature
_manager() view returns (contract ICollateralManager)
Visibility
internal
State Mutability
undefined
_payFees
¶
Details
Signature
_payFees(uint256 amount, bytes32 synth)
Visibility
internal
State Mutability
undefined
_processPayment
¶
Details
Signature
_processPayment(struct ICollateralLoan.Loan loanBefore, uint256 payment) returns (struct ICollateralLoan.Loan loanAfter)
Visibility
internal
State Mutability
undefined
_synth
¶
Details
Signature
_synth(bytes32 synthName) view returns (contract ISynth)
Visibility
internal
State Mutability
undefined
_synthsUSD
¶
Details
Signature
_synthsUSD() view returns (contract ISynth)
Visibility
internal
State Mutability
undefined
_systemStatus
¶
Details
Signature
_systemStatus() view returns (contract ISystemStatus)
Visibility
internal
State Mutability
undefined
accrueInterest
¶
Details
Signature
accrueInterest(struct ICollateralLoan.Loan loan) returns (struct ICollateralLoan.Loan loanAfter)
Visibility
internal
State Mutability
undefined
Requires
closeByLiquidationInternal
¶
Details
Signature
closeByLiquidationInternal(address borrower, address liquidator, struct ICollateralLoan.Loan loan) returns (uint256 collateral)
Visibility
internal
State Mutability
undefined
Requires
Emits
closeInternal
¶
Details
Signature
closeInternal(address borrower, uint256 id) returns (uint256 collateral)
Visibility
internal
State Mutability
undefined
Requires
Modifiers
Emits
depositInternal
¶
Details
Signature
depositInternal(address account, uint256 id, uint256 amount)
Visibility
internal
State Mutability
undefined
Requires
Modifiers
Emits
drawInternal
¶
Details
Signature
drawInternal(uint256 id, uint256 amount)
Visibility
internal
State Mutability
undefined
Requires
Modifiers
Emits
issuanceRatio
¶
Details
Signature
issuanceRatio() view returns (uint256 ratio)
Visibility
internal
State Mutability
undefined
liquidateInternal
¶
Details
Signature
liquidateInternal(address borrower, uint256 id, uint256 payment) returns (uint256 collateralLiquidated)
Visibility
internal
State Mutability
undefined
Requires
Modifiers
Emits
openInternal
¶
Details
Signature
openInternal(uint256 collateral, uint256 amount, bytes32 currency, bool short) returns (uint256 id)
Visibility
internal
State Mutability
undefined
Requires
Modifiers
Emits
repayInternal
¶
Details
Signature
repayInternal(address borrower, address repayer, uint256 id, uint256 payment)
Visibility
internal
State Mutability
undefined
Requires
Modifiers
Emits
withdrawInternal
¶
Details
Signature
withdrawInternal(uint256 id, uint256 amount) returns (uint256 withdraw)
Visibility
internal
State Mutability
undefined
Requires
Modifiers
Emits
External Functions¶
areSynthsAndCurrenciesSet
¶
Details
Signature
areSynthsAndCurrenciesSet(bytes32[] _synthNamesInResolver, bytes32[] _synthKeys) view returns (bool)
Visibility
external
State Mutability
undefined
collateralRatio
¶
Details
Signature
collateralRatio(struct ICollateralLoan.Loan loan) view returns (uint256 cratio)
Visibility
public
State Mutability
undefined
collateralRedeemed
¶
Details
Signature
collateralRedeemed(bytes32 currency, uint256 amount) view returns (uint256 collateral)
Visibility
public
State Mutability
undefined
liquidationAmount
¶
Details
Signature
liquidationAmount(struct ICollateralLoan.Loan loan) view returns (uint256 amount)
Visibility
public
State Mutability
undefined
maxLoan
¶
Details
Signature
maxLoan(uint256 amount, bytes32 currency) view returns (uint256 max)
Visibility
public
State Mutability
undefined
resolverAddressesRequired
¶
Details
Signature
resolverAddressesRequired() view returns (bytes32[] addresses)
Visibility
public
State Mutability
undefined
Modifiers¶
rateIsValid
¶
Events¶
CanOpenLoansUpdated
¶
Signature: CanOpenLoansUpdated(bool canOpenLoans)
CollateralDeposited
¶
Signature: CollateralDeposited(address account, uint256 id, uint256 amountDeposited, uint256 collateralAfter)
CollateralWithdrawn
¶
Signature: CollateralWithdrawn(address account, uint256 id, uint256 amountWithdrawn, uint256 collateralAfter)
InteractionDelayUpdated
¶
Signature: InteractionDelayUpdated(uint256 interactionDelay)
IssueFeeRateUpdated
¶
Signature: IssueFeeRateUpdated(uint256 issueFeeRate)
LoanClosed
¶
Signature: LoanClosed(address account, uint256 id)
LoanClosedByLiquidation
¶
Signature: LoanClosedByLiquidation(address account, uint256 id, address liquidator, uint256 amountLiquidated, uint256 collateralLiquidated)
LoanCreated
¶
Signature: LoanCreated(address account, uint256 id, uint256 amount, uint256 collateral, bytes32 currency, uint256 issuanceFee)
LoanDrawnDown
¶
Signature: LoanDrawnDown(address account, uint256 id, uint256 amount)
LoanPartiallyLiquidated
¶
Signature: LoanPartiallyLiquidated(address account, uint256 id, address liquidator, uint256 amountLiquidated, uint256 collateralLiquidated)
LoanRepaymentMade
¶
Signature: LoanRepaymentMade(address account, address repayer, uint256 id, uint256 amountRepaid, uint256 amountAfter)
ManagerUpdated
¶
Signature: ManagerUpdated(address manager)
MaxLoansPerAccountUpdated
¶
Signature: MaxLoansPerAccountUpdated(uint256 maxLoansPerAccount)
MinCollateralUpdated
¶
Signature: MinCollateralUpdated(uint256 minCollateral)
MinCratioRatioUpdated
¶
Signature: MinCratioRatioUpdated(uint256 minCratio)