C# Класс Org.Mozilla.Classfile.SuperBlock

A super block is defined as a contiguous chunk of code with a single entry point and multiple exit points (therefore ending in an unconditional jump or the end of the method).
A super block is defined as a contiguous chunk of code with a single entry point and multiple exit points (therefore ending in an unconditional jump or the end of the method). This is used to emulate OpenJDK's compiler, which outputs stack map frames at the start of every super block except the method start.
Показать файл Открыть проект Примеры использования класса

Открытые методы

Метод Описание
ToString ( ) : string

Приватные методы

Метод Описание
GetEnd ( ) : int
GetIndex ( ) : int
GetLocals ( ) : int[]
GetStack ( ) : int[]
GetStart ( ) : int
GetTrimmedLocals ( ) : int[]

Get a copy of the super block's locals without any trailing TOP types.

Get a copy of the super block's locals without any trailing TOP types. This is useful for actual writing stack maps; during the computation of stack map types, all local arrays have the same size; the max locals for the method. In addition, DOUBLE and LONG types have trailing TOP types because they occupy two words. For writing purposes, these are not useful.

IsInQueue ( ) : bool
IsInitialized ( ) : bool
Merge ( int locals, int localsTop, int stack, int stackTop, ConstantPool pool ) : bool
MergeState ( int current, int incoming, int size, ConstantPool pool ) : bool

Merge an operand stack or local variable array with incoming state.

Merge an operand stack or local variable array with incoming state. They are treated the same way; by this point, it should already be ensured that the array sizes are the same, which is the only additional constraint that is imposed on merging operand stacks (the local variable array is always the same size).

SetInQueue ( bool b ) : void
SetInitialized ( bool b ) : void
SuperBlock ( int index, int start, int end, int initialLocals ) : System

Описание методов

ToString() публичный Метод

public ToString ( ) : string
Результат string