RPNXCortado
C++23 JVM class-file, bytecode, validation, and JAR toolkit
Loading...
Searching...
No Matches
rpnx::cortado::code_attribute Struct Reference

A fully typed Code attribute. More...

#include <attributes.hpp>

Public Attributes

constant_pool_index name_index
 UTF-8 constant containing Code.
 
std::uint16_t max_stack {}
 Maximum operand-stack depth in JVM slots.
 
std::uint16_t max_locals {}
 Size of the local-variable array in JVM slots.
 
code_body code
 Exact decoded instructions or a tooling-mode raw payload.
 
std::vector< exception_handlerexception_table
 Handlers in encoded search order.
 
std::vector< code_nested_attributeattributes
 Typed nested attributes in encoded order.
 

Detailed Description

A fully typed Code attribute.

The code body, exception table, and nested debug/verifier attributes use byte offsets into the same code array. Strict validation requires every applicable offset to identify an instruction boundary.

Definition at line 706 of file attributes.hpp.

Member Data Documentation

◆ attributes

std::vector< code_nested_attribute > rpnx::cortado::code_attribute::attributes

Typed nested attributes in encoded order.

Definition at line 713 of file attributes.hpp.

◆ code

code_body rpnx::cortado::code_attribute::code

Exact decoded instructions or a tooling-mode raw payload.

Definition at line 711 of file attributes.hpp.

◆ exception_table

std::vector< exception_handler > rpnx::cortado::code_attribute::exception_table

Handlers in encoded search order.

Definition at line 712 of file attributes.hpp.

◆ max_locals

std::uint16_t rpnx::cortado::code_attribute::max_locals {}

Size of the local-variable array in JVM slots.

Definition at line 710 of file attributes.hpp.

◆ max_stack

std::uint16_t rpnx::cortado::code_attribute::max_stack {}

Maximum operand-stack depth in JVM slots.

Definition at line 709 of file attributes.hpp.

◆ name_index

constant_pool_index rpnx::cortado::code_attribute::name_index

UTF-8 constant containing Code.

Definition at line 708 of file attributes.hpp.


The documentation for this struct was generated from the following file: