Referensi API

Dokumentasi API lengkap untuk litesvm-go. Nama metode mencerminkan builder Rust LiteSVM sedapat mungkin; pasangan getter / setter menggunakan konvensi Go yang sama (Clock / SetClock, Rent / SetRent, ...).

Bagian API

Referensi Cepat

Pengaturan Handle

import (
litesvm "github.com/LiteSVM/litesvm-go"
solana "github.com/gagliardetto/solana-go"
)
svm, err := litesvm.New()
if err != nil {
// handle error
}
defer svm.Close()

Manajemen Akun

MetodeDeskripsi
Airdrop(pubkey, lamports) errorMendanai sebuah akun
Balance(pubkey) (uint64, bool, error)Saldo SOL; bool menunjukkan apakah akun ada
GetAccount(pubkey) *AccountMengambil handle akun (nil jika tidak ada)
SetAccount(pubkey, *Account) errorMenyimpan status akun secara langsung
MinimumBalanceForRentExemption(dataLen int) (uint64, error)Menghitung minimum bebas rent
NewAccount(lamports, data, owner, executable, rentEpoch) (*Account, error)Membangun handle Account untuk SetAccount

Manajemen Program

MetodeDeskripsi
AddProgram(programID, bytes) errorMemuat program dari bytes
AddProgramFromFile(programID, path) errorMemuat program dari file .so
AddProgramWithLoader(programID, bytes, loaderID) errorMemuat dengan loader tertentu (lanjutan)

Transaksi

MetodeDeskripsi
SendLegacyTransaction(txBytes) (*TxOutcome, error)Mengeksekusi transaksi legacy
SendVersionedTransaction(txBytes) (*TxOutcome, error)Mengeksekusi transaksi v0+
SimulateLegacyTransaction(txBytes) (*TxOutcome, error)Simulasi tanpa perubahan status
SimulateVersionedTransaction(txBytes) (*TxOutcome, error)Simulasi v0+ tanpa perubahan status
LatestBlockhash() (solana.Hash, error)Blockhash saat ini
ExpireBlockhash() errorMaju ke blockhash baru
GetTransaction(signature) *TxOutcomeMencari transaksi dalam riwayat (nil jika tidak ada)
litesvm.BuildTransferTx(payerSeed, to, lamports, blockhash) ([]byte, error)Helper pengujian yang membangun transfer legacy bertanda tangan tanpa mengimpor solana-go

Konfigurasi

MetodeDeskripsi
SetSigverify(bool) errorMengaktifkan / menonaktifkan verifikasi tanda tangan
Sigverify() (bool, error)Membaca pengaturan saat ini
SetBlockhashCheck(bool) errorMengaktifkan / menonaktifkan validasi blockhash
SetTransactionHistory(int) errorKapasitas riwayat transaksi di memori (0 menonaktifkan)
SetLogBytesLimit(int) errorBatas byte log per transaksi (negatif = tidak terbatas)
SetLamports(uint64) errorLamport default untuk akun airdrop-pool baru
SetSysvars() errorMereset sysvar ke default
SetBuiltins() errorMemuat ulang program bawaan
SetDefaultPrograms() errorMemuat ulang SPL Token, Memo, dll.
SetPrecompiles() errorMengaktifkan precompile ed25519 / secp256k1
WithNativeMints() errorSeed mint wrapped-SOL
SetFeatureSet(*FeatureSet) errorMemasang set feature gate
SetComputeBudget(ComputeBudget) errorMenerapkan compute budget
ComputeBudget() (ComputeBudget, bool, error)Membaca budget saat ini (bool menunjukkan "diatur secara eksplisit")

Waktu dan Sysvar

MetodeDeskripsi
WarpToSlot(slot uint64) errorMelompat ke slot tertentu
Clock() (Clock, error)Membaca sysvar Clock
SetClock(Clock) errorMenimpa sysvar Clock
Rent() (Rent, error)Membaca sysvar Rent
SetRent(Rent) errorMenimpa sysvar Rent
EpochSchedule() (EpochSchedule, error)Membaca sysvar EpochSchedule
SetEpochSchedule(EpochSchedule) errorMenimpa sysvar EpochSchedule
EpochRewards() (EpochRewards, error)Membaca sysvar EpochRewards
SetEpochRewards(EpochRewards) errorMenimpa sysvar EpochRewards
LastRestartSlot() (uint64, error)Membaca last-restart-slot
SetLastRestartSlot(uint64) errorMengatur last-restart-slot
SlotHashes() ([]SlotHash, error)Membaca sysvar SlotHashes
SetSlotHashes([]SlotHash) errorMenimpa sysvar SlotHashes
SlotHistory() (*SlotHistory, error)Membaca sysvar SlotHistory (handle)
SetSlotHistory(*SlotHistory) errorMenimpa sysvar SlotHistory
StakeHistory() ([]StakeHistoryItem, error)Membaca sysvar StakeHistory
SetStakeHistory([]StakeHistoryItem) errorMenimpa sysvar StakeHistory

Utilitas

MetodeDeskripsi
litesvm.Version() stringString versi yang dilaporkan oleh crate Rust litesvm yang mendasarinya

Is this page helpful?

Daftar Isi

Edit Halaman
© 2026 Yayasan Solana. Semua hak dilindungi.