DAORoot

propose

Membuat pengajuan DAO baru.

function propose(
        uint32 answerId,
        TonAction[] tonActions,
        EthAction[] ethActions,
        string description
    ) override public

Parameter:

NamaJenisDeskripsi

answerId

uint32

tonActions

TonAction[]

Daftar tindakan everscale

ethActions

EthAction[]

Daftar tindakan ethereum

description

string

Deskripsi pengajuan

deployProposal

Meluncurkan kontrak Pengajuan (membuat contoh kontrak Platform baru).

function deployProposal(
        uint32 nonce,
        address accountOwner,
        TvmCell proposalData
    ) override public onlyStakingAccount(accountOwner)onProposalDeployed
NamaJenisDeskripsi

nonce

uint32

accountOwner

address

Alamat pemilik akun

proposalData

TvmCell

Informasi tentang pengajuan, termasuk id jawaban, deskripsi, daftar tindakan TON dan EVM

Acara yang dikeluarkan:

  • ProposalCreated

onProposalSucceeded

Metode panggilan kembali setelah pengajuan berhasil.

function onProposalSucceeded(
        uint32 proposalId,
        address proposer,
        TonAction[] tonActions,
        EthAction[] ethActions
    ) override public onlyProposal(proposalId)

Parameter:

NamaJenisDeskripsi

proposalId

uint32

Id pengajuan

proposer

address

Alamat pembuat pengajuan

tonActions

TonAction[]

Daftar tindakan everscale

ethActions

EthAction[]

Daftar tindakan ethereum

Acara yang dikeluarkan:

  • ExecutingTonActions

executeTonAction

Melakukan transfer berdasarkan payload tindakan.

function executeTonAction(TonAction action) private pure inline

Parameter:

NamaJenisDeskripsi

action

TonAction

Tindakan everscale untuk dijalankan

executeEthActions

Berdasarkan daftar tindakan mengisi data yang diperlukan, menambahkan tindakan ke chain tindakan, menuliskan kodenya ke data acara dan meluncurkan acara.

function executeEthActions(address proposer, EthAction[] actions) private view inline

Parameter:

NamaJenisDeskripsi

proposer

address

Alamat pembuat pengajuan

actions

EthAction[]

Tindakan ethereum untuk dijalankan

calcTonActionsValue

Menghitung nilai total tindakan di Everscale.

function calcTonActionsValue(TonAction[] actions) public pure returns (uint128 totalValue)

Parameter:

NamaJenisDeskripsi

actions

TonAction[]

Daftar tindakan untuk dihitung

Nilai hasil:

NamaJenisDeskripsi

totalValue

uint128

Nilai total daftar tindakan

calcEthActionsValue

Menghitung nilai todal tindakan di Ethereum.

function calcEthActionsValue(
        EthAction[] actions
    ) public view returns (uint128 totalValue)

Parameter:

NamaJenisDeskripsi

actions

EthAction[]

Daftar tindakan untuk dihitung

Nilai hasil:

NamaJenisDeskripsi

totalValue

uint128

Nilai total daftar tindakan

_buildProposalInitialData Membangun data awal untuk Pengajuan

fungsi _buildProposalInitialData(uint32 proposalId) private inline pure returns (TvmCell)

Parameter:

NamaJenisDeskripsi

proposalId

uint32

Id pengajuan

Nilai hasil:

JenisDeskripsi

TvmCell

Data awal pengajuan dalam format sel

_buildStakingAccountInitialData

Membangun data awal untuk akun Taruhan

function _buildStakingAccountInitialData(address accountOwner) private inline pure returns (TvmCell)

Parameter:

NamaJenisDeskripsi

accountOwner

address

Alamat pemilik akun taruhan

Nilai hasil:

JenisDeskripsi

TvmCell

Data awal akun taruhan dalam format sel

_buildInitData

Membangun data awal untuk jenis Platform yang ditentukan.

function _buildInitData(PlatformType platformType, TvmCell initialData) private view returns (TvmCell)

Parameter:

NamaJenisDeskripsi

platformType

PlatformType

Jenis platform

initialData

TvmCell

Data awal pengajuan dalam format sel

Nilai hasil:

JenisDeskripsiDeskripsi

TvmCell

Data awal direpresentasikan dalam format sel

Jenis platform

requestUpgradeProposal

Membuat permintaan untuk meningkatkan pengajuan untuk versi berbeda.

function requestUpgradeProposal(
        uint16 currentVersion,
        address sendGasTo,
        uint32 proposalId
    ) override public onlyProposal(proposalId)

Parameter:

NamaJenisDeskripsi

currentVersion

uint16

Versi pengajuan saat ini

sendGasTo

address

Alamat untuk mengirimkan bensin yang dikeluarkan

proposalId

uint32

Id pengajuan

setStakingRoot

Mengatur alamat root taruhan dari param dan mentransfer sisa bensin ke admin

function setStakingRoot(address newStakingRoot) override public onlyAdmin

Parameter:

NamaJenisDeskripsi

newStakingRoot

address

Alamat root taruhan yang baru

Acara yang dikeluarkan:

  • StakingRootUpdated

transferAdmin

Mentransfer peran admin ke alamat lain.

function transferAdmin(address newAdmin) override public onlyAdmin

Parameter:

NamaJenisDeskripsi

newAdmin

address

Alamat admin baru

Acara yang dikeluarkan:

  • AdminTransferAccepted

Last updated