Package

org.opalj.br

instructions

Permalink

package instructions

Common instruction sequences.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. instructions
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. case class ALOAD(lvIndex: Int) extends LoadLocalVariableInstruction with ALoadInstruction with ExplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load reference from local variable.

  2. trait ALoadInstruction extends LoadLocalVariableInstruction

    Permalink

    Load reference from local variable.

  3. case class ANEWARRAY(componentType: ReferenceType) extends CreateNewOneDimensionalArrayInstruction with Product with Serializable

    Permalink

    Create new array of reference.

  4. case class ASTORE(lvIndex: Int) extends AStoreInstruction with ExplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store reference into local variable.

  5. abstract class AStoreInstruction extends StoreLocalVariableInstruction

    Permalink

    An instruction that stores the top-most stack value with computational type reference value OR return address in a local variable.

  6. abstract class AddInstruction extends StackBasedArithmeticInstruction with AlwaysSucceedingStackBasedBinaryArithmeticInstruction

    Permalink

    An instruction that adds two primitive values.

  7. trait AlwaysSucceedingStackBasedBinaryArithmeticInstruction extends StackBasedArithmeticInstruction with StackBasedBinaryArithmeticInstruction

    Permalink
  8. trait ArithmeticInstruction extends Instruction

    Permalink

    An arithmetic instruction as defined by the JVM specification.

  9. abstract class ArrayAccessInstruction extends Instruction with ConstantLengthInstruction

    Permalink

    An instruction that loads or stores a value in an array.

  10. abstract class ArrayLoadInstruction extends ArrayAccessInstruction

    Permalink

    An instruction that loads a value stored in an array.

  11. abstract class ArrayStoreInstruction extends ArrayAccessInstruction

    Permalink

    An instruction that stores a value in an array.

  12. class BIPUSH extends LoadConstantInstruction[Int]

    Permalink

    Push byte.

    Push byte.

    Note

    BIPUSH instructions are inherently cached; two BIPUSH instructions that push the same value are always reference identical.

  13. abstract class BitwiseInstruction extends StackBasedArithmeticInstruction with AlwaysSucceedingStackBasedBinaryArithmeticInstruction

    Permalink

    An instruction that performs a manipulation of a value's bits.

  14. case class CHECKCAST(referenceType: ReferenceType) extends Instruction with ConstantLengthInstruction with Product with Serializable

    Permalink

    Check whether object is of given type.

  15. abstract class ComparisonInstruction extends StackBasedArithmeticInstruction with AlwaysSucceedingStackBasedBinaryArithmeticInstruction

    Permalink

    An instruction that compares two primitive values.

  16. trait CompoundConditionalBranchInstruction extends ConditionalBranchInstruction with CompoundConditionalBranchInstructionLike

    Permalink
  17. trait CompoundConditionalBranchInstructionLike extends ConditionalBranchInstructionLike

    Permalink

    Common super class of all compound conditional branch instructions (switch instructions!).

  18. trait ConditionalBranchInstruction extends ControlTransferInstruction with ConditionalBranchInstructionLike

    Permalink
  19. trait ConditionalBranchInstructionLike extends ControlTransferInstructionLike

    Permalink

    Common super class of all conditional branch instructions.

  20. trait ConstantLengthInstruction extends InstructionLike

    Permalink

    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.

  21. trait ControlTransferInstruction extends Instruction with ControlTransferInstructionLike

    Permalink
  22. trait ControlTransferInstructionLike extends InstructionLike

    Permalink

    Common superclass of all control transfer instructions.

  23. abstract class CreateNewArrayInstruction extends Instruction with ConstantLengthInstruction

    Permalink

    An instruction to create a new array.

  24. abstract class CreateNewOneDimensionalArrayInstruction extends CreateNewArrayInstruction

    Permalink

    An instruction to create a new one-dimensional array.

  25. trait DConstInstruction extends LoadConstantInstruction[Double] with ImplicitValue

    Permalink

  26. case class DEFAULT_INVOKEDYNAMIC(bootstrapMethod: BootstrapMethod, name: String, methodDescriptor: MethodDescriptor) extends InvocationInstruction with INVOKEDYNAMIC with Product with Serializable

    Permalink

    Represents an invokedynamic instruction where we have no further, immediately usable information regarding the target.

    Represents an invokedynamic instruction 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 invokedynamic instruction intends to invoke.

    methodDescriptor

    This is the descriptor belonging to the instruction's intended invocation target.

  27. case class DLOAD(lvIndex: Int) extends LoadLocalVariableInstruction with DLoadInstruction with ExplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load double from local variable.

  28. trait DLoadInstruction extends LoadLocalVariableInstruction

    Permalink

    Load double from local variable.

  29. case class DSTORE(lvIndex: Int) extends StoreLocalVariableInstruction with DStoreInstruction with ExplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store double into local variable.

  30. trait DStoreInstruction extends StoreLocalVariableInstruction

    Permalink

    Store long into local variable.

  31. abstract class DivideInstruction extends StackBasedArithmeticInstruction with StackBasedBinaryArithmeticInstruction

    Permalink

    An instruction that divides two primitive values.

  32. trait ExplicitLocalVariableIndex extends Instruction

    Permalink

    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.

  33. sealed abstract class ExpressionResultLocation extends AnyRef

    Permalink

    Characterizes the result of evaluating an expression with respect to the place where the result is stored.

  34. trait FConstInstruction extends LoadConstantInstruction[Float] with ImplicitValue

    Permalink

  35. case class FLOAD(lvIndex: Int) extends LoadLocalVariableInstruction with FLoadInstruction with ExplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load float from local variable.

  36. trait FLoadInstruction extends LoadLocalVariableInstruction

    Permalink

    Load float from local variable.

  37. case class FSTORE(lvIndex: Int) extends StoreLocalVariableInstruction with FStoreInstruction with ExplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store float into local variable.

  38. trait FStoreInstruction extends StoreLocalVariableInstruction

    Permalink

    Store float into local variable.

  39. abstract class FieldAccess extends Instruction with ConstantLengthInstruction

    Permalink

    Instructions that access a class' field.

  40. abstract class FieldReadAccess extends FieldAccess

    Permalink

    Common superclass of all field read instructions.

  41. abstract class FieldWriteAccess extends FieldAccess

    Permalink

    Common superclass of all FieldWriteAccess instructions.

  42. abstract class FloatingPointDivideInstruction extends DivideInstruction

    Permalink

    An instruction that divides two primitive floating point values.

  43. abstract class FloatingPointRemainderInstruction extends RemainderInstruction

    Permalink

    An instruction that calculates the remainder of two primitive floating point values.

  44. case class GETFIELD(declaringClass: ObjectType, name: String, fieldType: FieldType) extends FieldReadAccess with Product with Serializable

    Permalink

    Fetch field from object.

    Fetch field from object.

    NOTE

    Getting an Array's length is translated to the special arraylength instruction. E.g., in the following case:

    Object[] os = ...; os.length

    os.length is determined using the special arraylength instruction.

    See also

    org.opalj.br.instructions.FieldAccess for additional pattern matching support.

  45. case class GETSTATIC(declaringClass: ObjectType, name: String, fieldType: FieldType) extends FieldReadAccess with Product with Serializable

    Permalink

    Getstatic field from class.

    Getstatic field from class.

    See also

    org.opalj.br.instructions.FieldAccess for additional pattern matching support.

  46. case class GOTO(branchoffset: Int) extends GotoInstruction with GOTOLike with Product with Serializable

    Permalink
  47. trait GOTOLike extends GotoInstructionLike

    Permalink

    Branch always.

  48. case class GOTO_W(branchoffset: Int) extends GotoInstruction with GOTO_WLike with Product with Serializable

    Permalink
  49. trait GOTO_WLike extends GotoInstructionLike

    Permalink

    Branch always.

  50. trait GotoInstruction extends UnconditionalBranchInstruction with GotoInstructionLike

    Permalink
  51. trait GotoInstructionLike extends UnconditionalBranchInstructionLike

    Permalink

    Super class of the Goto instructions.

  52. trait IConstInstruction extends LoadConstantInstruction[Int] with ImplicitValue

    Permalink

  53. trait IF0Instruction extends SimpleConditionalBranchInstruction with IF0InstructionLike

    Permalink
  54. trait IF0InstructionLike extends SimpleConditionalBranchInstructionLike

    Permalink

    Common superclass of all instructions that perform a comparison of an integer value against the constant value 0.

  55. trait IFACMPInstruction extends SimpleConditionalBranchInstruction with IFACMPInstructionLike

    Permalink
  56. trait IFACMPInstructionLike extends SimpleConditionalBranchInstructionLike

    Permalink

    Common superclass of all instructions that perform a conditional jump based on the comparison of reference values.

  57. case class IFEQ(branchoffset: Int) extends IF0Instruction with IFEQLike with Product with Serializable

    Permalink
  58. trait IFEQLike extends IF0InstructionLike

    Permalink

    Branch if int comparison with zero succeeds; succeeds if and only if value = 0.

  59. case class IFGE(branchoffset: Int) extends IF0Instruction with IFGELike with Product with Serializable

    Permalink
  60. trait IFGELike extends IF0InstructionLike

    Permalink

    Branch if int comparison with zero succeeds; succeeds if and only if value ≥ 0.

  61. case class IFGT(branchoffset: Int) extends IF0Instruction with IFGTLike with Product with Serializable

    Permalink
  62. trait IFGTLike extends IF0InstructionLike

    Permalink

    Branch if int comparison with zero succeeds; succeeds if and only if value > 0.

  63. trait IFICMPInstruction extends SimpleConditionalBranchInstruction with IFICMPInstructionLike

    Permalink
  64. trait IFICMPInstructionLike extends SimpleConditionalBranchInstructionLike

    Permalink

    Common superclass of all instructions that perform a conditional jump based on the comparison of two integer values.

  65. case class IFLE(branchoffset: Int) extends IF0Instruction with IFLELike with Product with Serializable

    Permalink
  66. trait IFLELike extends IF0InstructionLike

    Permalink

    Branch if int comparison with zero succeeds; succeeds if and only if value ≤ 0.

  67. case class IFLT(branchoffset: Int) extends IF0Instruction with IFLTLike with Product with Serializable

    Permalink
  68. trait IFLTLike extends IF0InstructionLike

    Permalink

    Branch if int comparison with zero succeeds; succeeds if and only if value < 0.

  69. case class IFNE(branchoffset: Int) extends IF0Instruction with IFNELike with Product with Serializable

    Permalink
  70. trait IFNELike extends IF0InstructionLike

    Permalink

    Branch if int comparison with zero succeeds; succeeds if and only if value ≠ 0.

  71. case class IFNONNULL(branchoffset: Int) extends IFXNullInstruction with IFNONNULLLike with Product with Serializable

    Permalink
  72. trait IFNONNULLLike extends IFXNullInstructionLike

    Permalink

    Branch if reference is not null.

  73. case class IFNULL(branchoffset: Int) extends IFXNullInstruction with IFNULLLike with Product with Serializable

    Permalink
  74. trait IFNULLLike extends IFXNullInstructionLike

    Permalink

    Branch if reference is null.

  75. trait IFXNullInstruction extends SimpleConditionalBranchInstruction with IFXNullInstructionLike

    Permalink
  76. trait IFXNullInstructionLike extends SimpleConditionalBranchInstructionLike

    Permalink

    Common superclass of all instructions that perform a conditional jump based on an explicit comparison with null.

  77. case class IF_ACMPEQ(branchoffset: Int) extends IFACMPInstruction with IF_ACMPEQLike with Product with Serializable

    Permalink
  78. trait IF_ACMPEQLike extends IFACMPInstructionLike

    Permalink

    Branch if reference comparison succeeds; succeeds if and only if value1 == value2.

  79. case class IF_ACMPNE(branchoffset: Int) extends IFACMPInstruction with IF_ACMPNELike with Product with Serializable

    Permalink
  80. trait IF_ACMPNELike extends IFACMPInstructionLike

    Permalink

    Branch if reference comparison succeeds; succeeds if and only if value1 ≠ value2.

  81. case class IF_ICMPEQ(branchoffset: Int) extends IFICMPInstruction with IF_ICMPEQLike with Product with Serializable

    Permalink
  82. trait IF_ICMPEQLike extends IFICMPInstructionLike

    Permalink

    Branch if int comparison succeeds; succeeds if and only if value1 = value2.

  83. case class IF_ICMPGE(branchoffset: Int) extends IFICMPInstruction with IF_ICMPGELike with Product with Serializable

    Permalink
  84. trait IF_ICMPGELike extends IFICMPInstructionLike

    Permalink

    Branch if int comparison succeeds; succeeds if and only if value1 ≥ value2.

  85. case class IF_ICMPGT(branchoffset: Int) extends IFICMPInstruction with IF_ICMPGTLike with Product with Serializable

    Permalink
  86. trait IF_ICMPGTLike extends IFICMPInstructionLike

    Permalink

    Branch if int comparison succeeds; succeeds if and only if value1 > value2.

  87. case class IF_ICMPLE(branchoffset: Int) extends IFICMPInstruction with IF_ICMPLELike with Product with Serializable

    Permalink
  88. trait IF_ICMPLELike extends IFICMPInstructionLike

    Permalink

    Branch if int comparison succeeds; succeeds if and only if value1 ≤ value2.

  89. case class IF_ICMPLT(branchoffset: Int) extends IFICMPInstruction with IF_ICMPLTLike with Product with Serializable

    Permalink
  90. trait IF_ICMPLTLike extends IFICMPInstructionLike

    Permalink

    Branch if int comparison succeeds; succeeds if and only if value1 < value2.

  91. case class IF_ICMPNE(branchoffset: Int) extends IFICMPInstruction with IF_ICMPNELike with Product with Serializable

    Permalink
  92. trait IF_ICMPNELike extends IFICMPInstructionLike

    Permalink

    Branch if int comparison succeeds; succeeds if and only if value1 ≠ value2.

  93. case class IINC(lvIndex: Int, constValue: Int) extends ArithmeticInstruction with Product with Serializable

    Permalink

    Increment local variable by constant.

  94. case class ILOAD(lvIndex: Int) extends LoadLocalVariableInstruction with ILoadInstruction with ExplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load int from local variable.

  95. trait ILoadInstruction extends LoadLocalVariableInstruction

    Permalink

    Load int from local variable.

  96. case class INSTANCEOF(referenceType: ReferenceType) extends Instruction with ConstantLengthInstruction with Product with Serializable

    Permalink

    Determine if object is of given type.

  97. trait INVOKEDYNAMIC extends InvocationInstruction

    Permalink

    Represents an invokedynamic instruction.

  98. case class INVOKEINTERFACE(declaringClass: ObjectType, name: String, methodDescriptor: MethodDescriptor) extends VirtualMethodInvocationInstruction with Product with Serializable

    Permalink

    Invoke interface method.

  99. case class INVOKESPECIAL(declaringClass: ObjectType, isInterface: Boolean, name: String, methodDescriptor: MethodDescriptor) extends NonVirtualMethodInvocationInstruction with Product with Serializable

    Permalink

    Invoke instance method; special handling for superclass, private, and instance initialization method invocations.

  100. case class INVOKESTATIC(declaringClass: ObjectType, isInterface: Boolean, name: String, methodDescriptor: MethodDescriptor) extends NonVirtualMethodInvocationInstruction with Product with Serializable

    Permalink

    Invoke a class (static) method.

  101. case class INVOKEVIRTUAL(declaringClass: ReferenceType, name: String, methodDescriptor: MethodDescriptor) extends VirtualMethodInvocationInstruction with Product with Serializable

    Permalink

    Invoke instance method; dispatch based on class.

  102. case class ISTORE(lvIndex: Int) extends StoreLocalVariableInstruction with IStoreInstruction with ExplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store int into local variable.

  103. trait IStoreInstruction extends StoreLocalVariableInstruction

    Permalink
  104. trait ImplicitLocalVariableIndex extends ConstantLengthInstruction

    Permalink

    Trait that is mixed in if the local variable index of a load or store instruction ((a,i,l,...)load/store_X) is predefined.

  105. trait ImplicitValue extends ConstantLengthInstruction

    Permalink

    Trait that can be mixed in if the value of a instruction is implicitly defined.

  106. trait Instruction extends InstructionLike

    Permalink

    Common superclass of all instructions which are in their final form.

  107. trait InstructionLike extends AnyRef

    Permalink

    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.

  108. abstract class IntegerDivideInstruction extends DivideInstruction

    Permalink

    An instruction that divides two primitive integer values (long or in).

  109. abstract class IntegerRemainderInstruction extends RemainderInstruction

    Permalink

    An instruction that the remainder of an integer values (long or in).

  110. abstract class InvocationInstruction extends Instruction with ConstantLengthInstruction

    Permalink

    An instruction that "invokes" something.

    An instruction that "invokes" something. This can be, e.g., the invocation of a method or – using INCOMPLETE_INVOKEDYNAMIC – the read of a field value.

  111. case class JSR(branchoffset: Int) extends JSRInstruction with JSRLike with Product with Serializable

    Permalink
  112. trait JSRInstruction extends UnconditionalBranchInstruction with JSRInstructionLike

    Permalink
  113. trait JSRInstructionLike extends UnconditionalBranchInstructionLike

    Permalink

    Jump subroutine.

  114. trait JSRLike extends JSRInstructionLike

    Permalink

    Jump subroutine.

  115. case class JSR_W(branchoffset: Int) extends JSRInstruction with JSR_WLike with Product with Serializable

    Permalink
  116. trait JSR_WLike extends JSRInstructionLike

    Permalink

    Jump subroutine.

  117. trait LConstInstruction extends LoadConstantInstruction[Long] with ImplicitValue

    Permalink

  118. sealed abstract class LDC[T] extends LoadConstantInstruction[T]

    Permalink

    Push item from runtime constant pool.

  119. sealed abstract class LDC2_W[T] extends LoadConstantInstruction[T]

    Permalink

    Push long or double from runtime constant pool.

  120. sealed abstract class LDC_W[T] extends LoadConstantInstruction[T]

    Permalink

    Push item from runtime constant pool.

  121. case class LLOAD(lvIndex: Int) extends LoadLocalVariableInstruction with LLoadInstruction with ExplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load long from local variable.

  122. trait LLoadInstruction extends LoadLocalVariableInstruction

    Permalink

    Load long from local variable.

  123. case class LOOKUPSWITCH(defaultOffset: Int, npairs: IndexedSeq[(Int, Int)]) extends CompoundConditionalBranchInstruction with LOOKUPSWITCHLike with Product with Serializable

    Permalink

    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.

  124. trait LOOKUPSWITCHLike extends CompoundConditionalBranchInstructionLike

    Permalink

    Access jump table by key match and jump.

  125. case class LSTORE(lvIndex: Int) extends StoreLocalVariableInstruction with LStoreInstruction with ExplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store long into local variable.

  126. trait LStoreInstruction extends StoreLocalVariableInstruction

    Permalink

    Store long into local variable.

  127. case class LabeledGOTO(branchTarget: Symbol) extends LabeledUnconditionalBranchInstruction with GOTOLike with Product with Serializable

    Permalink
  128. case class LabeledGOTO_W(branchTarget: Symbol) extends LabeledUnconditionalBranchInstruction with GOTO_WLike with Product with Serializable

    Permalink
  129. case class LabeledIFEQ(branchTarget: Symbol) extends LabeledSimpleConditionalBranchInstruction with IFEQLike with Product with Serializable

    Permalink
  130. case class LabeledIFGE(branchTarget: Symbol) extends LabeledSimpleConditionalBranchInstruction with IFGELike with Product with Serializable

    Permalink
  131. case class LabeledIFGT(branchTarget: Symbol) extends LabeledSimpleConditionalBranchInstruction with IFGTLike with Product with Serializable

    Permalink
  132. case class LabeledIFLE(branchTarget: Symbol) extends LabeledSimpleConditionalBranchInstruction with IFLELike with Product with Serializable

    Permalink
  133. case class LabeledIFLT(branchTarget: Symbol) extends LabeledSimpleConditionalBranchInstruction with IFLTLike with Product with Serializable

    Permalink
  134. case class LabeledIFNE(branchTarget: Symbol) extends LabeledSimpleConditionalBranchInstruction with IFNELike with Product with Serializable

    Permalink
  135. case class LabeledIFNONNULL(branchTarget: Symbol) extends LabeledSimpleConditionalBranchInstruction with IFNONNULLLike with Product with Serializable

    Permalink
  136. case class LabeledIFNULL(branchTarget: Symbol) extends LabeledSimpleConditionalBranchInstruction with IFNULLLike with Product with Serializable

    Permalink
  137. case class LabeledIF_ACMPEQ(branchTarget: Symbol) extends LabeledSimpleConditionalBranchInstruction with IF_ACMPEQLike with Product with Serializable

    Permalink
  138. case class LabeledIF_ACMPNE(branchTarget: Symbol) extends LabeledSimpleConditionalBranchInstruction with IF_ACMPNELike with Product with Serializable

    Permalink
  139. case class LabeledIF_ICMPEQ(branchTarget: Symbol) extends LabeledSimpleConditionalBranchInstruction with IF_ICMPEQLike with Product with Serializable

    Permalink
  140. case class LabeledIF_ICMPGE(branchTarget: Symbol) extends LabeledSimpleConditionalBranchInstruction with IF_ICMPGELike with Product with Serializable

    Permalink
  141. case class LabeledIF_ICMPGT(branchTarget: Symbol) extends LabeledSimpleConditionalBranchInstruction with IF_ICMPGTLike with Product with Serializable

    Permalink
  142. case class LabeledIF_ICMPLE(branchTarget: Symbol) extends LabeledSimpleConditionalBranchInstruction with IF_ICMPLELike with Product with Serializable

    Permalink
  143. case class LabeledIF_ICMPLT(branchTarget: Symbol) extends LabeledSimpleConditionalBranchInstruction with IF_ICMPLTLike with Product with Serializable

    Permalink
  144. case class LabeledIF_ICMPNE(branchTarget: Symbol) extends LabeledSimpleConditionalBranchInstruction with IF_ICMPNELike with Product with Serializable

    Permalink
  145. trait LabeledInstruction extends InstructionLike

    Permalink

    An instruction where the jump targets are identified using Symbols associated with the instructions which should be executed in case of a jump.

    An instruction where the jump targets are identified using Symbols associated with the instructions which should be executed in case of a jump. The labels are standard Scala Symbol.

  146. case class LabeledJSR(branchTarget: Symbol) extends LabeledUnconditionalBranchInstruction with JSRLike with Product with Serializable

    Permalink
  147. case class LabeledJSR_W(branchTarget: Symbol) extends LabeledUnconditionalBranchInstruction with JSRLike with Product with Serializable

    Permalink
  148. case class LabeledLOOKUPSWITCH(defaultBranchTarget: Symbol, npairs: IndexedSeq[(Int, Symbol)]) extends LabeledInstruction with LOOKUPSWITCHLike with Product with Serializable

    Permalink

    Represents a LOOKUPSWITCH instruction with unresolved jump targets represented as Symbols.

  149. trait LabeledSimpleConditionalBranchInstruction extends LabeledSingleJumpTargetInstruction with SimpleConditionalBranchInstructionLike

    Permalink

    An conditional branch instruction where the jump target is identified using a Symbol.

  150. trait LabeledSingleJumpTargetInstruction extends LabeledInstruction

    Permalink

    An instruction where the jump target is identified using a Symbol associated with the instruction which should be executed in case of a jump.

    An instruction where the jump target is identified using a Symbol associated with the instruction which should be executed in case of a jump. The label is a standard Scala Symbol.

  151. case class LabeledTABLESWITCH(defaultBranchTarget: Symbol, low: Int, high: Int, jumpTargets: IndexedSeq[Symbol]) extends LabeledInstruction with TABLESWITCHLike with Product with Serializable

    Permalink

    Represents a TABLESWITCH instruction with unresolved jump targets represented as Symbols.

  152. trait LabeledUnconditionalBranchInstruction extends LabeledSingleJumpTargetInstruction with UnconditionalBranchInstructionLike

    Permalink

    Super class of all labeled bytecode instructions that always jump to a specific target instruction.

  153. final case class LoadClass(value: ReferenceType) extends LDC[ReferenceType] with Product with Serializable

    Permalink

    Note

    To match LoadClass and LoadClass_W instructions you can use LDCClass.

  154. final case class LoadClass_W(value: ReferenceType) extends LDC_W[ReferenceType] with Product with Serializable

    Permalink
  155. abstract class LoadConstantInstruction[T] extends Instruction with ConstantLengthInstruction

    Permalink

    Puts a constant value on the stack.

  156. final case class LoadDouble(value: Double) extends LDC2_W[Double] with Product with Serializable

    Permalink
  157. final case class LoadFloat(value: Float) extends LDC[Float] with Product with Serializable

    Permalink

    Note

    To match LoadFloat and LoadFloat_W instructions you can use LDCFloat.

  158. final case class LoadFloat_W(value: Float) extends LDC_W[Float] with Product with Serializable

    Permalink
  159. final case class LoadInt(value: Int) extends LDC[Int] with Product with Serializable

    Permalink

    Note

    To match LoadInt and LoadInt_W instructions you can use LDCInt.

  160. final case class LoadInt_W(value: Int) extends LDC_W[Int] with Product with Serializable

    Permalink
  161. abstract class LoadLocalVariableInstruction extends Instruction

    Permalink

    An instruction that loads a local variable and puts it on top of the stack.

  162. final case class LoadLong(value: Long) extends LDC2_W[Long] with Product with Serializable

    Permalink
  163. final case class LoadMethodHandle(value: MethodHandle) extends LDC[MethodHandle] with Product with Serializable

    Permalink

    Note

    To match LoadMethodHandle and LoadMethodHandle_W instructions you can use LDCMethodHandle.

  164. final case class LoadMethodHandle_W(value: MethodHandle) extends LDC_W[MethodHandle] with Product with Serializable

    Permalink
  165. final case class LoadMethodType(value: MethodDescriptor) extends LDC[MethodDescriptor] with Product with Serializable

    Permalink

    Note

    To match LoadMethodType and LoadMethodType_W instructions you can use LDCMethodType.

  166. final case class LoadMethodType_W(value: MethodDescriptor) extends LDC_W[MethodDescriptor] with Product with Serializable

    Permalink
  167. final case class LoadString(value: String) extends LDC[String] with Product with Serializable

    Permalink

    Note

    To match LoadString and LoadString_W instructions you can use LDCString.

  168. final case class LoadString_W(value: String) extends LDC_W[String] with Product with Serializable

    Permalink
  169. case class MULTIANEWARRAY(arrayType: ArrayType, dimensions: Int) extends CreateNewArrayInstruction with Product with Serializable

    Permalink

    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.

  170. abstract class MethodInvocationInstruction extends InvocationInstruction

    Permalink

    An instruction that invokes another method (does not consider invokedynamic instructions.)

  171. abstract class MultiplyInstruction extends StackBasedArithmeticInstruction with AlwaysSucceedingStackBasedBinaryArithmeticInstruction

    Permalink

    An instruction that multiplies two primitive values.

  172. case class NEW(objectType: ObjectType) extends Instruction with ConstantLengthInstruction with Product with Serializable

    Permalink

    Create new object.

  173. sealed abstract class NEWARRAY extends CreateNewOneDimensionalArrayInstruction

    Permalink

    Create new array handler.

  174. abstract class NegateInstruction extends StackBasedArithmeticInstruction with UnaryArithmeticInstruction

    Permalink

    An instruction that negates a primitive value.

  175. abstract class NonVirtualMethodInvocationInstruction extends MethodInvocationInstruction

    Permalink

    Invocation of a method where the target method is statically resolved.

  176. abstract class NumericConversionInstruction extends Instruction with ConstantLengthInstruction

    Permalink

    An instruction that converts between a numeric value of primitive type A and primitive type B.

  177. case class PUTFIELD(declaringClass: ObjectType, name: String, fieldType: FieldType) extends FieldWriteAccess with Product with Serializable

    Permalink

    Set field in object.

    Set field in object.

    See also

    org.opalj.br.instructions.FieldAccess for additional pattern matching support.

  178. case class PUTSTATIC(declaringClass: ObjectType, name: String, fieldType: FieldType) extends FieldWriteAccess with Product with Serializable

    Permalink

    Set static field in class.

    Set static field in class.

    See also

    org.opalj.br.instructions.FieldAccess for additional pattern matching support.

  179. trait PopInstruction extends StackManagementInstruction

    Permalink

    Pops the (two) top operand stack value(s).

  180. trait PrimitiveArrayAccess extends AnyRef

    Permalink

    Trait that can be mixed in if the value of a instruction is implicitly defined.

  181. abstract class PrimitiveArrayStoreInstruction extends ArrayStoreInstruction

    Permalink

    An instruction that stores a primitive value in an array of primitive values.

  182. case class RET(lvIndex: Int) extends ControlTransferInstruction with ConstantLengthInstruction with Product with Serializable

    Permalink

    Return from subroutine.

    Return from subroutine.

    Note

    A RET instruction always returns to an instruction immediately following a JSR(_W) instruction.

  183. case class Register(index: Int) extends ExpressionResultLocation with Product with Serializable

    Permalink
  184. abstract class RemainderInstruction extends StackBasedArithmeticInstruction with StackBasedBinaryArithmeticInstruction

    Permalink

    An instruction that calculates the remainder of a value.

  185. abstract class ReturnInstruction extends Instruction with ConstantLengthInstruction

    Permalink

    An instruction that returns from a method.

  186. abstract class ReturnValueInstruction extends ReturnInstruction

    Permalink

    An instruction that returns a value calculated by the method.

  187. case class SIPUSH(value: Int) extends LoadConstantInstruction[Int] with Product with Serializable

    Permalink

    Push short.

  188. abstract class ShiftInstruction extends StackBasedArithmeticInstruction with AlwaysSucceedingStackBasedBinaryArithmeticInstruction

    Permalink

    An instruction that adds two primitive values.

  189. trait SimpleConditionalBranchInstruction extends ConditionalBranchInstruction with SimpleConditionalBranchInstructionLike

    Permalink
  190. trait SimpleConditionalBranchInstructionLike extends ConditionalBranchInstructionLike with ConstantLengthInstruction

    Permalink

    Common superclass of all instructions that perform a conditional jump.

  191. abstract class StackBasedArithmeticInstruction extends ArithmeticInstruction with ConstantLengthInstruction

    Permalink

    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.

  192. trait StackBasedBinaryArithmeticInstruction extends StackBasedArithmeticInstruction

    Permalink

    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!

  193. abstract class StackManagementInstruction extends Instruction with ConstantLengthInstruction

    Permalink

    An instruction that directly manipulates the operand stack by popping, swapping or duplicating values.

  194. abstract class StoreLocalVariableInstruction extends Instruction

    Permalink

    An instruction that stores the top-most stack value in a local variable.

  195. abstract class SubtractInstruction extends StackBasedArithmeticInstruction with AlwaysSucceedingStackBasedBinaryArithmeticInstruction

    Permalink

    An instruction that subtracts two primitive values.

  196. abstract class SynchronizationInstruction extends Instruction with ConstantLengthInstruction

    Permalink

    A synchronization related instruction.

  197. case class TABLESWITCH(defaultOffset: Int, low: Int, high: Int, jumpOffsets: IndexedSeq[Int]) extends CompoundConditionalBranchInstruction with TABLESWITCHLike with Product with Serializable

    Permalink
  198. trait TABLESWITCHLike extends CompoundConditionalBranchInstructionLike

    Permalink

    Access jump table by index and jump.

  199. trait UnaryArithmeticInstruction extends ArithmeticInstruction

    Permalink

    Implemented by all arithmetic instructions that have one (runtime-dependent) operand; i.e.

    Implemented by all arithmetic instructions that have one (runtime-dependent) operand; i.e. the NegateInstructions.

  200. trait UnconditionalBranchInstruction extends Instruction with UnconditionalBranchInstructionLike

    Permalink
  201. trait UnconditionalBranchInstructionLike extends ControlTransferInstructionLike with ConstantLengthInstruction

    Permalink

    Super class of all bytecode instructions that always jump to a specific target instruction.

  202. abstract class VirtualMethodInvocationInstruction extends MethodInvocationInstruction

    Permalink

    Common superclass of all Invoke instructions that require virtual method resolution.

