UserData

propose

Jika pengguna memiliki cukup bensin dan tidak dipotong, meluncurkan pengajuan baru ke root dao, jika tidak memberi tahu pengguna bahwa pengajuan tidak dibuat.

function propose(
        TvmCell proposal_data,
        uint128 threshold
    ) override public onlyDaoRoot

Parameter:

Nama
Jenis
Deskripsi

proposal_data

TvmCell

Data pengajuan dalam format sel yang diperlukan untuk meluncurkan pengajuan baru

threshold

uint128

Jumlah token minimum yang diperlukan untuk mengajukan

onProposalDeployed

Menambahkan pengajuan ke pengajuan yang dibuat, menghapus pengajuan yang tertunda dan memberi tahu pengguna bahwa pengajuan telah dibuat.

function onProposalDeployed(uint32 nonce, uint32 proposal_id, uint32 answer_id) public override onlyDaoRoot

Parameter:

Nama
Jenis
Deskripsi

nonce

uint32

Id pengajuan sementara

proposal_id

uint32

Id pengajuan yang dibuat

answer_id

uint32

castVote

Jika ada kesalahan memberi tahu pengguna jika suara ditolak, jika tidak menambahkan suara yang dikeluarkan ke suara yang masuk dan suara yang masuk ke pengajuan dengan id yang diberikan.

function castVote(uint32 code_version, uint32 proposal_id, bool support, string reason) public override onlyRoot

Parameter:

Nama
Jenis
Deskripsi

code_version

uint32

Versi kode saat ini

proposal_id

uint32

Id pengajuan di mana pengguna memberikan suara

support

bool

Benar jika suara mendukung pengajuan, salah jika menentang

reason

string

Alasan suara yang diputuskan

Acara yang dikeluarkan:

  • VoteCast

voteCasted

Memberi tahu pengguna bahwa suara diberikan.

function voteCasted(uint32 proposal_id) override public onlyDaoProposal(proposal_id)

Parameter:

Nama
Jenis
Deskripsi

proposal_id

uint32

Id pengajuan di mana suara pengguna dikeluarkan

rejectVote

Menghapus suara dari suara yang diberikan dan memberi tahu pengguna tentang penolakan.

function rejectVote(uint32 proposal_id) override public onlyDaoProposal(proposal_id)

Parameter:

Nama
Jenis
Deskripsi

proposal_id

uint32

Id pengajuan di mana suara pengguna ditolak

tryUnlockVoteTokens

Membuka token yang digunakan untuk pemilihan.

function tryUnlockVoteTokens(uint32 code_version, uint32 proposal_id) override public view onlyRoot

Parameter:

Nama
Jenis
Deskripsi

code_version

uint32

Versi kode saat ini

proposal_id

uint32

Id pengajuan di mana token suara terbuka

unlockVoteTokens

Menghapus pengajuan yang dibuat dan membuka suara pengguna.

function unlockVoteTokens(uint32 proposal_id, bool success) override public onlyDaoProposal(proposal_id)

Parameter:

Nama
Jenis
Deskripsi

proposal_id

uint32

Id pengajuan di mana token suara harus dibuka

success

bool

Benar jika pengajuan diterima, salah jika ditolak

Acara yang dikeluarkan:

  • UnlockVotes

tryUnlockCastedVotes

Membuka suara yang dikeluarkan dari pengajuan dan mentransfer sisa bensin ke pengguna.

function tryUnlockCastedVotes(uint32 code_version, uint32[] proposal_ids) override public view onlyRoot

Parameter:

Nama
Jenis
Deskripsi

code_version

uint32

Versi kode saat ini

proposal_ids

uint32[]

Id pengajuan di mana suara yang dikeluarkan harus dibuka

unlockCastedVote

Menghapus suara yang dikeluarkan dari daftar dan memberi tahu pengguna bahwa suara terbuka.

function unlockCastedVote(uint32 proposal_id, bool success) override public onlyDaoProposal(proposal_id)

Parameter:

Nama
Jenis
Deskripsi

