ExchangerWithFeeRecAlternatives¶
Description¶
Source: contracts/ExchangerWithFeeRecAlternatives.sol
Structs¶
ExchangeVolumeAtPeriod
¶
Field | Type | Description |
---|---|---|
time |
uint64 |
TBA |
volume |
uint192 |
TBA |
Variables¶
CONTRACT_NAME
¶
Type: bytes32
lastAtomicVolume
¶
Type: struct ExchangerWithFeeRecAlternatives.ExchangeVolumeAtPeriod
Constructor¶
constructor
¶
Details
Signature
constructor(address _owner, address _resolver)
Visibility
public
State Mutability
``
Views¶
atomicMaxVolumePerBlock
¶
Details
Signature
atomicMaxVolumePerBlock() view returns (uint256)
Visibility
external
State Mutability
view
feeRateForAtomicExchange
¶
Details
Signature
feeRateForAtomicExchange(bytes32 sourceCurrencyKey, bytes32 destinationCurrencyKey) view returns (uint256 exchangeFeeRate)
Visibility
external
State Mutability
view
getAmountsForAtomicExchange
¶
Details
Signature
getAmountsForAtomicExchange(uint256 sourceAmount, bytes32 sourceCurrencyKey, bytes32 destinationCurrencyKey) view returns (uint256 amountReceived, uint256 fee, uint256 exchangeFeeRate)
Visibility
external
State Mutability
view
resolverAddressesRequired
¶
Details
Signature
resolverAddressesRequired() view returns (bytes32[] addresses)
Visibility
public
State Mutability
view
Restricted Functions¶
exchangeAtomically
¶
Details
Signature
exchangeAtomically(address from, bytes32 sourceCurrencyKey, uint256 sourceAmount, bytes32 destinationCurrencyKey, address destinationAddress, bytes32 trackingCode, uint256 minAmount) returns (uint256 amountReceived)
Visibility
external
State Mutability
``
Requires
Modifiers
Internal Functions¶
_checkAndUpdateAtomicVolume
¶
Details
Signature
_checkAndUpdateAtomicVolume(struct IDirectIntegrationManager.ParameterIntegrationSettings settings, uint256 sourceSusdValue)
Visibility
internal
State Mutability
``
Requires
_createVirtualSynth
¶
Details
Signature
_createVirtualSynth(contract IERC20 synth, address recipient, uint256 amount, bytes32 currencyKey) returns (contract IVirtualSynth)
Visibility
internal
State Mutability
``
Requires
Emits
_exchangeAtomically
¶
Details
Signature
_exchangeAtomically(address from, bytes32 sourceCurrencyKey, uint256 sourceAmount, bytes32 destinationCurrencyKey, address destinationAddress) returns (uint256 amountReceived, uint256 fee)
Visibility
internal
State Mutability
``
_feeRateForAtomicExchange
¶
Details
Signature
_feeRateForAtomicExchange(struct IDirectIntegrationManager.ParameterIntegrationSettings sourceSettings, struct IDirectIntegrationManager.ParameterIntegrationSettings destinationSettings) view returns (uint256)
Visibility
internal
State Mutability
view
_getAmountsForAtomicExchangeMinusFees
¶
Details
Signature
_getAmountsForAtomicExchangeMinusFees(uint256 sourceAmount, struct IDirectIntegrationManager.ParameterIntegrationSettings sourceSettings, struct IDirectIntegrationManager.ParameterIntegrationSettings destinationSettings, struct IDirectIntegrationManager.ParameterIntegrationSettings usdSettings) view returns (uint256 amountReceived, uint256 fee, uint256 exchangeFeeRate, uint256 systemConvertedAmount, uint256 systemSourceRate, uint256 systemDestinationRate)
Visibility
internal
State Mutability
view
_virtualSynthMastercopy
¶
Details
Signature
_virtualSynthMastercopy() view returns (address)
Visibility
internal
State Mutability
view
Events¶
VirtualSynthCreated
¶
Signature: VirtualSynthCreated(address synth, address recipient, address vSynth, bytes32 currencyKey, uint256 amount)