توثيق API الكامل لـ litesvm-go. تعكس أسماء الدوال مكتبة Rust
LiteSVM حيثما أمكن؛ وتتبع أزواج getter/setter اصطلاح Go نفسه
(Clock / SetClock، Rent / SetRent، ...).
أقسام API
إدارة الحسابات
Airdrop، Balance، GetAccount، SetAccount، NewAccount، البرامج
المعاملات
إرسال / محاكاة المعاملات القديمة والإصدارات الحديثة، TxOutcome
الإعدادات
خيارات التحكم في sigverify وفحص blockhash والسجل وحدود السجلات والبرامج الافتراضية
الوقت ومتغيرات النظام
WarpToSlot، Clock، Rent، EpochSchedule، EpochRewards، SlotHashes، SlotHistory، StakeHistory
مرجع سريع
إعداد المقبض
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()
إدارة الحسابات
| الدالة | الوصف |
|---|---|
Airdrop(pubkey, lamports) error | تمويل حساب |
Balance(pubkey) (uint64, bool, error) | رصيد SOL؛ يشير bool إلى ما إذا كان الحساب موجوداً |
GetAccount(pubkey) *Account | استرداد مقبض الحساب (nil إذا لم يكن موجوداً) |
SetAccount(pubkey, *Account) error | تخزين حالة الحساب مباشرةً |
MinimumBalanceForRentExemption(dataLen int) (uint64, error) | حساب الحد الأدنى للرصيد المعفى من rent |
NewAccount(lamports, data, owner, executable, rentEpoch) (*Account, error) | إنشاء مقبض Account لاستخدامه مع SetAccount |
إدارة البرامج
| الدالة | الوصف |
|---|---|
AddProgram(programID, bytes) error | تحميل برنامج من بيانات ثنائية |
AddProgramFromFile(programID, path) error | تحميل برنامج من ملف .so |
AddProgramWithLoader(programID, bytes, loaderID) error | تحميل بموجب loader محدد (متقدم) |
المعاملات
| الدالة | الوصف |
|---|---|
SendLegacyTransaction(txBytes) (*TxOutcome, error) | تنفيذ معاملة قديمة |
SendVersionedTransaction(txBytes) (*TxOutcome, error) | تنفيذ معاملة v0 أو أحدث |
SimulateLegacyTransaction(txBytes) (*TxOutcome, error) | محاكاة بدون تغيير الحالة |
SimulateVersionedTransaction(txBytes) (*TxOutcome, error) | محاكاة v0 أو أحدث بدون تغيير الحالة |
LatestBlockhash() (solana.Hash, error) | blockhash الحالي |
ExpireBlockhash() error | التقدم إلى blockhash جديد |
GetTransaction(signature) *TxOutcome | البحث عن معاملة في السجل (nil إذا لم توجد) |
litesvm.BuildTransferTx(payerSeed, to, lamports, blockhash) ([]byte, error) | دالة مساعدة للاختبار تبني معاملة تحويل قديمة موقّعة دون الحاجة إلى solana-go |
الإعدادات
| الدالة | الوصف |
|---|---|
SetSigverify(bool) error | تفعيل / تعطيل التحقق من التوقيع |
Sigverify() (bool, error) | قراءة الإعداد الحالي |
SetBlockhashCheck(bool) error | تفعيل / تعطيل التحقق من blockhash |
SetTransactionHistory(int) error | سعة سجل المعاملات في الذاكرة (0 لتعطيله) |
SetLogBytesLimit(int) error | حد حجم السجل بالبايت لكل معاملة (سالب = غير محدود) |
SetLamports(uint64) error | الـ lamports الافتراضية لحسابات مجمع airdrop الجديدة |
SetSysvars() error | إعادة تعيين متغيرات النظام إلى قيمها الافتراضية |
SetBuiltins() error | إعادة تحميل البرامج المدمجة |
SetDefaultPrograms() error | إعادة تحميل SPL Token وMemo وغيرها |
SetPrecompiles() error | تفعيل precompiles الخاصة بـ ed25519 / secp256k1 |
WithNativeMints() error | تهيئة seed لـ wrapped-SOL mint |
SetFeatureSet(*FeatureSet) error | تثبيت مجموعة feature gate |
SetComputeBudget(ComputeBudget) error | تطبيق ميزانية حوسبة |
ComputeBudget() (ComputeBudget, bool, error) | قراءة الميزانية الحالية (bool يشير إلى "تم تعيينها صراحةً") |
الوقت ومتغيرات النظام
| الدالة | الوصف |
|---|---|
WarpToSlot(slot uint64) error | القفز إلى slot محدد |
Clock() (Clock, error) | قراءة متغير نظام Clock |
SetClock(Clock) error | الكتابة فوق متغير نظام Clock |
Rent() (Rent, error) | قراءة متغير نظام Rent |
SetRent(Rent) error | الكتابة فوق متغير نظام Rent |
EpochSchedule() (EpochSchedule, error) | قراءة متغير نظام EpochSchedule |
SetEpochSchedule(EpochSchedule) error | الكتابة فوق متغير نظام EpochSchedule |
EpochRewards() (EpochRewards, error) | قراءة متغير نظام EpochRewards |
SetEpochRewards(EpochRewards) error | الكتابة فوق متغير نظام EpochRewards |
LastRestartSlot() (uint64, error) | قراءة last-restart-slot |
SetLastRestartSlot(uint64) error | تعيين last-restart-slot |
SlotHashes() ([]SlotHash, error) | قراءة متغير نظام SlotHashes |
SetSlotHashes([]SlotHash) error | الكتابة فوق متغير نظام SlotHashes |
SlotHistory() (*SlotHistory, error) | قراءة متغير نظام SlotHistory (مقبض) |
SetSlotHistory(*SlotHistory) error | الكتابة فوق متغير نظام SlotHistory |
StakeHistory() ([]StakeHistoryItem, error) | قراءة متغير نظام StakeHistory |
SetStakeHistory([]StakeHistoryItem) error | الكتابة فوق متغير نظام StakeHistory |
الأدوات المساعدة
| الدالة | الوصف |
|---|---|
litesvm.Version() string | سلسلة الإصدار التي يُبلّغ عنها كريت Rust الأساسي litesvm |
Is this page helpful?