proposal_id

uint32

Id pengajuan di mana pengguna mengeluarkan suara

success

bool

Benar jika pengajuan diterima, salah jika ditolak

Acara yang dikeluarkan:

  • UnlockCastedVotes

_lockedTokens

Mengembalikan jumlah total token pengguna yang terkunci yang digunakan di pengajuan

function _lockedTokens() private view returns (uint128)

Nilai hasil:

Jenis
Deskripsi

uint128

Jumlah total token pengguna yang terkunci

syncRewards

Mensinkronkan semua data yang terhubung ke putaran hadiah saat menambahkan putaran hadiah baru.

function syncRewards(IStakingPool.RewardRound[] reward_rounds, uint256 updated_balance) internal

Parameter:

Nama
Jenis
Deskripsi

reward_rounds

IStakingPool.RewardRound[]

Daftar hadiah putaran

updated_balance

uint256

Memperbarui saldo token setelah tindakan

slash

Mensinkronkan hadiah, mengatur hadiah yang terblokir, hutang hadiah dan saldo token dan mengonfirmasi pemotongan dengan menggunakan data itu.

function slash(IStakingPool.RewardRound[] reward_rounds, address send_gas_to) external override onlyRoot

Parameter:

Nama
Jenis
Deskripsi

reward_rounds

RewardRound[]

Daftar hadiah putaran

send_gas_to

address

Alamat untuk mengirimkan sisa bensin

processDeposit

Mensinkronkan hadiah, menambahkan token yang didepositokan ke saldo token dan menyelesaikan deposito.

function processDeposit(
        uint64 nonce,
        uint128 _tokens_to_deposit,
        IStakingPool.RewardRound[] reward_rounds,
        uint32 code_version
    ) external override onlyRoot

Parameter:

Nama
Jenis
Deskripsi

nonce

uint64

Id deposito yang harus dikembalikan atau diselesaikan

_tokens_to_deposit

uint128

Jumlah token untuk didepositokan

reward_rounds

RewardRound[]

Daftar hadiah putaran

code_version

uint32

Versi kode saat ini

Acara yang dikeluarkan:

  • DepositProcessed

processClaimReward

Mensinkronkan hadiah, membuat daftar hadiah baru yang datanya adalah saldo hadiah dari putaran hadiah masing-masing dan menyelesaikan mengklaim hadiah.

function processClaimReward(
        IStakingPool.RewardRound[] reward_rounds,
        address send_gas_to,
        uint32 code_version
    ) external override onlyRoot

Parameter:

Nama
Jenis
Deskripsi

reward_rounds

RewardRound[]

Daftar hadiah putaran

send_gas_to

address

Alamat untuk mengirimkan sisa bensin

code_version

uint32

Versi kode saat ini

getRewardForRelayRound

Melakukan semua pemeriksaan yang diperlukan dan mendapatkan hadiah untuk putaran pengganti yang selesai.

function getRewardForRelayRound(uint32 round_num) external onlyRelay

Parameter:

Nama
Jenis
Deskripsi

round_num

uint32

Jumlah putaran

processGetRewardForRelayRound2

Mensinkronkan hadiah dan berdasarkan alamat putaran pengganti yang ditemukan menggunakan angka putaran mendapatkan hadiah untuk putaran berikut.

function processGetRewardForRelayRound2(
        IStakingPool.RewardRound[] reward_rounds,
        uint32 round_num,
        uint32 code_version,
        uint32 relay_round_code_version
    ) external override onlyRoot

Parameter:

Nama
Jenis
Deskripsi

reward_rounds

RewardRound[]

Daftar hadiah putaran

round_num

uint32

Jumlah putaran

code_version

uint32

Versi kode saat ini

relay_round_code_version

uint32

Versi kode putaran pengganti

receiveRewardForRelayRound

Meningkatkan saldo hadiah untuk putaran tertentu.

function receiveRewardForRelayRound(
        uint32 relay_round_num, uint32 reward_round_num, uint128 reward
    ) external override onlyRelayRound(relay_round_num)

