Cadangan

deposit

Mendepositokantoken ke Cadangan, yang menghasilkan token yang sesuai di sisi Everscale.

function deposit(
        EverscaleAddress memory recipient,
        uint256 amount
    ) public override onlyEmergencyDisabled
        respectDepositLimit(amount) nonReentrant

Parameter:

NamaJenisDeskripsi

recipient

EverscaleAddress memory

Penerima di jaringan Everscale

amount

uint256

Jumlah token yang akan disetor

Acara yang dikeluarkan:

  • UserDeposit

deposit

Sama dengan depositbiasa, tetapi mengisi beberapa penarikan tertunda.

function deposit(
        EverscaleAddress memory recipient,
        uint256 amount,
        uint256 expectedMinBounty,
        PendingWithdrawalId[] memory pendingWithdrawalIds
    ) external override

Parameter:

NamaJenisDeskripsi

recipient

EverscaleAddress memory

Penerima di jaringan Everscale

amount

uint256

Jumlah token yang akan disetor

expectedMinBounty

uint256

Jumlah bounty minimal yang diharapkan

pendingWithdrawalIds

PendingWithdrawalId[] memory

Daftar penarikan tertunda untuk ditutup

Acara yang dikeluarkan:

  • UserDeposit

depositToFactory

Menyetorkan token ke Pabrik.

function depositToFactory(
        uint128 amount,
        int8 wid,
        uint256 user,
        uint256 creditor,
        uint256 recipient,
        uint128 tokenAmount,
        uint128 tonAmount,
        uint8 swapType,
        uint128 slippageNumerator,
        uint128 slippageDenominator,
        bytes memory level3
    ) external override onlyEmergencyDisabled respectDepositLimit(amount)

Parameter:

NamaJenisDeskripsi

amount

uint128

Jumlah yang harus disetor

wid

int8

Id workchain

user

uint256

Alamat pengguna

creditor

uint256

Alamat kreditor

recipient

uint256

Alamat penerima

tokenAmount

uint128

Jumlah token

tonAmount

uint128

Jumlah ton

swapType

uint8

Jenis penghapusan

slippageNumerator

uint128

Numerator yang digunakan dalam menentukan nilai slippage

slippageDenominator

uint128

Penyebut yang digunakan dalam menentukan nilai slippage

level3

bytes memory

Acara yang dikeluarkan:

  • FactoryDeposit

saveWithdraw

Menyimpan tanda terima penarikan. Jika Cadangan memiliki cukup token dan penarikan melewati batas, maka Cadangan akan segera dieksekusi. Jika tidak, disimpan sebagai penarikan tertunda.

function saveWithdraw(
        bytes memory payload,
        bytes[] memory signatures
    )  public override onlyEmergencyDisabled
        withdrawalNotSeenBefore(payload)
        returns (bool instantWithdrawal, PendingWithdrawalId memory pendingWithdrawalId)

Parameter:

NamaJenisDeskripsi

payload

bytes memory

Tanda terima penarikan, byte yang dikodekan dari EverscaleEvent

signatures

bytes[] memory

Daftar tanda tangan pengganti

Nilai hasil:

NamaJenisDeskripsi

instantWithdrawal

bool

Benar jika penarikan langsung terisi, salah jika disimpan sebagai penarikan tertunda

pendingWithdrawalId

PendingWithdrawalId memory

Id penarikan tertunda

Acara yang dikeluarkan:

  • InstantWithdrawal

saveWithdraw

Menyimpan bukti penarikan, sama dengan saveWithdraw(bytes payload, bytes[] signatures), tetapi mengizinkan untuk langsung mengatur bounty.

function saveWithdraw(
        bytes memory payload,
        bytes[] memory signatures,
        uint bounty
    )
        external
        override

Parameter:

NamaJenisDeskripsi

payload

bytes memory

Tanda terima penarikan, byte yang dikodekan dari EverscaleEvent

signatures

bytes[] memory

Daftar tanda tangan pengganti

bounty

uint

Nilai baru untuk bounty penarikan yang tertunda

cancelPendingWithdrawal

Membatalkan penarikan tertunda sebagian atau seluruhnya. Hanya dapat dipanggil oleh penerima penarikan yang tertunda.

function cancelPendingWithdrawal(
        uint256 id,
        uint256 amount,
        EverscaleAddress memory recipient,
        uint bounty
    ) external override onlyEmergencyDisabled
        pendingWithdrawalApproved(PendingWithdrawalId(msg.sender, id))
        pendingWithdrawalOpened(PendingWithdrawalId(msg.sender, id))

Parameter:

NamaJenisDeskripsi

id

uint256

Id penarikan tertunda

amount

uint256

Jumlah yang akan dibatalkan (lalu jumlah penarikan yang tertunda)

recipient

EverscaleAddress memory

Penerima token di jaringan Everscale

bounty

uint

Nilai bounty baru

Acara yang dikeluarkan:

  • PendingWithdrawalCancel

withdraw