Value Members

  1. object AALOAD extends ArrayLoadInstruction with Product with Serializable

    Permalink

    Load reference from array.

  2. object AASTORE extends ArrayStoreInstruction with Product with Serializable

    Permalink

    Store into reference array.

  3. object ACONST_NULL extends LoadConstantInstruction[Null] with ImplicitValue with Product with Serializable

    Permalink

    Push null.

  4. object ALOAD extends Serializable

    Permalink
  5. object ALOAD_0 extends LoadLocalVariableInstruction with ALoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load reference from local variable with index 0.

  6. object ALOAD_1 extends LoadLocalVariableInstruction with ALoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load reference from local variable with index 1.

  7. object ALOAD_2 extends LoadLocalVariableInstruction with ALoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load reference from local variable with index 2.

  8. object ALOAD_3 extends LoadLocalVariableInstruction with ALoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load reference from local variable with index 3.

  9. object ALoadInstruction

    Permalink
  10. object ANEWARRAY extends Serializable

    Permalink

    General information and factory methods.

  11. object ARETURN extends ReturnValueInstruction with Product with Serializable

    Permalink

    Return reference from method.

  12. object ARRAYLENGTH extends Instruction with ConstantLengthInstruction with Product with Serializable

    Permalink

    Get length of array.

  13. object ASTORE extends Serializable

    Permalink
  14. object ASTORE_0 extends AStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store reference into local variable with index 0.

  15. object ASTORE_1 extends AStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store reference into local variable with index 1.

  16. object ASTORE_2 extends AStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store reference into local variable with index 2.

  17. object ASTORE_3 extends AStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store reference into local variable with index 3.

  18. object AStoreInstruction

    Permalink
  19. object ATHROW extends Instruction with Product with Serializable

    Permalink

    Throw exception or error.

  20. object ArithmeticInstruction

    Permalink

    Defines values and methods common to arithmetic instructions.

  21. object ArrayLoadInstruction

    Permalink

    Defines common properties of instructions that load values stored in arrays.

  22. object BALOAD extends ArrayLoadInstruction with PrimitiveArrayAccess with Product with Serializable

    Permalink

    Load byte or boolean from array.

  23. object BASTORE extends PrimitiveArrayStoreInstruction with PrimitiveArrayAccess with Product with Serializable

    Permalink

    Store into byte or boolean array.

  24. object BIPUSH

    Permalink
  25. object CALOAD extends ArrayLoadInstruction with PrimitiveArrayAccess with Product with Serializable

    Permalink

    Load char from array.

  26. object CASTORE extends PrimitiveArrayStoreInstruction with PrimitiveArrayAccess with Product with Serializable

    Permalink

    Store into char array.

  27. object CHECKCAST extends Serializable

    Permalink

    General information and factory methods.

  28. object ClassFileFactory

    Permalink

    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.

  29. object CreateNewArrayInstruction

    Permalink
  30. object D2F extends NumericConversionInstruction with Product with Serializable

    Permalink

    Convert double to float.

  31. object D2I extends NumericConversionInstruction with Product with Serializable

    Permalink

    Convert double to int.

  32. object D2L extends NumericConversionInstruction with Product with Serializable

    Permalink

    Convert double to long.

  33. object DADD extends AddInstruction with Product with Serializable

    Permalink

    Add double.

  34. object DALOAD extends ArrayLoadInstruction with PrimitiveArrayAccess with Product with Serializable

    Permalink

    Load double from array.

  35. object DASTORE extends PrimitiveArrayStoreInstruction with PrimitiveArrayAccess with Product with Serializable

    Permalink

    Store into double array.

  36. object DCMPG extends ComparisonInstruction with Product with Serializable

    Permalink

    Compare double.

  37. object DCMPL extends ComparisonInstruction with Product with Serializable

    Permalink

    Compare double.

  38. object DCONST_0 extends LoadConstantInstruction[Double] with DConstInstruction with Product with Serializable

    Permalink

    Push the double constant 0.0 onto the operand stack.

  39. object DCONST_1 extends LoadConstantInstruction[Double] with DConstInstruction with Product with Serializable

    Permalink

    Push the double constant 1.0 onto the operand stack.

  40. object DConstInstruction

    Permalink
  41. object DDIV extends FloatingPointDivideInstruction with Product with Serializable

    Permalink

    Divide double.

  42. object DLOAD extends Serializable

    Permalink
  43. object DLOAD_0 extends LoadLocalVariableInstruction with DLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load double from local variable with index 0.

  44. object DLOAD_1 extends LoadLocalVariableInstruction with DLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load double from local variable with index 1.

  45. object DLOAD_2 extends LoadLocalVariableInstruction with DLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load double from local variable with index 2.

  46. object DLOAD_3 extends LoadLocalVariableInstruction with DLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load double from local variable with index 3.

  47. object DLoadInstruction

    Permalink
  48. object DMUL extends MultiplyInstruction with Product with Serializable

    Permalink

    Multiply double.

  49. object DNEG extends NegateInstruction with Product with Serializable

    Permalink

    Negate double.

  50. object DREM extends FloatingPointRemainderInstruction with Product with Serializable

    Permalink

    Remainder double.

  51. object DRETURN extends ReturnValueInstruction with Product with Serializable

    Permalink

    Return double from method.

  52. object DSTORE extends Serializable

    Permalink
  53. object DSTORE_0 extends StoreLocalVariableInstruction with DStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store double into local variable with index 0.

  54. object DSTORE_1 extends StoreLocalVariableInstruction with DStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store double into local variable with index 1.

  55. object DSTORE_2 extends StoreLocalVariableInstruction with DStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store double into local variable with index 2.

  56. object DSTORE_3 extends StoreLocalVariableInstruction with DStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store double into local variable with index 3.

  57. object DSUB extends SubtractInstruction with Product with Serializable

    Permalink

    Subtract double.

  58. object DStoreInstruction

    Permalink
  59. object DUP extends StackManagementInstruction with Product with Serializable

    Permalink

    Duplicate the top operand stack value.

  60. object DUP2 extends StackManagementInstruction with Product with Serializable

    Permalink

    Duplicate the top one or two operand stack values.

  61. object DUP2_X1 extends StackManagementInstruction with Product with Serializable

    Permalink

    Duplicate the top one or two operand stack values and insert two or three values down.

  62. object DUP2_X2 extends StackManagementInstruction with Product with Serializable

    Permalink

    Duplicate the top one or two operand stack values and insert two, three, or four values down.

  63. object DUP_X1 extends StackManagementInstruction with Product with Serializable

    Permalink

    Duplicate the top operand stack value and insert two values down.

  64. object DUP_X2 extends StackManagementInstruction with Product with Serializable

    Permalink

    Duplicate the top operand stack value and insert two or three values down.

  65. object ExplicitLocalVariableIndex

    Permalink
  66. object F2D extends NumericConversionInstruction with Product with Serializable

    Permalink

    Convert float to double.

  67. object F2I extends NumericConversionInstruction with Product with Serializable

    Permalink

    Convert float to int.

  68. object F2L extends NumericConversionInstruction with Product with Serializable

    Permalink

    Convert float to long.

  69. object FADD extends AddInstruction with Product with Serializable

    Permalink

    Add float.

  70. object FALOAD extends ArrayLoadInstruction with PrimitiveArrayAccess with Product with Serializable

    Permalink

    Load float from array.

  71. object FASTORE extends PrimitiveArrayStoreInstruction with PrimitiveArrayAccess with Product with Serializable

    Permalink

    Store into float array.

  72. object FCMPG extends ComparisonInstruction with Product with Serializable

    Permalink

    Compare float.

  73. object FCMPL extends ComparisonInstruction with Product with Serializable

    Permalink

    Compare float.

  74. object FCONST_0 extends LoadConstantInstruction[Float] with FConstInstruction with Product with Serializable

    Permalink

    Push the float constant 0.0 onto the operand stack.

  75. object FCONST_1 extends LoadConstantInstruction[Float] with FConstInstruction with Product with Serializable

    Permalink

    Push the float constant 1.0 onto the operand stack.

  76. object FCONST_2 extends LoadConstantInstruction[Float] with FConstInstruction with Product with Serializable

    Permalink

    Push the float constant 2.0 onto the operand stack.

  77. object FConstInstruction

    Permalink
  78. object FDIV extends FloatingPointDivideInstruction with Product with Serializable

    Permalink

    Divide float.

  79. object FLOAD extends Serializable

    Permalink
  80. object FLOAD_0 extends LoadLocalVariableInstruction with FLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load float from local variable with index 0.

  81. object FLOAD_1 extends LoadLocalVariableInstruction with FLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load float from local variable with index 1.

  82. object FLOAD_2 extends LoadLocalVariableInstruction with FLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load float from local variable with index 2.

  83. object FLOAD_3 extends LoadLocalVariableInstruction with FLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load float from local variable with index 3.

  84. object FLoadInstruction

    Permalink
  85. object FMUL extends MultiplyInstruction with Product with Serializable

    Permalink

    Multiply float.

  86. object FNEG extends NegateInstruction with Product with Serializable

    Permalink

    Negate float.

  87. object FREM extends FloatingPointRemainderInstruction with Product with Serializable

    Permalink

    Remainder float.

  88. object FRETURN extends ReturnValueInstruction with Product with Serializable

    Permalink

    Return float from method.

  89. object FSTORE extends Serializable

    Permalink
  90. object FSTORE_0 extends StoreLocalVariableInstruction with FStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store float into local variable with index 0.

  91. object FSTORE_1 extends StoreLocalVariableInstruction with FStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store float into local variable with index 1.

  92. object FSTORE_2 extends StoreLocalVariableInstruction with FStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store float into local variable with index 2.

  93. object FSTORE_3 extends StoreLocalVariableInstruction with FStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store float into local variable with index 3.

  94. object FSUB extends SubtractInstruction with Product with Serializable

    Permalink

    Subtract float.

  95. object FStoreInstruction

    Permalink
  96. object FieldAccess

    Permalink

    Defines an extractor to facilitate pattern matching on field access instructions.

  97. object FieldReadAccess

    Permalink

    Defines an extractor to facilitate pattern matching on field read access instructions.

  98. object FieldWriteAccess

    Permalink

    Defines an extractor to facilitate pattern matching on field write access instructions.

  99. object GETFIELD extends Serializable

    Permalink

    General information and factory methods.

  100. object GETSTATIC extends Serializable

    Permalink

    General information and factory methods.

  101. object GOTO extends Serializable

    Permalink

    Defines constants and factory methods.

  102. object GOTO_W extends Serializable

    Permalink

    Defines constants and factory methods.

  103. object GotoInstruction

    Permalink
  104. object I2B extends NumericConversionInstruction with Product with Serializable

    Permalink

    Convert int to byte.

  105. object I2C extends NumericConversionInstruction with Product with Serializable

    Permalink

    Convert int to char.

  106. object I2D extends NumericConversionInstruction with Product with Serializable

    Permalink

    Convert int to double.

  107. object I2F extends NumericConversionInstruction with Product with Serializable

    Permalink

    Convert int to float.

  108. object I2L extends NumericConversionInstruction with Product with Serializable

    Permalink

    Convert int to long.

  109. object I2S extends NumericConversionInstruction with Product with Serializable

    Permalink

    Convert int to short.

  110. object IADD extends AddInstruction with Product with Serializable

    Permalink

    Add int.

  111. object IALOAD extends ArrayLoadInstruction with PrimitiveArrayAccess with Product with Serializable

    Permalink

    Load int from array.

  112. object IAND extends BitwiseInstruction with Product with Serializable

    Permalink

    Boolean AND int.

  113. object IASTORE extends PrimitiveArrayStoreInstruction with PrimitiveArrayAccess with Product with Serializable

    Permalink

    Store into int array.

  114. object ICONST_0 extends LoadConstantInstruction[Int] with IConstInstruction with Product with Serializable

    Permalink

    Push int constant value 0.

  115. object ICONST_1 extends LoadConstantInstruction[Int] with IConstInstruction with Product with Serializable

    Permalink

    Push int constant value 1.

  116. object ICONST_2 extends LoadConstantInstruction[Int] with IConstInstruction with Product with Serializable

    Permalink

    Push int constant value 2.

  117. object ICONST_3 extends LoadConstantInstruction[Int] with IConstInstruction with Product with Serializable

    Permalink

    Push int constant value 3.

  118. object ICONST_4 extends LoadConstantInstruction[Int] with IConstInstruction with Product with Serializable

    Permalink

    Push int constant value 4.

  119. object ICONST_5 extends LoadConstantInstruction[Int] with IConstInstruction with Product with Serializable

    Permalink

    Push int constant value 5.

  120. object ICONST_M1 extends LoadConstantInstruction[Int] with IConstInstruction with Product with Serializable

    Permalink

    Push int constant.

  121. object IConstInstruction

    Permalink
  122. object IDIV extends IntegerDivideInstruction with Product with Serializable

    Permalink

    Divide int.

  123. object IF0Instruction

    Permalink
  124. object IFEQ extends Serializable

    Permalink

    Defines constants and factory methods.

  125. object IFGE extends Serializable

    Permalink

    Defines constants and factory methods.

  126. object IFGT extends Serializable

    Permalink

    Defines constants and factory methods.

  127. object IFLE extends Serializable

    Permalink

    Defines constants and factory methods.

  128. object IFLT extends Serializable

    Permalink

    Defines constants and factory methods.

  129. object IFNE extends Serializable

    Permalink

    Defines constants and factory methods.

  130. object IFNONNULL extends Serializable

    Permalink

    Defines constants and factory methods.

  131. object IFNULL extends Serializable

    Permalink

    Defines constants and factory methods.

  132. object IF_ACMPEQ extends Serializable

    Permalink

    Defines constants and factory methods.

  133. object IF_ACMPNE extends Serializable

    Permalink

    Defines constants and factory methods.

  134. object IF_ICMPEQ extends Serializable

    Permalink

    Defines constants and factory methods.

  135. object IF_ICMPGE extends Serializable

    Permalink
  136. object IF_ICMPGT extends Serializable

    Permalink

    Defines constants and factory methods.

  137. object IF_ICMPLE extends Serializable

    Permalink

    Defines constants and factory methods.

  138. object IF_ICMPLT extends Serializable

    Permalink

    Defines constants and factory methods.

  139. object IF_ICMPNE extends Serializable

    Permalink

    Defines constants and factory methods.

  140. object IINC extends Serializable

    Permalink
  141. object ILOAD extends Serializable

    Permalink
  142. object ILOAD_0 extends LoadLocalVariableInstruction with ILoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load int from local variable with index 0.

  143. object ILOAD_1 extends LoadLocalVariableInstruction with ILoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load int from local variable with index 1.

  144. object ILOAD_2 extends LoadLocalVariableInstruction with ILoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load int from local variable with index 2.

  145. object ILOAD_3 extends LoadLocalVariableInstruction with ILoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load int from local variable with index 3.

  146. object IMUL extends MultiplyInstruction with Product with Serializable

    Permalink

    Multiply int.

  147. object INCOMPLETE_INVOKEDYNAMIC extends InvocationInstruction with INVOKEDYNAMIC with Product with Serializable

    Permalink

    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 invokedynamic instructions 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.

  148. object INEG extends NegateInstruction with Product with Serializable

    Permalink

    Negate int.

  149. object INSTANCEOF extends Serializable

    Permalink

    General information and factory methods.

  150. object INVOKEDYNAMIC

    Permalink

    Common constants and extractor methods related to INVOKEDYNAMIC instructions.

  151. object INVOKEINTERFACE extends Serializable

    Permalink

    General information and factory methods.

  152. object INVOKESPECIAL extends Serializable

    Permalink

    General information and factory methods.

  153. object INVOKESTATIC extends Serializable

    Permalink

    General information and factory methods.

  154. object INVOKEVIRTUAL extends Serializable

    Permalink

    General information and factory methods.

  155. object IOR extends BitwiseInstruction with Product with Serializable

    Permalink

    Boolean OR int.

  156. object IREM extends IntegerRemainderInstruction with Product with Serializable

    Permalink

    Remainder int.

  157. object IRETURN extends ReturnValueInstruction with Product with Serializable

    Permalink

    Return int from method.

  158. object ISHL extends ShiftInstruction with Product with Serializable

    Permalink

    Shift left int.

  159. object ISHR extends ShiftInstruction with Product with Serializable

    Permalink

    Arithmetic shift right int.

  160. object ISTORE extends Serializable

    Permalink
  161. object ISTORE_0 extends StoreLocalVariableInstruction with IStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store int into local variable with index 0.

  162. object ISTORE_1 extends StoreLocalVariableInstruction with IStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store int into local variable with index 1.

  163. object ISTORE_2 extends StoreLocalVariableInstruction with IStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store int into local variable with index 2.

  164. object ISTORE_3 extends StoreLocalVariableInstruction with IStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store int into local variable with index 3.

  165. object ISUB extends SubtractInstruction with Product with Serializable

    Permalink

    Subtract int.

  166. object IStoreInstruction

    Permalink
  167. object IUSHR extends ShiftInstruction with Product with Serializable

    Permalink

    Logical shift right int.

  168. object IXOR extends BitwiseInstruction with Product with Serializable

    Permalink

    Boolean XOR int.

  169. object Instruction

    Permalink

    Functionality common to instructions.

  170. object JSR extends Serializable

    Permalink

    Defines constants and factory methods.

  171. object JSR_W extends Serializable

    Permalink

    Defines constants and factory methods.

  172. object L2D extends NumericConversionInstruction with Product with Serializable

    Permalink

    Convert long to double.

  173. object L2F extends NumericConversionInstruction with Product with Serializable

    Permalink

    Convert long to float.

  174. object L2I extends NumericConversionInstruction with Product with Serializable

    Permalink

    Convert long to int.

  175. object LADD extends AddInstruction with Product with Serializable

    Permalink

    Add long.

  176. object LALOAD extends ArrayLoadInstruction with PrimitiveArrayAccess with Product with Serializable

    Permalink

    Load long from array.

  177. object LAND extends BitwiseInstruction with Product with Serializable

    Permalink

    Boolean AND long.

  178. object LASTORE extends PrimitiveArrayStoreInstruction with PrimitiveArrayAccess with Product with Serializable

    Permalink

    Store into long array.

  179. object LCMP extends ComparisonInstruction with Product with Serializable

    Permalink

    Compare long.

  180. object LCONST_0 extends LoadConstantInstruction[Long] with LConstInstruction with Product with Serializable

    Permalink

    Push the long constant 0 onto the operand stack.

  181. object LCONST_1 extends LoadConstantInstruction[Long] with LConstInstruction with Product with Serializable

    Permalink

    Push the long constant 1 onto the operand stack.

  182. object LConstInstruction

    Permalink
  183. object LDC

    Permalink

    Defines factory and extractor methods for LDC instructions.

  184. object LDC2_W

    Permalink

    Defines factory and extractor methods for LDC2_W instructions.

  185. object LDCClass

    Permalink
  186. object LDCFloat

    Permalink
  187. object LDCInt

    Permalink
  188. object LDCMethodHandle

    Permalink
  189. object LDCMethodType

    Permalink
  190. object LDCString

    Permalink
  191. object LDC_W

    Permalink

    Defines factory and extractor methods for LDC_W instructions.

  192. object LDIV extends IntegerDivideInstruction with Product with Serializable

    Permalink

    Divide long.

  193. object LLOAD extends Serializable

    Permalink
  194. object LLOAD_0 extends LoadLocalVariableInstruction with LLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load long from local variable with index 0.

  195. object LLOAD_1 extends LoadLocalVariableInstruction with LLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load long from local variable with index 1.

  196. object LLOAD_2 extends LoadLocalVariableInstruction with LLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load long from local variable with index 2.

  197. object LLOAD_3 extends LoadLocalVariableInstruction with LLoadInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Load long from local variable with index 3.

  198. object LLoadInstruction

    Permalink
  199. object LMUL extends MultiplyInstruction with Product with Serializable

    Permalink

    Multiply long.

  200. object LNEG extends NegateInstruction with Product with Serializable

    Permalink

    Negate long.

  201. object LOOKUPSWITCH extends Serializable

    Permalink

    Defines constants and factory methods.

  202. object LOR extends BitwiseInstruction with Product with Serializable

    Permalink

    Boolean OR long.

  203. object LREM extends IntegerRemainderInstruction with Product with Serializable

    Permalink

    Remainder long.

  204. object LRETURN extends ReturnValueInstruction with Product with Serializable

    Permalink

    Return long from method.

  205. object LSHL extends ShiftInstruction with Product with Serializable

    Permalink

    Shift left long.

  206. object LSHR extends ShiftInstruction with Product with Serializable

    Permalink

    Arithmetic shift right long.

  207. object LSTORE extends Serializable

    Permalink
  208. object LSTORE_0 extends StoreLocalVariableInstruction with LStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store long into local variable with index 0.

  209. object LSTORE_1 extends StoreLocalVariableInstruction with LStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store long into local variable with index 1.

  210. object LSTORE_2 extends StoreLocalVariableInstruction with LStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store long into local variable with index 2.

  211. object LSTORE_3 extends StoreLocalVariableInstruction with LStoreInstruction with ImplicitLocalVariableIndex with Product with Serializable

    Permalink

    Store long into local variable with index 3.

  212. object LSUB extends SubtractInstruction with Product with Serializable

    Permalink

    Subtract long.

  213. object LStoreInstruction

    Permalink
  214. object LUSHR extends ShiftInstruction with Product with Serializable

    Permalink

    Logical shift right long.

  215. object LXOR extends BitwiseInstruction with Product with Serializable

    Permalink

    Boolean XOR long.

  216. object LoadConstantInstruction

    Permalink

    Defines factory methods for LoadConstantInstructions.

  217. object LoadLocalVariableInstruction

    Permalink

    Defines a factory method for LoadLocalVariableInstructions.

  218. object LocalVariableAccess

    Permalink

    Defines an extractor to determine the local variable index accessed by the instruction.

  219. object MONITORENTER extends SynchronizationInstruction with Product with Serializable

    Permalink

    Enter monitor for object.

  220. object MONITOREXIT extends SynchronizationInstruction with Product with Serializable

    Permalink

    Exit monitor for object.

  221. object MULTIANEWARRAY extends Serializable

    Permalink

    General information and factory methods.

  222. object MethodCompletionInstruction

    Permalink
  223. object MethodInvocationInstruction

    Permalink

    Defines commonly used constants and an extractor method to match MethodInvocationInstruction instructions.

  224. object NEW extends Serializable

    Permalink

    General information and factory methods.

  225. object NEWARRAY

    Permalink
  226. object NOP extends Instruction with ConstantLengthInstruction with Product with Serializable

    Permalink

    Do nothing.

  227. object NoExpression extends ExpressionResultLocation with Product with Serializable

    Permalink
  228. object NoMethodCompletionInstruction

    Permalink
  229. object POP extends StackManagementInstruction with PopInstruction with Product with Serializable

    Permalink

    Pop the top operand stack value.

  230. object POP2 extends StackManagementInstruction with PopInstruction with Product with Serializable

    Permalink

    Pops the top computational type category 2 value or the two top operand stack values if both have computational type category 1.

  231. object PUTFIELD extends Serializable

    Permalink

    General information and factory methods.

  232. object PUTSTATIC extends Serializable

    Permalink

    General information and factory methods.

  233. object PrimitiveArrayAccess

    Permalink
  234. object RET extends Serializable

    Permalink
  235. object RETURN extends ReturnInstruction with Product with Serializable

    Permalink

    Return void from method.

  236. object ReturnInstruction

    Permalink

    Defines common values and a factory method to create a ReturnInstruction based on the expected type.

  237. object ReturnInstructions

    Permalink

    Defines extractor methods related to return instructions.

  238. object SALOAD extends ArrayLoadInstruction with PrimitiveArrayAccess with Product with Serializable

    Permalink

    Load short from array.

  239. object SASTORE extends PrimitiveArrayStoreInstruction with PrimitiveArrayAccess with Product with Serializable

    Permalink

    Store into short array.

  240. object SIPUSH extends Serializable

    Permalink
  241. object SWAP extends StackManagementInstruction with Product with Serializable

    Permalink

    Swap the top two operand stack values.

  242. object ShiftInstruction

    Permalink
  243. object SimpleConditionalBranchInstruction

    Permalink

    Extractor for SimpleConditionalBranchInstructions.

  244. object Stack extends ExpressionResultLocation with Product with Serializable

    Permalink
  245. object StackBasedBinaryArithmeticInstruction

    Permalink
  246. object StoreLocalVariableInstruction

    Permalink

    Factory for StoreLocalVariableInstructions.

  247. object SwitchInstruction

    Permalink

    Extractor for SwitchInstructions.

  248. object SynchronizationInstruction

    Permalink
  249. object TABLESWITCH extends Serializable

    Permalink

    Defines constants and factory methods.

  250. implicit final val TypeConversionInstructions: TypeConversionFactory[Array[Instruction]] { ... /* 41 definitions in type refinement */ }

    Permalink
  251. object UnaryArithmeticInstruction

    Permalink
  252. object UnconditionalBranchInstruction

    Permalink

    Extractor for UnconditionalBranchInstructions.

  253. object VirtualMethodInvocationInstruction

    Permalink
  254. object WIDE extends Instruction with ConstantLengthInstruction with Product with Serializable

    Permalink

    Extend local variable index by additional bytes.

Inherited from AnyRef

Inherited from Any

Ungrouped