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
Manajemen Akun
Airdrop, Balance, GetAccount, SetAccount, NewAccount, program
Transaksi
Kirim / simulasikan transaksi legacy + berversi, TxOutcome
Konfigurasi
Pengalih untuk sigverify, pemeriksaan blockhash, riwayat, batas log, program default
Waktu & Sysvar
WarpToSlot, Clock, Rent, EpochSchedule, EpochRewards, SlotHashes, SlotHistory, StakeHistory
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
| Metode | Deskripsi |
|---|---|
Airdrop(pubkey, lamports) error | Mendanai sebuah akun |
Balance(pubkey) (uint64, bool, error) | Saldo SOL; bool menunjukkan apakah akun ada |
GetAccount(pubkey) *Account | Mengambil handle akun (nil jika tidak ada) |
SetAccount(pubkey, *Account) error | Menyimpan 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
| Metode | Deskripsi |
|---|---|
AddProgram(programID, bytes) error | Memuat program dari bytes |
AddProgramFromFile(programID, path) error | Memuat program dari file .so |
AddProgramWithLoader(programID, bytes, loaderID) error | Memuat dengan loader tertentu (lanjutan) |
Transaksi
| Metode | Deskripsi |
|---|---|
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() error | Maju ke blockhash baru |
GetTransaction(signature) *TxOutcome | Mencari 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
| Metode | Deskripsi |
|---|---|
SetSigverify(bool) error | Mengaktifkan / menonaktifkan verifikasi tanda tangan |
Sigverify() (bool, error) | Membaca pengaturan saat ini |
SetBlockhashCheck(bool) error | Mengaktifkan / menonaktifkan validasi blockhash |
SetTransactionHistory(int) error | Kapasitas riwayat transaksi di memori (0 menonaktifkan) |
SetLogBytesLimit(int) error | Batas byte log per transaksi (negatif = tidak terbatas) |
SetLamports(uint64) error | Lamport default untuk akun airdrop-pool baru |
SetSysvars() error | Mereset sysvar ke default |
SetBuiltins() error | Memuat ulang program bawaan |
SetDefaultPrograms() error | Memuat ulang SPL Token, Memo, dll. |
SetPrecompiles() error | Mengaktifkan precompile ed25519 / secp256k1 |
WithNativeMints() error | Seed mint wrapped-SOL |
SetFeatureSet(*FeatureSet) error | Memasang set feature gate |
SetComputeBudget(ComputeBudget) error | Menerapkan compute budget |
ComputeBudget() (ComputeBudget, bool, error) | Membaca budget saat ini (bool menunjukkan "diatur secara eksplisit") |
Waktu dan Sysvar
| Metode | Deskripsi |
|---|---|
WarpToSlot(slot uint64) error | Melompat ke slot tertentu |
Clock() (Clock, error) | Membaca sysvar Clock |
SetClock(Clock) error | Menimpa sysvar Clock |
Rent() (Rent, error) | Membaca sysvar Rent |
SetRent(Rent) error | Menimpa sysvar Rent |
EpochSchedule() (EpochSchedule, error) | Membaca sysvar EpochSchedule |
SetEpochSchedule(EpochSchedule) error | Menimpa sysvar EpochSchedule |
EpochRewards() (EpochRewards, error) | Membaca sysvar EpochRewards |
SetEpochRewards(EpochRewards) error | Menimpa sysvar EpochRewards |
LastRestartSlot() (uint64, error) | Membaca last-restart-slot |
SetLastRestartSlot(uint64) error | Mengatur last-restart-slot |
SlotHashes() ([]SlotHash, error) | Membaca sysvar SlotHashes |
SetSlotHashes([]SlotHash) error | Menimpa sysvar SlotHashes |
SlotHistory() (*SlotHistory, error) | Membaca sysvar SlotHistory (handle) |
SetSlotHistory(*SlotHistory) error | Menimpa sysvar SlotHistory |
StakeHistory() ([]StakeHistoryItem, error) | Membaca sysvar StakeHistory |
SetStakeHistory([]StakeHistoryItem) error | Menimpa sysvar StakeHistory |
Utilitas
| Metode | Deskripsi |
|---|---|
litesvm.Version() string | String versi yang dilaporkan oleh crate Rust litesvm yang mendasarinya |
Is this page helpful?