Individual bytecode instructions are represented in Prolog as terms whose functor is the name of the instruction and whose arguments are its parsed operands.
For example, an aload instruction is represented as the term
aload(N), which includes the index
N that is the operand of the instruction.
The instructions as a whole are represented as a list of terms of the form:
The order of instructions in this list must be the same as in the
A few instructions have operands that are constant pool entries representing fields, methods, and dynamic call sites. In the constant pool, a field is represented by a