Introspecção de instruções

Resumo

O sysvar Instructions (Sysvar1nstructions1111111111111111111111111) permite que um programa leia todas as instruções de nível superior na transação atual por índice ou deslocamento relativo. Instruções internas de CPI não são acessíveis.

Sysvar Instructions

Os programas podem inspecionar todas as instruções de nível superior na transação atual através do sysvar Instructions (Sysvar1nstructions1111111111111111111111111). Isto permite que um programa inspecione as outras instruções na mesma transação, por exemplo, para verificar se uma instrução específica está na mesma transação que a instrução que está a executar.

O sysvar Instructions contém apenas instruções de nível superior da mensagem de transação. Instruções internas invocadas via CPI não são acessíveis através deste sysvar.

O sysvar instructions não é acedido através da trait normal Sysvar. Em vez disso, é acedido através de funções livres na crate solana_instructions_sysvar.

Os dados do sysvar são serializados com um layout binário personalizado:

DeslocamentoTamanhoDescrição
02num_instructions (u16, little-endian)
22 * NDeslocamentos de byte para cada instrução (u16 cada)
variavariaDados de instrução serializados
últimos 2 bytes2Índice da instrução atual (u16, little-endian)

Cada instrução serializada contém: o número de contas (u16), as contas como entradas de 33 bytes (1 byte de flag + pubkey de 32 bytes), o ID do programa (32 bytes), o comprimento dos dados (u16) e os bytes de dados brutos.

Funções principais:

Is this page helpful?

Índice

Editar Página

Gerenciado por

© 2026 Fundação Solana.
Todos os direitos reservados.
Conecte-se
  • Blog