Menarik penarikan tertunda akun panggilan dari Cadangan ini.

function withdraw(
        uint256 id,
        uint256 amountRequested,
        address recipient,
        uint256 maxLoss,
        uint256 bounty
    ) external override onlyEmergencyDisabled
        pendingWithdrawalOpened(PendingWithdrawalId(msg.sender, id))
        pendingWithdrawalApproved(PendingWithdrawalId(msg.sender, id))
        returns(uint256 amountAdjusted)

Parameter:

NamaJenisDeskripsi

id

uint256

Id penarikan tertunda

amountRequested

uint256

Jumlah token yang akan ditarik

recipient

address

Alamat untuk mengirim token tebusan

maxLoss

uint256

Kerugian maksimum yang dapat diterima untuk penarikan

bounty

uint256

Nilai bounty baru

Nilai hasil:

NamaJenisDeskripsi

amountAdjusted

uint256

Jumlah token yang ditukarkan

Acara yang dikeluarkan:

  • PendingWithdrawalWithdraw

addStrategy

Menambahkan Strategi ke Cadangan. Hanya bisa dipanggil dengangovernance.

function addStrategy(
        address strategyId,
        uint256 _debtRatio,
        uint256 minDebtPerHarvest,
        uint256 maxDebtPerHarvest,
        uint256 _performanceFee
    ) external  override onlyGovernance
        onlyEmergencyDisabled strategyNotExists(strategyId)

Parameter:

NamaJenisDeskripsi

strategyId

address

Alamat strategi untuk menambahkan

_debtRatio

uint256

Bagian dari total aset cadangan yang dapat diakses oleh strategi

minDebtPerHarvest

uint256

Batas bawah peningkatan utang sejak panen terakhir

maxDebtPerHarvest

uint256

Batas atas peningkatan utang sejak panen terakhir

_performanceFee

uint256

Biaya yang akan diterima ahli strategi berdasarkan kinerja Cadangan ini

Acara yang dikeluarkan:

  • StrategyAdded

updateStrategyDebtRatio

Mengganti kuantitas aset yang boleh dikelola strategy. Bisa dipanggil olehgovernance atau management.

function updateStrategyDebtRatio(
        address strategyId,
        uint256 _debtRatio
    ) external  override onlyGovernanceOrManagement
        strategyExists(strategyId)

Parameter:

NamaJenisDeskripsi

strategyId

address

Alamat strategi untuk memperbarui

_debtRatio

uint256

Kuantitas strategi aset dapat dikelola setelah pembaruan

Acara yang dikeluarkan:

  • StrategyUpdateDebtRatio

updateStrategyMinDebtPerHarvest

Memperbarui strategi utang minimal dengan nilai baru yang diteruskan dari param.

function updateStrategyMinDebtPerHarvest(
        address strategyId,
        uint256 minDebtPerHarvest
    ) external override onlyGovernanceOrManagement
        strategyExists(strategyId)

Parameter:

NamaJenisDeskripsi

strategyId

address

Alamat strategi untuk memperbarui

minDebtPerHarvest

uint256

Batas bawah peningkatan utang sejak panen terakhir

Acara yang dikeluarkan:

  • StrategyUpdateMinDebtPerHarvest

updateStrategyMaxDebtPerHarvest

Memperbarui strategi hutang maksimum dengan nilai baru yang diteruskan dari param.

function updateStrategyMaxDebtPerHarvest(
        address strategyId,
        uint256 maxDebtPerHarvest
    ) external override onlyGovernanceOrManagement
        strategyExists(strategyId)

Parameter:

NamaJenisDeskripsi

strategyId

address

Alamat strategi untuk memperbarui

maxDebtPerHarvest

uint256

Batas atas peningkatan utang sejak panen terakhir

Acara yang dikeluarkan:

  • StrategyUpdateMaxDebtPerHarvest

updateStrategyPerformanceFee

Memperbarui biaya kinerja strategi dengan nilai baru yang diteruskan dari param.

function updateStrategyPerformanceFee(
        address strategyId,
        uint256 _performanceFee
    ) external override onlyGovernance strategyExists(strategyId)

Parameter:

NamaJenisDeskripsi

strategyId

address

Alamat strategi untuk memperbarui

_performanceFee

uint256

Biaya baru yang akan diterima ahli strategi berdasarkan kinerja Cadangan ini

Acara yang dikeluarkan:

  • StrategyUpdatePerformanceFee

revokeStrategy

Membatalkan strategi.

function revokeStrategy(
        address strategyId
    ) external override onlyStrategyOrGovernanceOrGuardian(strategyId)

Parameter:

NamaJenisDeskripsi

strategyId

address

Alamat strategi untuk memperbarui

Acara yang dikeluarkan:

  • StrategyRevoked

_assessFees

Berdasarkan id strategi dan keuntungan yang dilaporkan, menghitung total biaya berdasarkan perkiraan biaya manajemen, ahli strategi, dan kinerja.

