package instructions
Common instruction sequences.
- Alphabetic
- By Inheritance
- instructions
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
case class
ALOAD(lvIndex: Int) extends LoadLocalVariableInstruction with ALoadInstruction with ExplicitLocalVariableIndex with Product with Serializable
Load reference from local variable.
-
trait
ALoadInstruction extends LoadLocalVariableInstruction
Load reference from local variable.
-
case class
ANEWARRAY(componentType: ReferenceType) extends CreateNewOneDimensionalArrayInstruction with Product with Serializable
Create new array of reference.
-
case class
ASTORE(lvIndex: Int) extends AStoreInstruction with ExplicitLocalVariableIndex with Product with Serializable
Store reference into local variable.
-
abstract
class
AStoreInstruction extends StoreLocalVariableInstruction
An instruction that stores the top-most stack value with computational type reference value OR return address in a local variable.
-
abstract
class
AddInstruction extends StackBasedArithmeticInstruction with AlwaysSucceedingStackBasedBinaryArithmeticInstruction
An instruction that adds two primitive values.
- trait AlwaysSucceedingStackBasedBinaryArithmeticInstruction extends StackBasedArithmeticInstruction with StackBasedBinaryArithmeticInstruction
-
trait
ArithmeticInstruction extends Instruction with NoLabels
An arithmetic instruction as defined by the JVM specification.
-
abstract
class
ArrayAccessInstruction extends Instruction with ConstantLengthInstruction with NoLabels
An instruction that loads or stores a value in an array.
-
abstract
class
ArrayLoadInstruction extends ArrayAccessInstruction
An instruction that loads a value stored in an array.
-
abstract
class
ArrayStoreInstruction extends ArrayAccessInstruction
An instruction that stores a value in an array.
-
class
BIPUSH extends LoadConstantInstruction[Int]
Push byte.
Push byte.
- Note
BIPUSH instructions are inherently cached; two BIPUSH instructions that push the same value are always reference identical.
-
abstract
class
BitwiseInstruction extends StackBasedArithmeticInstruction with AlwaysSucceedingStackBasedBinaryArithmeticInstruction
An instruction that performs a manipulation of a value's bits.
- case class BranchoffsetOutOfBoundsException(labeledInstruction: LabeledInstruction) extends RuntimeException with Product with Serializable
-
case class
CHECKCAST(referenceType: ReferenceType) extends Instruction with ConstantLengthInstruction with NoLabels with Product with Serializable
Check whether object is of given type.
-
abstract
class
ComparisonInstruction extends StackBasedArithmeticInstruction with AlwaysSucceedingStackBasedBinaryArithmeticInstruction
An instruction that compares two primitive values.
- trait CompoundConditionalBranchInstruction extends ConditionalBranchInstruction with CompoundConditionalBranchInstructionLike
-
trait
CompoundConditionalBranchInstructionLike extends ConditionalBranchInstructionLike
Common super class of all compound conditional branch instructions (switch instructions!).
- trait ConditionalBranchInstruction extends ControlTransferInstruction with ConditionalBranchInstructionLike
-
trait
ConditionalBranchInstructionLike extends ControlTransferInstructionLike
Common super class of all conditional branch instructions.
- trait ConstantLengthInstruction extends ConstantLengthInstructionLike with Instruction
-
trait
ConstantLengthInstructionLike extends InstructionLike
Common interface of all instructions that have a fixed length (including operands!).
Common interface of all instructions that have a fixed length (including operands!).
Hence, instructions that may be modified by wide or where the length depends on the position in the code array are never
ConstantLengthInstructions. - trait ControlTransferInstruction extends Instruction with ControlTransferInstructionLike
-
trait
ControlTransferInstructionLike extends InstructionLike
Common superclass of all control transfer instructions.
-
abstract
class
CreateNewArrayInstruction extends Instruction with ConstantLengthInstruction with NoLabels
An instruction to create a new array.
-
abstract
class
CreateNewOneDimensionalArrayInstruction extends CreateNewArrayInstruction
An instruction to create a new one-dimensional array.
- trait DConstInstruction extends LoadConstantInstruction[Double] with ImplicitValue
-
case class
DEFAULT_INVOKEDYNAMIC(bootstrapMethod: BootstrapMethod, name: String, methodDescriptor: MethodDescriptor) extends InvocationInstruction with INVOKEDYNAMIC with Product with Serializable
Represents an
invokedynamicinstruction where we have no further, immediately usable information regarding the target.Represents an
invokedynamicinstruction where we have no further, immediately usable information regarding the target.- bootstrapMethod
This is the bootstrap method that needs to be executed in order to resolve the instruction's target.
- name
This is the name of the method that this
invokedynamicinstruction intends to invoke.- methodDescriptor
This is the descriptor belonging to the instruction's intended invocation target.
-
case class
DLOAD(lvIndex: Int) extends LoadLocalVariableInstruction with DLoadInstruction with ExplicitLocalVariableIndex with Product with Serializable
Load double from local variable.
-
trait
DLoadInstruction extends LoadLocalVariableInstruction
Load double from local variable.
-
case class
DSTORE(lvIndex: Int) extends StoreLocalVariableInstruction with DStoreInstruction with ExplicitLocalVariableIndex with Product with Serializable
Store double into local variable.
-
trait
DStoreInstruction extends StoreLocalVariableInstruction
Store long into local variable.
-
abstract
class
DivideInstruction extends StackBasedArithmeticInstruction with StackBasedBinaryArithmeticInstruction
An instruction that divides two primitive values.
-
trait
ExplicitLocalVariableIndex extends Instruction
Trait that can be mixed in if the local variable index of a load or store instruction ((a,i,l,...)load/store_X) is not predefined as part of the instruction.
-
sealed abstract
class
ExpressionResultLocation extends AnyRef
Characterizes the result of evaluating an expression with respect to the place where the result is stored.
- trait FConstInstruction extends LoadConstantInstruction[Float] with ImplicitValue
-
case class
FLOAD(lvIndex: Int) extends LoadLocalVariableInstruction with FLoadInstruction with ExplicitLocalVariableIndex with Product with Serializable
Load float from local variable.
-
trait
FLoadInstruction extends LoadLocalVariableInstruction
Load float from local variable.
-
case class
FSTORE(lvIndex: Int) extends StoreLocalVariableInstruction with FStoreInstruction with ExplicitLocalVariableIndex with Product with Serializable
Store float into local variable.
-
trait
FStoreInstruction extends StoreLocalVariableInstruction
Store float into local variable.
-
abstract
class
FieldAccess extends Instruction with ConstantLengthInstruction with NoLabels
Instructions that access a class' field.
-
abstract
class
FieldReadAccess extends FieldAccess
Common superclass of all field read instructions.
-
abstract
class
FieldWriteAccess extends FieldAccess
Common superclass of all FieldWriteAccess instructions.
-
abstract
class
FloatingPointDivideInstruction extends DivideInstruction
An instruction that divides two primitive floating point values.
-
abstract
class
FloatingPointRemainderInstruction extends RemainderInstruction
An instruction that calculates the remainder of two primitive floating point values.
-
case class
GETFIELD(declaringClass: ObjectType, name: String, fieldType: FieldType) extends FieldReadAccess with Product with Serializable
Fetch field from object.
Fetch field from object.
NOTE
Getting an Array's length is translated to the special
arraylengthinstruction. E.g., in the following case:Object[] os = ...; os.lengthos.lengthis determined using the specialarraylengthinstruction.- See also
org.opalj.br.instructions.FieldAccess for additional pattern matching support.
-
case class
GETSTATIC(declaringClass: ObjectType, name: String, fieldType: FieldType) extends FieldReadAccess with Product with Serializable
Getstatic field from class.
Getstatic field from class.
- See also
org.opalj.br.instructions.FieldAccess for additional pattern matching support.
- case class GOTO(branchoffset: Int) extends GotoInstruction with GOTOLike with Product with Serializable
-
trait
GOTOLike extends GotoInstructionLike
Branch always.
- case class GOTO_W(branchoffset: Int) extends GotoInstruction with GOTO_WLike with Product with Serializable
-
trait
GOTO_WLike extends GotoInstructionLike
Branch always.
- trait GotoInstruction extends UnconditionalBranchInstruction with GotoInstructionLike
-
trait
GotoInstructionLike extends UnconditionalBranchInstructionLike
Super class of the Goto instructions.
- trait IConstInstruction extends LoadConstantInstruction[Int] with ImplicitValue
- trait IF0Instruction[T <: IF0Instruction[T]] extends SimpleConditionalBranchInstruction[T] with IF0InstructionLike
-
trait
IF0InstructionLike extends SimpleConditionalBranchInstructionLike
Common superclass of all instructions that perform a comparison of an integer value against the constant value
0. - trait IFACMPInstruction[T <: IFACMPInstruction[T]] extends SimpleConditionalBranchInstruction[T] with IFACMPInstructionLike
-
trait
IFACMPInstructionLike extends SimpleConditionalBranchInstructionLike
Common superclass of all instructions that perform a conditional jump based on the comparison of reference values.
- case class IFEQ(branchoffset: Int) extends IF0Instruction[IFEQ] with IFEQLike with Product with Serializable
-
trait
IFEQLike extends IF0InstructionLike
Branch if int comparison with zero succeeds; succeeds if and only if value = 0.
- case class IFGE(branchoffset: Int) extends IF0Instruction[IFGE] with IFGELike with Product with Serializable
-
trait
IFGELike extends IF0InstructionLike
Branch if int comparison with zero succeeds; succeeds if and only if value ≥ 0.
- case class IFGT(branchoffset: Int) extends IF0Instruction[IFGT] with IFGTLike with Product with Serializable
-
trait
IFGTLike extends IF0InstructionLike
Branch if int comparison with zero succeeds; succeeds if and only if value > 0.
- trait IFICMPInstruction[T <: IFICMPInstruction[T]] extends SimpleConditionalBranchInstruction[T] with IFICMPInstructionLike
-
trait
IFICMPInstructionLike extends SimpleConditionalBranchInstructionLike
Common superclass of all instructions that perform a conditional jump based on the comparison of two integer values.
- case class IFLE(branchoffset: Int) extends IF0Instruction[IFLE] with IFLELike with Product with Serializable
-
trait
IFLELike extends IF0InstructionLike
Branch if int comparison with zero succeeds; succeeds if and only if value ≤ 0.
- case class IFLT(branchoffset: Int) extends IF0Instruction[IFLT] with IFLTLike with Product with Serializable
-
trait
IFLTLike extends IF0InstructionLike
Branch if int comparison with zero succeeds; succeeds if and only if value < 0.
- case class IFNE(branchoffset: Int) extends IF0Instruction[IFNE] with IFNELike with Product with Serializable
-
trait
IFNELike extends IF0InstructionLike
Branch if int comparison with zero succeeds; succeeds if and only if value ≠ 0.
- case class IFNONNULL(branchoffset: Int) extends IFXNullInstruction[IFNONNULL] with IFNONNULLLike with Product with Serializable
-
trait
IFNONNULLLike extends IFXNullInstructionLike
Branch if reference is not null.
- case class IFNULL(branchoffset: Int) extends IFXNullInstruction[IFNULL] with IFNULLLike with Product with Serializable
-
trait
IFNULLLike extends IFXNullInstructionLike
Branch if reference is null.
- trait IFXNullInstruction[T <: IFXNullInstruction[T]] extends SimpleConditionalBranchInstruction[T] with IFXNullInstructionLike
-
trait
IFXNullInstructionLike extends SimpleConditionalBranchInstructionLike
Common superclass of all instructions that perform a conditional jump based on an explicit comparison with
null. - case class IF_ACMPEQ(branchoffset: Int) extends IFACMPInstruction[IF_ACMPEQ] with IF_ACMPEQLike with Product with Serializable
-
trait
IF_ACMPEQLike extends IFACMPInstructionLike
Branch if reference comparison succeeds; succeeds if and only if value1 == value2.
- case class IF_ACMPNE(branchoffset: Int) extends IFACMPInstruction[IF_ACMPNE] with IF_ACMPNELike with Product with Serializable
-
trait
IF_ACMPNELike extends IFACMPInstructionLike
Branch if reference comparison succeeds; succeeds if and only if value1 ≠ value2.
- case class IF_ICMPEQ(branchoffset: Int) extends IFICMPInstruction[IF_ICMPEQ] with IF_ICMPEQLike with Product with Serializable
-
trait
IF_ICMPEQLike extends IFICMPInstructionLike
Branch if int comparison succeeds; succeeds if and only if value1 = value2.
- case class IF_ICMPGE(branchoffset: Int) extends IFICMPInstruction[IF_ICMPGE] with IF_ICMPGELike with Product with Serializable
-
trait
IF_ICMPGELike extends IFICMPInstructionLike
Branch if int comparison succeeds; succeeds if and only if value1 ≥ value2.
- case class IF_ICMPGT(branchoffset: Int) extends IFICMPInstruction[IF_ICMPGT] with IF_ICMPGTLike with Product with Serializable
-
trait
IF_ICMPGTLike extends IFICMPInstructionLike
Branch if int comparison succeeds; succeeds if and only if value1 > value2.
- case class IF_ICMPLE(branchoffset: Int) extends IFICMPInstruction[IF_ICMPLE] with IF_ICMPLELike with Product with Serializable
-
trait
IF_ICMPLELike extends IFICMPInstructionLike
Branch if int comparison succeeds; succeeds if and only if value1 ≤ value2.
- case class IF_ICMPLT(branchoffset: Int) extends IFICMPInstruction[IF_ICMPLT] with IF_ICMPLTLike with Product with Serializable
-
trait
IF_ICMPLTLike extends IFICMPInstructionLike
Branch if int comparison succeeds; succeeds if and only if value1 < value2.
- case class IF_ICMPNE(branchoffset: Int) extends IFICMPInstruction[IF_ICMPNE] with IF_ICMPNELike with Product with Serializable
-
trait
IF_ICMPNELike extends IFICMPInstructionLike
Branch if int comparison succeeds; succeeds if and only if value1 ≠ value2.
-
case class
IINC(lvIndex: Int, constValue: Int) extends ArithmeticInstruction with Product with Serializable
Increment local variable by constant.
-
case class
ILOAD(lvIndex: Int) extends LoadLocalVariableInstruction with ILoadInstruction with ExplicitLocalVariableIndex with Product with Serializable
Load int from local variable.
-
trait
ILoadInstruction extends LoadLocalVariableInstruction
Load int from local variable.
-
case class
INSTANCEOF(referenceType: ReferenceType) extends Instruction with ConstantLengthInstruction with NoLabels with Product with Serializable
Determine if object is of given type.
-
trait
INVOKEDYNAMIC extends InvocationInstruction
Represents an
invokedynamicinstruction. -
case class
INVOKEINTERFACE(declaringClass: ObjectType, name: String, methodDescriptor: MethodDescriptor) extends VirtualMethodInvocationInstruction with Product with Serializable
Invoke interface method.
-
case class
INVOKESPECIAL(declaringClass: ObjectType, isInterface: Boolean, name: String, methodDescriptor: MethodDescriptor) extends NonVirtualMethodInvocationInstruction with Product with Serializable
Invoke instance method; special handling for superclass, private, and instance initialization method invocations.
-
case class
INVOKESTATIC(declaringClass: ObjectType, isInterface: Boolean, name: String, methodDescriptor: MethodDescriptor) extends NonVirtualMethodInvocationInstruction with Product with Serializable
Invoke a class (static) method.
-
case class
INVOKEVIRTUAL(declaringClass: ReferenceType, name: String, methodDescriptor: MethodDescriptor) extends VirtualMethodInvocationInstruction with Product with Serializable
Invoke instance method; dispatch based on class.
-
case class
ISTORE(lvIndex: Int) extends StoreLocalVariableInstruction with IStoreInstruction with ExplicitLocalVariableIndex with Product with Serializable
Store int into local variable.
- trait IStoreInstruction extends StoreLocalVariableInstruction
-
trait
ImplicitLocalVariableIndex extends ConstantLengthInstruction
Trait that is mixed in if the local variable index of a load or store instruction ((a,i,l,...)load/store_X) is predefined.
-
trait
ImplicitValue extends ConstantLengthInstruction
Trait that can be mixed in if the value of a instruction is implicitly defined.
-
trait
Instruction extends InstructionLike
Common superclass of all instructions which are in their final form.
-
sealed
trait
InstructionLabel extends AnyRef
A label that identifies an instruction.
A label that identifies an instruction.
InstructionLabels have to support structural equality (They are used as keys in maps).
- trait InstructionLabelFactory extends AnyRef
-
trait
InstructionLike extends AnyRef
Common superclass of all instructions.
Common superclass of all instructions.
In general, we distinguish between a finally assembled Instruction where all jump targets are resolved to concrete branchoffsets and LabeledInstructions where the jump target(s) are identified using symbols which need to replaced by concrete branchoffsets before a class file object can be generated.
-
abstract
class
IntegerDivideInstruction extends DivideInstruction
An instruction that divides two primitive integer values (long or in).
-
abstract
class
IntegerRemainderInstruction extends RemainderInstruction
An instruction that the remainder of an integer values (long or in).
-
abstract
class
InvocationInstruction extends Instruction with ConstantLengthInstruction with NoLabels
An instruction that "invokes" something.
An instruction that "invokes" something. This can, e.g., be the invocation of a method or – using INCOMPLETE_INVOKEDYNAMIC – the read of a field value.
- case class JSR(branchoffset: Int) extends JSRInstruction with JSRLike with Product with Serializable
- trait JSRInstruction extends UnconditionalBranchInstruction with JSRInstructionLike
-
trait
JSRInstructionLike extends UnconditionalBranchInstructionLike
Jump subroutine.
-
trait
JSRLike extends JSRInstructionLike
Jump subroutine.
- case class JSR_W(branchoffset: Int) extends JSRInstruction with JSR_WLike with Product with Serializable
-
trait
JSR_WLike extends JSRInstructionLike
Jump subroutine.
- trait LConstInstruction extends LoadConstantInstruction[Long] with ImplicitValue
-
sealed abstract
class
LDC[T] extends LoadConstantInstruction[T]
Push item from runtime constant pool.
-
sealed abstract
class
LDC2_W[T] extends LoadConstantInstruction[T]
Push long or double from runtime constant pool.
-
sealed abstract
class
LDC_W[T] extends LoadConstantInstruction[T]
Push item from runtime constant pool.
-
case class
LLOAD(lvIndex: Int) extends LoadLocalVariableInstruction with LLoadInstruction with ExplicitLocalVariableIndex with Product with Serializable
Load long from local variable.
-
trait
LLoadInstruction extends LoadLocalVariableInstruction
Load long from local variable.
-
case class
LOOKUPSWITCH(defaultOffset: Int, npairs: RefArray[IntIntPair]) extends CompoundConditionalBranchInstruction with LOOKUPSWITCHLike with Product with Serializable
Access jump table by key match and jump.
Access jump table by key match and jump.
- npairs
A list of tuples where the first value is the match/case value and the second value is the jump offset.
-
trait
LOOKUPSWITCHLike extends CompoundConditionalBranchInstructionLike
Access jump table by key match and jump.
-
case class
LSTORE(lvIndex: Int) extends StoreLocalVariableInstruction with LStoreInstruction with ExplicitLocalVariableIndex with Product with Serializable
Store long into local variable.
-
trait
LStoreInstruction extends StoreLocalVariableInstruction
Store long into local variable.
- case class LabeledGOTO(branchTarget: InstructionLabel) extends LabeledUnconditionalBranchInstruction with GOTOLike with Product with Serializable
- case class LabeledGOTO_W(branchTarget: InstructionLabel) extends LabeledUnconditionalBranchInstruction with GOTO_WLike with Product with Serializable
- case class LabeledIFEQ(branchTarget: InstructionLabel) extends LabeledSimpleConditionalBranchInstruction with IFEQLike with Product with Serializable
- case class LabeledIFGE(branchTarget: InstructionLabel) extends LabeledSimpleConditionalBranchInstruction with IFGELike with Product with Serializable
- case class LabeledIFGT(branchTarget: InstructionLabel) extends LabeledSimpleConditionalBranchInstruction with IFGTLike with Product with Serializable
- case class LabeledIFLE(branchTarget: InstructionLabel) extends LabeledSimpleConditionalBranchInstruction with IFLELike with Product with Serializable
- case class LabeledIFLT(branchTarget: InstructionLabel) extends LabeledSimpleConditionalBranchInstruction with IFLTLike with Product with Serializable
- case class LabeledIFNE(branchTarget: InstructionLabel) extends LabeledSimpleConditionalBranchInstruction with IFNELike with Product with Serializable
- case class LabeledIFNONNULL(branchTarget: InstructionLabel) extends LabeledSimpleConditionalBranchInstruction with IFNONNULLLike with Product with Serializable
- case class LabeledIFNULL(branchTarget: InstructionLabel) extends LabeledSimpleConditionalBranchInstruction with IFNULLLike with Product with Serializable
- case class LabeledIF_ACMPEQ(branchTarget: InstructionLabel) extends LabeledSimpleConditionalBranchInstruction with IF_ACMPEQLike with Product with Serializable
- case class LabeledIF_ACMPNE(branchTarget: InstructionLabel) extends LabeledSimpleConditionalBranchInstruction with IF_ACMPNELike with Product with Serializable
- case class LabeledIF_ICMPEQ(branchTarget: InstructionLabel) extends LabeledSimpleConditionalBranchInstruction with IF_ICMPEQLike with Product with Serializable
- case class LabeledIF_ICMPGE(branchTarget: InstructionLabel) extends LabeledSimpleConditionalBranchInstruction with IF_ICMPGELike with Product with Serializable
- case class LabeledIF_ICMPGT(branchTarget: InstructionLabel) extends LabeledSimpleConditionalBranchInstruction with IF_ICMPGTLike with Product with Serializable
- case class LabeledIF_ICMPLE(branchTarget: InstructionLabel) extends LabeledSimpleConditionalBranchInstruction with IF_ICMPLELike with Product with Serializable
- case class LabeledIF_ICMPLT(branchTarget: InstructionLabel) extends LabeledSimpleConditionalBranchInstruction with IF_ICMPLTLike with Product with Serializable
- case class LabeledIF_ICMPNE(branchTarget: InstructionLabel) extends LabeledSimpleConditionalBranchInstruction with IF_ICMPNELike with Product with Serializable
-
trait
LabeledInstruction extends InstructionLike
An instruction where the jump targets are identified using
Symbolsassociated with the instructions which should be executed in case of a jump.An instruction where the jump targets are identified using
Symbolsassociated with the instructions which should be executed in case of a jump. The labels areInstructionLabels; however, the eDSL provides implicits to faciliate the usage of standard scala Symbols as labels. - case class LabeledJSR(branchTarget: InstructionLabel) extends LabeledUnconditionalBranchInstruction with JSRLike with Product with Serializable
- case class LabeledJSR_W(branchTarget: InstructionLabel) extends LabeledUnconditionalBranchInstruction with JSRLike with Product with Serializable
-
case class
LabeledLOOKUPSWITCH(defaultBranchTarget: InstructionLabel, npairs: RefArray[(Int, InstructionLabel)]) extends LabeledInstruction with LOOKUPSWITCHLike with Product with Serializable
Represents a LOOKUPSWITCH instruction with unresolved jump targets represented as
Symbols. -
trait
LabeledSimpleConditionalBranchInstruction extends LabeledSingleJumpTargetInstruction with SimpleConditionalBranchInstructionLike
An conditional branch instruction where the jump target is identified using a
Symbol. -
trait
LabeledSingleJumpTargetInstruction extends LabeledInstruction
An instruction where the jump target is identified using a
Symbolassociated with the instruction which should be executed in case of a jump.An instruction where the jump target is identified using a
Symbolassociated with the instruction which should be executed in case of a jump. The label is a standard ScalaSymbol. -
case class
LabeledTABLESWITCH(defaultBranchTarget: InstructionLabel, low: Int, high: Int, jumpTargets: RefArray[InstructionLabel]) extends LabeledInstruction with TABLESWITCHLike with Product with Serializable
Represents a TABLESWITCH instruction with unresolved jump targets represented as
Symbols. -
trait
LabeledUnconditionalBranchInstruction extends LabeledSingleJumpTargetInstruction with UnconditionalBranchInstructionLike
Super class of all labeled bytecode instructions that always jump to a specific target instruction.
-
final
case class
LoadClass(value: ReferenceType) extends LDC[ReferenceType] with Product with Serializable
- Note
To match LoadClass and LoadClass_W instructions you can use LDCClass.
- final case class LoadClass_W(value: ReferenceType) extends LDC_W[ReferenceType] with Product with Serializable
-
abstract
class
LoadConstantInstruction[T] extends Instruction with ConstantLengthInstruction with NoLabels
Puts a constant value on the stack.
- final case class LoadDouble(value: Double) extends LDC2_W[Double] with Product with Serializable
-
final
case class
LoadFloat(value: Float) extends LDC[Float] with Product with Serializable
- Note
To match LoadFloat and LoadFloat_W instructions you can use LDCFloat.
- final case class LoadFloat_W(value: Float) extends LDC_W[Float] with Product with Serializable
- final case class LoadInt(value: Int) extends LDC[Int] with Product with Serializable
- final case class LoadInt_W(value: Int) extends LDC_W[Int] with Product with Serializable
-
abstract
class
LoadLocalVariableInstruction extends Instruction with NoLabels
An instruction that loads a local variable and puts it on top of the stack.
- final case class LoadLong(value: Long) extends LDC2_W[Long] with Product with Serializable
-
final
case class
LoadMethodHandle(value: MethodHandle) extends LDC[MethodHandle] with Product with Serializable
- Note
To match LoadMethodHandle and LoadMethodHandle_W instructions you can use LDCMethodHandle.
- final case class LoadMethodHandle_W(value: MethodHandle) extends LDC_W[MethodHandle] with Product with Serializable
-
final
case class
LoadMethodType(value: MethodDescriptor) extends LDC[MethodDescriptor] with Product with Serializable
- Note
To match LoadMethodType and LoadMethodType_W instructions you can use LDCMethodType.
- final case class LoadMethodType_W(value: MethodDescriptor) extends LDC_W[MethodDescriptor] with Product with Serializable
-
final
case class
LoadString(value: String) extends LDC[String] with Product with Serializable
- Note
To match LoadString and LoadString_W instructions you can use LDCString.
-
final
case class
LoadString_W(value: String) extends LDC_W[String] with Product with Serializable
- Note
To match LoadString and LoadString_W instructions you can use LDCString.
-
case class
MULTIANEWARRAY(arrayType: ArrayType, dimensions: Int) extends CreateNewArrayInstruction with Product with Serializable
Create new multidimensional array.
Create new multidimensional array.
- arrayType
The type of the array to be created.
- dimensions
The number of dimensions of the specified array that should be initialized.
-
abstract
class
MethodInvocationInstruction extends InvocationInstruction
An instruction that invokes another method (does not consider invokedynamic instructions).
-
abstract
class
MultiplyInstruction extends StackBasedArithmeticInstruction with AlwaysSucceedingStackBasedBinaryArithmeticInstruction
An instruction that multiplies two primitive values.
-
case class
NEW(objectType: ObjectType) extends Instruction with ConstantLengthInstruction with NoLabels with Product with Serializable
Create new object.
-
sealed abstract
class
NEWARRAY extends CreateNewOneDimensionalArrayInstruction
Create new array handler.
- case class NamedLabel(name: String) extends InstructionLabel with Product with Serializable
-
abstract
class
NegateInstruction extends StackBasedArithmeticInstruction with UnaryArithmeticInstruction
An instruction that negates a primitive value.
-
abstract
class
NonVirtualMethodInvocationInstruction extends MethodInvocationInstruction
Invocation of a method where the target method is statically resolved.
-
abstract
class
NumericConversionInstruction extends Instruction with ConstantLengthInstruction with NoLabels
An instruction that converts between a numeric value of primitive type A and primitive type B.
-
case class
PCLabel(pc: Int) extends InstructionLabel with Product with Serializable
A
Labelused to specify the "original" pc of an instruction.A
Labelused to specify the "original" pc of an instruction.PCLabels are assigned to all (labeled) instructions when we create the labeled code based on a method's bytecode. (I.e., when we instrument existing code.) -
case class
PUTFIELD(declaringClass: ObjectType, name: String, fieldType: FieldType) extends FieldWriteAccess with Product with Serializable
Set field in object.
Set field in object.
- See also
org.opalj.br.instructions.FieldAccess for additional pattern matching support.
-
case class
PUTSTATIC(declaringClass: ObjectType, name: String, fieldType: FieldType) extends FieldWriteAccess with Product with Serializable
Set static field in class.
Set static field in class.
- See also
org.opalj.br.instructions.FieldAccess for additional pattern matching support.
-
trait
PopInstruction extends StackManagementInstruction
Pops the (two) top operand stack value(s).
-
trait
PrimitiveArrayAccess extends AnyRef
Trait that can be mixed in if the value of a instruction is implicitly defined.
-
abstract
class
PrimitiveArrayStoreInstruction extends ArrayStoreInstruction
An instruction that stores a primitive value in an array of primitive values.
-
case class
RET(lvIndex: Int) extends ControlTransferInstruction with ConstantLengthInstruction with NoLabels with Product with Serializable
Return from subroutine.
Return from subroutine.
- Note
A RET instruction always returns to an instruction immediately following a JSR(_W) instruction.
- case class Register(index: Int) extends ExpressionResultLocation with Product with Serializable
-
abstract
class
RemainderInstruction extends StackBasedArithmeticInstruction with StackBasedBinaryArithmeticInstruction
An instruction that calculates the remainder of a value.
-
abstract
class
ReturnInstruction extends Instruction with ConstantLengthInstruction with NoLabels
An instruction that returns from a method.
-
abstract
class
ReturnValueInstruction extends ReturnInstruction
An instruction that returns a value calculated by the method.
- case class RewriteLabel extends InstructionLabel with Product with Serializable
-
case class
SIPUSH(value: Int) extends LoadConstantInstruction[Int] with Product with Serializable
Push short.
-
abstract
class
ShiftInstruction extends StackBasedArithmeticInstruction with AlwaysSucceedingStackBasedBinaryArithmeticInstruction
An instruction that adds two primitive values.
- trait SimpleBranchInstruction extends SimpleBranchInstructionLike with ConstantLengthInstruction with ControlTransferInstruction
- trait SimpleBranchInstructionLike extends ControlTransferInstructionLike with ConstantLengthInstructionLike
- trait SimpleConditionalBranchInstruction[T <: SimpleConditionalBranchInstruction[T]] extends ConditionalBranchInstruction with SimpleBranchInstruction with SimpleConditionalBranchInstructionLike
-
trait
SimpleConditionalBranchInstructionLike extends ConditionalBranchInstructionLike with SimpleBranchInstructionLike
Common superclass of all instructions that perform a conditional jump.
-
abstract
class
StackBasedArithmeticInstruction extends ArithmeticInstruction with ConstantLengthInstruction
An arithmetic instruction that takes all its operands from the stack and, hence, the constant length "1"; i.e., only one byte is needed to encode the instruction.
-
trait
StackBasedBinaryArithmeticInstruction extends StackBasedArithmeticInstruction
Implemented by all arithmetic instructions that have two (runtime-dependent) operands.
Implemented by all arithmetic instructions that have two (runtime-dependent) operands.
- Note
IINC is considered a special binary instruction since it does not operate on operand stack values!
-
abstract
class
StackManagementInstruction extends Instruction with ConstantLengthInstruction with NoLabels
An instruction that directly manipulates the operand stack by popping, swapping or duplicating values.
-
abstract
class
StoreLocalVariableInstruction extends Instruction with NoLabels
An instruction that stores the top-most stack value in a local variable.
-
abstract
class
SubtractInstruction extends StackBasedArithmeticInstruction with AlwaysSucceedingStackBasedBinaryArithmeticInstruction
An instruction that subtracts two primitive values.
-
abstract
class
SynchronizationInstruction extends Instruction with ConstantLengthInstruction with NoLabels
A synchronization related instruction (MonitorEnter|MonitorExit).
- case class TABLESWITCH(defaultOffset: Int, low: Int, high: Int, jumpOffsets: IntArray) extends CompoundConditionalBranchInstruction with TABLESWITCHLike with Product with Serializable
-
trait
TABLESWITCHLike extends CompoundConditionalBranchInstructionLike
Access jump table by index and jump.
-
trait
UnaryArithmeticInstruction extends ArithmeticInstruction
Implemented by all arithmetic instructions that have one (runtime-dependent) operand; i.e., the NegateInstructions.
- trait UnconditionalBranchInstruction extends SimpleBranchInstruction with UnconditionalBranchInstructionLike
-
trait
UnconditionalBranchInstructionLike extends SimpleBranchInstructionLike
Super class of all bytecode instructions that always jump to a specific target instruction.
-
abstract
class
VirtualMethodInvocationInstruction extends MethodInvocationInstruction
Common superclass of all Invoke instructions that require virtual method resolution.
Value Members
- implicit final val TypeConversionInstructions: TypeConversionFactory[Array[Instruction]] { ... /* 41 definitions in type refinement */ }
-
object
AALOAD extends ArrayLoadInstruction with Product with Serializable
Load reference from array.
-
object
AASTORE extends ArrayStoreInstruction with Product with Serializable
Store into reference array.
-
object
ACONST_NULL extends LoadConstantInstruction[Null] with ImplicitValue with Product with Serializable
Push null.
- object ALOAD extends Serializable
-
object
ALOAD_0 extends LoadLocalVariableInstruction with ALoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load reference from local variable with index 0.
-
object
ALOAD_1 extends LoadLocalVariableInstruction with ALoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load reference from local variable with index 1.
-
object
ALOAD_2 extends LoadLocalVariableInstruction with ALoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load reference from local variable with index 2.
-
object
ALOAD_3 extends LoadLocalVariableInstruction with ALoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load reference from local variable with index 3.
- object ALoadInstruction
-
object
ANEWARRAY extends Serializable
General information and factory methods.
-
object
ARETURN extends ReturnValueInstruction with Product with Serializable
Return reference from method.
-
object
ARRAYLENGTH extends Instruction with ConstantLengthInstruction with NoLabels with Product with Serializable
Get length of array.
- object ASTORE extends Serializable
-
object
ASTORE_0 extends AStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store reference into local variable with index 0.
-
object
ASTORE_1 extends AStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store reference into local variable with index 1.
-
object
ASTORE_2 extends AStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store reference into local variable with index 2.
-
object
ASTORE_3 extends AStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store reference into local variable with index 3.
- object AStoreInstruction
-
object
ATHROW extends Instruction with NoLabels with Product with Serializable
Throw exception or error.
-
object
ArithmeticInstruction
Defines values and methods common to arithmetic instructions.
-
object
ArrayLoadInstruction
Defines common properties of instructions that load values stored in arrays.
-
object
BALOAD extends ArrayLoadInstruction with PrimitiveArrayAccess with Product with Serializable
Load byte or boolean from array.
-
object
BASTORE extends PrimitiveArrayStoreInstruction with PrimitiveArrayAccess with Product with Serializable
Store into byte or boolean array.
- object BIPUSH
-
object
CALOAD extends ArrayLoadInstruction with PrimitiveArrayAccess with Product with Serializable
Load char from array.
-
object
CASTORE extends PrimitiveArrayStoreInstruction with PrimitiveArrayAccess with Product with Serializable
Store into char array.
-
object
CHECKCAST extends Serializable
General information and factory methods.
-
object
ClassFileFactory
Provides helper methods to facilitate the generation of classes.
Provides helper methods to facilitate the generation of classes. In particular, functionality to create transparent proxy classes is provided.
- object CreateNewArrayInstruction
-
object
D2F extends NumericConversionInstruction with Product with Serializable
Convert double to float.
-
object
D2I extends NumericConversionInstruction with Product with Serializable
Convert double to int.
-
object
D2L extends NumericConversionInstruction with Product with Serializable
Convert double to long.
-
object
DADD extends AddInstruction with Product with Serializable
Add double.
-
object
DALOAD extends ArrayLoadInstruction with PrimitiveArrayAccess with Product with Serializable
Load double from array.
-
object
DASTORE extends PrimitiveArrayStoreInstruction with PrimitiveArrayAccess with Product with Serializable
Store into double array.
-
object
DCMPG extends ComparisonInstruction with Product with Serializable
Compare double.
-
object
DCMPL extends ComparisonInstruction with Product with Serializable
Compare double.
-
object
DCONST_0 extends LoadConstantInstruction[Double] with DConstInstruction with Product with Serializable
Push the double constant 0.0 onto the operand stack.
-
object
DCONST_1 extends LoadConstantInstruction[Double] with DConstInstruction with Product with Serializable
Push the double constant 1.0 onto the operand stack.
- object DConstInstruction
-
object
DDIV extends FloatingPointDivideInstruction with Product with Serializable
Divide double.
- object DLOAD extends Serializable
-
object
DLOAD_0 extends LoadLocalVariableInstruction with DLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load double from local variable with index 0.
-
object
DLOAD_1 extends LoadLocalVariableInstruction with DLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load double from local variable with index 1.
-
object
DLOAD_2 extends LoadLocalVariableInstruction with DLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load double from local variable with index 2.
-
object
DLOAD_3 extends LoadLocalVariableInstruction with DLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load double from local variable with index 3.
- object DLoadInstruction
-
object
DMUL extends MultiplyInstruction with Product with Serializable
Multiply double.
-
object
DNEG extends NegateInstruction with Product with Serializable
Negate double.
-
object
DREM extends FloatingPointRemainderInstruction with Product with Serializable
Remainder double.
-
object
DRETURN extends ReturnValueInstruction with Product with Serializable
Return double from method.
- object DSTORE extends Serializable
-
object
DSTORE_0 extends StoreLocalVariableInstruction with DStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store double into local variable with index 0.
-
object
DSTORE_1 extends StoreLocalVariableInstruction with DStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store double into local variable with index 1.
-
object
DSTORE_2 extends StoreLocalVariableInstruction with DStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store double into local variable with index 2.
-
object
DSTORE_3 extends StoreLocalVariableInstruction with DStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store double into local variable with index 3.
-
object
DSUB extends SubtractInstruction with Product with Serializable
Subtract double.
- object DStoreInstruction
-
object
DUP extends StackManagementInstruction with Product with Serializable
Duplicate the top operand stack value.
-
object
DUP2 extends StackManagementInstruction with Product with Serializable
Duplicate the top one or two operand stack values.
-
object
DUP2_X1 extends StackManagementInstruction with Product with Serializable
Duplicate the top one or two operand stack values and insert two or three values down.
-
object
DUP2_X2 extends StackManagementInstruction with Product with Serializable
Duplicate the top one or two operand stack values and insert two, three, or four values down.
-
object
DUP_X1 extends StackManagementInstruction with Product with Serializable
Duplicate the top operand stack value and insert two values down.
-
object
DUP_X2 extends StackManagementInstruction with Product with Serializable
Duplicate the top operand stack value and insert two or three values down.
- object ExplicitLocalVariableIndex
-
object
F2D extends NumericConversionInstruction with Product with Serializable
Convert float to double.
-
object
F2I extends NumericConversionInstruction with Product with Serializable
Convert float to int.
-
object
F2L extends NumericConversionInstruction with Product with Serializable
Convert float to long.
-
object
FADD extends AddInstruction with Product with Serializable
Add float.
-
object
FALOAD extends ArrayLoadInstruction with PrimitiveArrayAccess with Product with Serializable
Load float from array.
-
object
FASTORE extends PrimitiveArrayStoreInstruction with PrimitiveArrayAccess with Product with Serializable
Store into float array.
-
object
FCMPG extends ComparisonInstruction with Product with Serializable
Compare float.
-
object
FCMPL extends ComparisonInstruction with Product with Serializable
Compare float.
-
object
FCONST_0 extends LoadConstantInstruction[Float] with FConstInstruction with Product with Serializable
Push the float constant 0.0 onto the operand stack.
-
object
FCONST_1 extends LoadConstantInstruction[Float] with FConstInstruction with Product with Serializable
Push the float constant 1.0 onto the operand stack.
-
object
FCONST_2 extends LoadConstantInstruction[Float] with FConstInstruction with Product with Serializable
Push the float constant 2.0 onto the operand stack.
- object FConstInstruction
-
object
FDIV extends FloatingPointDivideInstruction with Product with Serializable
Divide float.
- object FLOAD extends Serializable
-
object
FLOAD_0 extends LoadLocalVariableInstruction with FLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load float from local variable with index 0.
-
object
FLOAD_1 extends LoadLocalVariableInstruction with FLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load float from local variable with index 1.
-
object
FLOAD_2 extends LoadLocalVariableInstruction with FLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load float from local variable with index 2.
-
object
FLOAD_3 extends LoadLocalVariableInstruction with FLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load float from local variable with index 3.
- object FLoadInstruction
-
object
FMUL extends MultiplyInstruction with Product with Serializable
Multiply float.
-
object
FNEG extends NegateInstruction with Product with Serializable
Negate float.
-
object
FREM extends FloatingPointRemainderInstruction with Product with Serializable
Remainder float.
-
object
FRETURN extends ReturnValueInstruction with Product with Serializable
Return float from method.
- object FSTORE extends Serializable
-
object
FSTORE_0 extends StoreLocalVariableInstruction with FStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store float into local variable with index 0.
-
object
FSTORE_1 extends StoreLocalVariableInstruction with FStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store float into local variable with index 1.
-
object
FSTORE_2 extends StoreLocalVariableInstruction with FStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store float into local variable with index 2.
-
object
FSTORE_3 extends StoreLocalVariableInstruction with FStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store float into local variable with index 3.
-
object
FSUB extends SubtractInstruction with Product with Serializable
Subtract float.
- object FStoreInstruction
-
object
FieldAccess
Defines an extractor to facilitate pattern matching on field access instructions.
-
object
FieldReadAccess
Defines an extractor to facilitate pattern matching on field read access instructions.
-
object
FieldWriteAccess
Defines an extractor to facilitate pattern matching on field write access instructions.
-
object
GETFIELD extends Serializable
General information and factory methods.
-
object
GETSTATIC extends Serializable
General information and factory methods.
-
object
GOTO extends Serializable
Defines constants and factory methods.
-
object
GOTO_W extends Serializable
Defines constants and factory methods.
- object GotoInstruction
-
object
I2B extends NumericConversionInstruction with Product with Serializable
Convert int to byte.
-
object
I2C extends NumericConversionInstruction with Product with Serializable
Convert int to char.
-
object
I2D extends NumericConversionInstruction with Product with Serializable
Convert int to double.
-
object
I2F extends NumericConversionInstruction with Product with Serializable
Convert int to float.
-
object
I2L extends NumericConversionInstruction with Product with Serializable
Convert int to long.
-
object
I2S extends NumericConversionInstruction with Product with Serializable
Convert int to short.
-
object
IADD extends AddInstruction with Product with Serializable
Add int.
-
object
IALOAD extends ArrayLoadInstruction with PrimitiveArrayAccess with Product with Serializable
Load int from array.
-
object
IAND extends BitwiseInstruction with Product with Serializable
Boolean AND int.
-
object
IASTORE extends PrimitiveArrayStoreInstruction with PrimitiveArrayAccess with Product with Serializable
Store into int array.
-
object
ICONST_0 extends LoadConstantInstruction[Int] with IConstInstruction with Product with Serializable
Push int constant value 0.
-
object
ICONST_1 extends LoadConstantInstruction[Int] with IConstInstruction with Product with Serializable
Push int constant value 1.
-
object
ICONST_2 extends LoadConstantInstruction[Int] with IConstInstruction with Product with Serializable
Push int constant value 2.
-
object
ICONST_3 extends LoadConstantInstruction[Int] with IConstInstruction with Product with Serializable
Push int constant value 3.
-
object
ICONST_4 extends LoadConstantInstruction[Int] with IConstInstruction with Product with Serializable
Push int constant value 4.
-
object
ICONST_5 extends LoadConstantInstruction[Int] with IConstInstruction with Product with Serializable
Push int constant value 5.
-
object
ICONST_M1 extends LoadConstantInstruction[Int] with IConstInstruction with Product with Serializable
Push int constant.
- object IConstInstruction
-
object
IDIV extends IntegerDivideInstruction with Product with Serializable
Divide int.
- object IF0Instruction
- object IFACMPInstruction
-
object
IFEQ extends InstructionLabelFactory with Serializable
Defines constants and factory methods.
-
object
IFGE extends Serializable
Defines constants and factory methods.
-
object
IFGT extends Serializable
Defines constants and factory methods.
- object IFICMPInstruction
-
object
IFLE extends Serializable
Defines constants and factory methods.
-
object
IFLT extends Serializable
Defines constants and factory methods.
-
object
IFNE extends Serializable
Defines constants and factory methods.
-
object
IFNONNULL extends Serializable
Defines constants and factory methods.
-
object
IFNULL extends Serializable
Defines constants and factory methods.
- object IFXNullInstruction
-
object
IF_ACMPEQ extends Serializable
Defines constants and factory methods.
-
object
IF_ACMPNE extends Serializable
Defines constants and factory methods.
-
object
IF_ICMPEQ extends Serializable
Defines constants and factory methods.
- object IF_ICMPGE extends Serializable
-
object
IF_ICMPGT extends Serializable
Defines constants and factory methods.
-
object
IF_ICMPLE extends Serializable
Defines constants and factory methods.
-
object
IF_ICMPLT extends Serializable
Defines constants and factory methods.
-
object
IF_ICMPNE extends Serializable
Defines constants and factory methods.
- object IINC extends Serializable
- object ILOAD extends Serializable
-
object
ILOAD_0 extends LoadLocalVariableInstruction with ILoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load int from local variable with index 0.
-
object
ILOAD_1 extends LoadLocalVariableInstruction with ILoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load int from local variable with index 1.
-
object
ILOAD_2 extends LoadLocalVariableInstruction with ILoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load int from local variable with index 2.
-
object
ILOAD_3 extends LoadLocalVariableInstruction with ILoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load int from local variable with index 3.
-
object
IMUL extends MultiplyInstruction with Product with Serializable
Multiply int.
-
object
INCOMPLETE_INVOKEDYNAMIC extends InvocationInstruction with INVOKEDYNAMIC with Product with Serializable
Represents an "incomplete" invoke dynamic instruction.
Represents an "incomplete" invoke dynamic instruction. Here, incomplete refers to the fact that not all information is yet available because it is not yet loaded. In case of
invokedynamicinstructions it is necessary to read a class file's attributes which are read in at the very end. This requires to resolve INVOKEDYNAMIC instructions in a two step process. -
object
INEG extends NegateInstruction with Product with Serializable
Negate int.
-
object
INSTANCEOF extends Serializable
General information and factory methods.
-
object
INVOKEDYNAMIC
Common constants and extractor methods related to INVOKEDYNAMIC instructions.
-
object
INVOKEINTERFACE extends Serializable
General information and factory methods.
-
object
INVOKESPECIAL extends Serializable
General information and factory methods.
-
object
INVOKESTATIC extends Serializable
General information and factory methods.
-
object
INVOKEVIRTUAL extends Serializable
General information and factory methods.
-
object
IOR extends BitwiseInstruction with Product with Serializable
Boolean OR int.
-
object
IREM extends IntegerRemainderInstruction with Product with Serializable
Remainder int.
-
object
IRETURN extends ReturnValueInstruction with Product with Serializable
Return int from method.
-
object
ISHL extends ShiftInstruction with Product with Serializable
Shift left int.
-
object
ISHR extends ShiftInstruction with Product with Serializable
Arithmetic shift right int.
- object ISTORE extends Serializable
-
object
ISTORE_0 extends StoreLocalVariableInstruction with IStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store int into local variable with index 0.
-
object
ISTORE_1 extends StoreLocalVariableInstruction with IStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store int into local variable with index 1.
-
object
ISTORE_2 extends StoreLocalVariableInstruction with IStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store int into local variable with index 2.
-
object
ISTORE_3 extends StoreLocalVariableInstruction with IStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store int into local variable with index 3.
-
object
ISUB extends SubtractInstruction with Product with Serializable
Subtract int.
- object IStoreInstruction
-
object
IUSHR extends ShiftInstruction with Product with Serializable
Logical shift right int.
-
object
IXOR extends BitwiseInstruction with Product with Serializable
Boolean XOR int.
-
object
Instruction
Functionality common to instructions.
- object InstructionLabel extends InstructionLabelFactory
-
object
JSR extends Serializable
Defines constants and factory methods.
- object JSRInstruction
-
object
JSR_W extends Serializable
Defines constants and factory methods.
-
object
L2D extends NumericConversionInstruction with Product with Serializable
Convert long to double.
-
object
L2F extends NumericConversionInstruction with Product with Serializable
Convert long to float.
-
object
L2I extends NumericConversionInstruction with Product with Serializable
Convert long to int.
-
object
LADD extends AddInstruction with Product with Serializable
Add long.
-
object
LALOAD extends ArrayLoadInstruction with PrimitiveArrayAccess with Product with Serializable
Load long from array.
-
object
LAND extends BitwiseInstruction with Product with Serializable
Boolean AND long.
-
object
LASTORE extends PrimitiveArrayStoreInstruction with PrimitiveArrayAccess with Product with Serializable
Store into long array.
-
object
LCMP extends ComparisonInstruction with Product with Serializable
Compare long.
-
object
LCONST_0 extends LoadConstantInstruction[Long] with LConstInstruction with Product with Serializable
Push the long constant 0 onto the operand stack.
-
object
LCONST_1 extends LoadConstantInstruction[Long] with LConstInstruction with Product with Serializable
Push the long constant 1 onto the operand stack.
- object LConstInstruction
-
object
LDC
Defines factory and extractor methods for LDC instructions.
-
object
LDC2_W
Defines factory and extractor methods for LDC2_W instructions.
- object LDCClass
- object LDCFloat
- object LDCInt
- object LDCMethodHandle
- object LDCMethodType
- object LDCString
-
object
LDC_W
Defines factory and extractor methods for LDC_W instructions.
-
object
LDIV extends IntegerDivideInstruction with Product with Serializable
Divide long.
- object LLOAD extends Serializable
-
object
LLOAD_0 extends LoadLocalVariableInstruction with LLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load long from local variable with index 0.
-
object
LLOAD_1 extends LoadLocalVariableInstruction with LLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load long from local variable with index 1.
-
object
LLOAD_2 extends LoadLocalVariableInstruction with LLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load long from local variable with index 2.
-
object
LLOAD_3 extends LoadLocalVariableInstruction with LLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable
Load long from local variable with index 3.
- object LLoadInstruction
-
object
LMUL extends MultiplyInstruction with Product with Serializable
Multiply long.
-
object
LNEG extends NegateInstruction with Product with Serializable
Negate long.
-
object
LOOKUPSWITCH extends Serializable
Defines constants and factory methods.
-
object
LOR extends BitwiseInstruction with Product with Serializable
Boolean OR long.
-
object
LREM extends IntegerRemainderInstruction with Product with Serializable
Remainder long.
-
object
LRETURN extends ReturnValueInstruction with Product with Serializable
Return long from method.
-
object
LSHL extends ShiftInstruction with Product with Serializable
Shift left long.
-
object
LSHR extends ShiftInstruction with Product with Serializable
Arithmetic shift right long.
- object LSTORE extends Serializable
-
object
LSTORE_0 extends StoreLocalVariableInstruction with LStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store long into local variable with index 0.
-
object
LSTORE_1 extends StoreLocalVariableInstruction with LStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store long into local variable with index 1.
-
object
LSTORE_2 extends StoreLocalVariableInstruction with LStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store long into local variable with index 2.
-
object
LSTORE_3 extends StoreLocalVariableInstruction with LStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable
Store long into local variable with index 3.
-
object
LSUB extends SubtractInstruction with Product with Serializable
Subtract long.
- object LStoreInstruction
-
object
LUSHR extends ShiftInstruction with Product with Serializable
Logical shift right long.
-
object
LXOR extends BitwiseInstruction with Product with Serializable
Boolean XOR long.
-
object
LoadConstantInstruction
Defines factory methods for
LoadConstantInstructions. -
object
LoadLocalVariableInstruction
Defines a factory method for
LoadLocalVariableInstructions. -
object
LocalVariableAccess
Defines an extractor to determine the local variable index accessed by the instruction.
-
object
MONITORENTER extends SynchronizationInstruction with Product with Serializable
Enter monitor for object.
-
object
MONITOREXIT extends SynchronizationInstruction with Product with Serializable
Exit monitor for object.
-
object
MULTIANEWARRAY extends Serializable
General information and factory methods.
- object MethodCompletionInstruction
-
object
MethodInvocationInstruction
Defines commonly used constants and an extractor method to match MethodInvocationInstruction instructions.
-
object
NEW extends Serializable
General information and factory methods.
- object NEWARRAY
-
object
NOP extends Instruction with ConstantLengthInstruction with NoLabels with Product with Serializable
Do nothing.
- object NoExpression extends ExpressionResultLocation with Product with Serializable
- object NoMethodCompletionInstruction
-
object
POP extends StackManagementInstruction with PopInstruction with Product with Serializable
Pop the top operand stack value.
-
object
POP2 extends StackManagementInstruction with PopInstruction with Product with Serializable
Pops the top computational type category 2 value or the two top operand stack values if both have computational type category 1.
-
object
PUTFIELD extends Serializable
General information and factory methods.
-
object
PUTSTATIC extends Serializable
General information and factory methods.
- object PrimitiveArrayAccess
- object RET extends Serializable
-
object
RETURN extends ReturnInstruction with Product with Serializable
Return void from method.
-
object
ReturnInstruction
Defines common values and a factory method to create a
ReturnInstructionbased on the expected type. -
object
ReturnInstructions
Defines extractor methods related to return instructions.
- object RewriteLabel extends Serializable
-
object
SALOAD extends ArrayLoadInstruction with PrimitiveArrayAccess with Product with Serializable
Load short from array.
-
object
SASTORE extends PrimitiveArrayStoreInstruction with PrimitiveArrayAccess with Product with Serializable
Store into short array.
- object SIPUSH extends Serializable
-
object
SWAP extends StackManagementInstruction with Product with Serializable
Swap the top two operand stack values.
- object ShiftInstruction
-
object
SimpleConditionalBranchInstruction
Extractor for SimpleConditionalBranchInstructions.
- object Stack extends ExpressionResultLocation with Product with Serializable
- object StackBasedBinaryArithmeticInstruction
-
object
StoreLocalVariableInstruction
Factory for
StoreLocalVariableInstructions. -
object
SwitchInstruction
Extractor for SwitchInstructions.
- object SynchronizationInstruction
-
object
TABLESWITCH extends Serializable
Defines constants and factory methods.
- object UnaryArithmeticInstruction
-
object
UnconditionalBranchInstruction
Extractor for UnconditionalBranchInstructions.
- object VirtualMethodInvocationInstruction
-
object
WIDE extends Instruction with ConstantLengthInstruction with NoLabels with Product with Serializable
Extend local variable index by additional bytes.