Parameter:

Nama
Jenis
Deskripsi

relay_round_num

uint32

Jumlah putaran pengganti

reward_round_num

uint32

Jumlah hadiah putaran

reward

uint128

Jumlah untuk meningkatkan saldo hadiah

Acara yang dikeluarkan:

  • RelayRoundRewardClaimed

processLinkRelayAccounts

Menautkan akun pengganti dengan mengatur relay_ton_pubkey dan relay_eth_address

function processLinkRelayAccounts(
        uint256 ton_pubkey,
        uint160 eth_address,
        bool confirm,
        uint32 code_version
    ) external override onlyRoot

Parameter:

Nama
Jenis
Deskripsi

ton_pubkey

uint256

Kunci umum akun ton

eth_address

uint160

Alamat akun ethereum

confirm

bool

Benar jika kedua akun ton and eth terkonfirmasi, saah jika tidak

code_version

uint32

Versi kode saat ini

Acara yang dikeluarkan:

  • RelayKeysUpdated

  • TonPubkeyConfirmed

  • EthAddressConfirmed

confirmTonAccount

Mengatur ton_pubkey_confirmed ke benar.

function confirmTonAccount() external

Acara yang dikeluarkan:

  • TonPubkeyConfirmed

processConfirmEthAccount

Mengatur eth_address_confirmed ke benar dan mentransfer sisa bensin ke send_gas_to.

function processConfirmEthAccount(uint160 eth_address, address send_gas_to) external override onlyRoot

Parameter:

Nama
Jenis
Deskripsi

eth_address

uint160

Alamat akun ethereum

send_gas_to

address

Alamat untuk mengirimkan sisa bensin

Acara yang dikeluarkan:

  • EthAddressConfirmed

becomeRelayNextRound

Memproses pengganti untuk putaran berikutnya di pool taruhan.

function becomeRelayNextRound() external onlyRelay

processBecomeRelayNextRound2

Berdasarkan alamat pemilihan mengajukan keanggotaan.

function processBecomeRelayNextRound2(
        uint32 round_num,
        uint32 lock_time,
        uint128 min_deposit,
        uint32 code_version,
        uint32 election_code_version
    ) external override onlyRoot

Parameter:

Nama
Jenis
Deskripsi

round_num

uint32

Jumlah putaran

lock_time

uint32

Durasi penguncian token

min_deposit

uint128

Jumlah minimal deposito pengganti

code_version

uint32

Versi kode saat ini

election_code_version

uint32

Versi kode pemilihan

relayMembershipRequestAccepted

Mengunci pengganti selama 30 hari.

function relayMembershipRequestAccepted(
        uint32 round_num, uint128 tokens, uint256 ton_pubkey, uint160 eth_addr, uint32 lock_time
    ) external override onlyElection(round_num)

Parameter:

Nama
Jenis
Deskripsi

round_num

uint32

Jumlah putaran

tokens

uint128

ton_pubkey

uint256

Kunci umum akun ton

eth_addr

uint160

Alamat akun ethereum

lock_time

uint32

Durasi penguncian token

Acara yang dikeluarkan:

  • RelayMembershipRequested

processWithdraw

Mensinkronkan hadiah, mengurangi jumlah saldo token untuk menarik dan menyelesaikan penarikan di pool taruhan.

function processWithdraw(
        uint128 _tokens_to_withdraw,
        IStakingPool.RewardRound[] reward_rounds,
        bool emergency,
        address send_gas_to,
        uint32 code_version
    ) external override onlyRoot

Parameter:

Nama
Jenis
Deskripsi

_tokens_to_withdraw

uint128

Jumlah token untuk ditarik

reward_rounds

RewardRound[]

Daftar hadiah putaran

emergency

bool

Benar jika penarikan darurat, salah jika tidak

send_gas_to

address

Alamat untuk mengirimkan sisa bensin

code_version

uint32

Versi kode saat ini

withdrawTons

Mentransfer ke pengguna semua sisa ton.

function withdrawTons() external override onlyRoot

Last updated