function _assessFees(
        address strategyId,
        uint256 gain
    ) internal returns (uint256)

Parameter:

NamaJenisDeskripsi

strategyId

address

Alamat strategi untuk memperbarui

gain

uint256

Keuntungan yang dilaporkan digunakan untuk menilai biaya

Nilai hasil:

JenisDeskripsi

uint256

Biaya baru yang dinilai

report

Melaporkan jumlah aset yang dimiliki Strategi panggilan gratis (biasanya dalam hal ROI).

function report(
        uint256 gain,
        uint256 loss,
        uint256 _debtPayment
    )
        external
        override
        strategyExists(msg.sender)
        returns (uint256)

Parameter:

NamaJenisDeskripsi

gain

uint256

Strategi jumlah telah direalisasikan sebagai keuntungan atas investasinya sejak laporan terakhir

loss

uint256

Strategi jumlah telah direalisasikan sebagai kerugian atas investasinya sejak laporan terakhir

_debtPayment

uint256

Strategi jumlah telah tersedia untuk menutupi hutang yang belum dibayar

Nilai hasil:

JenisDeskripsi

uint256

Jumlah hutang yang belum dibayar

Acara yang dikeluarkan:

  • StrategyReported

skim

Menyaring keuntungan strategi ke alamat rewards_. Hanya bisa dipanggil oleh governance atau management.

function skim(
        address strategyId
    ) external  override onlyGovernanceOrManagement
        strategyExists(strategyId)

Parameter:

NamaJenisDeskripsi

strategyId

address

Alamat strategi untuk memperbarui

skimFees

Menyaring biaya Cadangan ke alamat rewards_. Hanya bisa dipanggil oleh governance atau management.

function skimFees(
        bool skim_to_everscale
    ) external override onlyGovernanceOrManagement

Parameter:

NamaJenisDeskripsi

skim_to_everscale

bool

Benar jika menyaring biaya ke Everscale, salah jika tidak

sweep

Menghapus token dari Cadangan ini yang bukan jenis token yang dikelola oleh Cadangan ini. Ini dapat digunakan jika tidak sengaja mengirim jenis token yang salah ke Cadangan ini.

function sweep(
        address _token
    ) external override onlyGovernance

Parameter:

NamaJenisDeskripsi

_token

address

Alamat token untuk ditransfer keluar dari cadangan ini

forceWithdraw

Memaksa penarikan tertunda pengguna. Hanya berfungsi jika Cadangan memiliki cukup token di saldonya. Hanya dapat dipanggil dengan wrapped.

function forceWithdraw(
        PendingWithdrawalId memory pendingWithdrawalId
    )
        public
        override
        onlyEmergencyDisabled
        pendingWithdrawalOpened(pendingWithdrawalId)
        pendingWithdrawalApproved(pendingWithdrawalId)

Parameter:

NamaJenisDeskripsi

pendingWithdrawalId

PendingWithdrawalId memory

Id penarikan tertunda

Acara yang dikeluarkan: PendingWithdrawalForce

forceWithdraw

Multicall untukforceWithdraw.

function forceWithdraw(
        PendingWithdrawalId[] memory pendingWithdrawalId
    ) external override

Parameter:

NamaJenisDeskripsi

pendingWithdrawalId

PendingWithdrawalId[] memory

Id penarikan tertunda

setPendingWithdrawalApprove

Menetapkan status persetujuan untuk penarikan yang tertunda. Penarikan tertunda harus dalam status persetujuan Required (1), jadi status persetujuan hanya dapat diatur satu kali. Jika Cadangan memiliki cukup token di saldonya - penarikan akan segera diisi. Hanya bisa dipanggil dengangovernance atauwithdrawGuardian.

Acara yang dikeluarkan:

  • PendingWithdrawalWithdraw

function setPendingWithdrawalApprove(
        PendingWithdrawalId memory pendingWithdrawalId,
        ApproveStatus approveStatus
    ) public override onlyGovernanceOrWithdrawGuardian
        pendingWithdrawalOpened(pendingWithdrawalId)

setPendingWithdrawalApprove

Multicall untuksetPendingWithdrawalApprove.

function setPendingWithdrawalApprove(
        PendingWithdrawalId[] memory pendingWithdrawalId,
        ApproveStatus[] memory approveStatus
    ) external override

Parameter:

NamaJenisDeskripsi

pendingWithdrawalId

PendingWithdrawalId[] memory

Id penarikan tertunda

approveStatus

ApproveStatus[] memory

Status persetujuan, harus Disetujui atau Ditolak

_transferToEverscale

Mengeluarkan acara untuk memberi tahu transfer yang berhasil.

function _transferToEverscale(EverscaleAddress memory recipient,uint256 _amount) internal

Parameter:

NamaJenisDeskripsi

recipient

EverscaleAddress memory

Alamat penerima di Everscale

_amount

uint256

Jumlah yang akan ditransfer

Acara yang dikeluarkan:

  • Deposit

Last updated