Introspekcja instrukcji

Podsumowanie

Sysvar Instructions (Sysvar1nstructions1111111111111111111111111) pozwala programowi odczytać wszystkie instrukcje najwyższego poziomu w bieżącej transakcji według indeksu lub względnego przesunięcia. Wewnętrzne instrukcje CPI są niedostępne.

Sysvar Instructions

Programy mogą analizować wszystkie instrukcje najwyższego poziomu w bieżącej transakcji za pomocą sysvar Instructions (Sysvar1nstructions1111111111111111111111111). Pozwala to programowi sprawdzić inne instrukcje w tej samej transakcji, na przykład w celu weryfikacji, czy określona instrukcja znajduje się w tej samej transakcji, w której wykonywana jest bieżąca instrukcja.

Sysvar Instructions zawiera tylko instrukcje najwyższego poziomu z komunikatu transakcji. Wewnętrzne instrukcje wywoływane przez CPI są niedostępne przez ten sysvar.

Sysvar instructions nie jest dostępny przez standardowy trait Sysvar. Zamiast tego korzysta się z wolnych funkcji w solana_instructions_sysvar crate.

Dane sysvar są serializowane w niestandardowym układzie binarnym:

PrzesunięcieRozmiarOpis
02num_instructions (u16, little-endian)
22 * NBajtowe przesunięcia dla każdej instrukcji (po 2 bajty, u16)
zmiennyzmiennyZserializowane dane instrukcji
ostatnie 2 bajty2Indeks bieżącej instrukcji (u16, little-endian)

Każda zserializowana instrukcja zawiera: liczbę kont (u16), konta jako 33-bajtowe wpisy (1 bajt flagi + 32-bajtowy pubkey), program ID (32 bajty), długość danych (u16) oraz surowe bajty danych.

Kluczowe funkcje:

Is this page helpful?

Spis treści

Edytuj stronę

Zarządzane przez

© 2026 Solana Foundation.
Wszelkie prawa zastrzeżone.
Bądź na bieżąco