Package org.jibx.binding.classes
Class InstructionBuilder
- java.lang.Object
-
- InstructionFactory
-
- org.jibx.binding.classes.InstructionBuilder
-
public class InstructionBuilder extends InstructionFactoryInstruction builder. Extends the basic instruction construction tools in BCEL with some convenience methods.- Version:
- 1.0
- Author:
- Dennis M. Sosnoski
-
-
Constructor Summary
Constructors Constructor Description InstructionBuilder(ClassGen cg, ConstantPoolGen cp)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description InvokeInstructioncreateCallInit(java.lang.String name, java.lang.String signature)Create invoke initializer instruction from signature.InvokeInstructioncreateCallInterface(java.lang.String method, java.lang.String signature)Create invoke interface method instruction from signature.InvokeInstructioncreateCallInterface(ClassItem item)Create invoke instruction for interface method.InvokeInstructioncreateCallStatic(java.lang.String method, java.lang.String signature)Create invoke static method instruction from signature.InvokeInstructioncreateCallStatic(ClassItem item)Create invoke instruction for static method.InvokeInstructioncreateCallVirtual(java.lang.String method, java.lang.String signature)Create invoke virtual method instruction from signature.InvokeInstructioncreateCallVirtual(ClassItem item)Create invoke instruction for virtual method.FieldInstructioncreateGetField(ClassItem item)Create getfield instruction.FieldInstructioncreateGetStatic(ClassItem item)Create getstatic instruction.CompoundInstructioncreateLoadConstant(int value)Create load constant instruction.CompoundInstructioncreateLoadConstant(java.lang.Object value)Create load constant instruction.CompoundInstructioncreateLoadConstant(java.lang.String value)Create load constant instruction.FieldInstructioncreatePutField(ClassItem item)Create putfield instruction.FieldInstructioncreatePutStatic(ClassItem item)Create putstatic instruction.ConstantPoolGengetConstantPoolGen()Get constant pool generator.
-
-
-
Method Detail
-
getConstantPoolGen
public ConstantPoolGen getConstantPoolGen()
Get constant pool generator.- Returns:
- constant pool generator for class
-
createLoadConstant
public CompoundInstruction createLoadConstant(int value)
Create load constant instruction. Builds the most appropriate type of instruction for the value.- Parameters:
value- constant value to be loaded- Returns:
- generated instruction information
-
createLoadConstant
public CompoundInstruction createLoadConstant(java.lang.String value)
Create load constant instruction. Loads aStringreference from the constant pool.- Parameters:
value- constant value to be loaded- Returns:
- generated instruction information
-
createLoadConstant
public CompoundInstruction createLoadConstant(java.lang.Object value)
Create load constant instruction. Loads an unwrapped primitive value or String from the constant pool.- Parameters:
value- constant value to be loaded- Returns:
- generated instruction information
-
createGetField
public FieldInstruction createGetField(ClassItem item)
Create getfield instruction. Uses the field information to generate the instruction.- Parameters:
item- information for field to be set- Returns:
- generated instruction information
-
createPutField
public FieldInstruction createPutField(ClassItem item)
Create putfield instruction. Uses the field information to generate the instruction.- Parameters:
item- information for field to be set- Returns:
- generated instruction information
-
createGetStatic
public FieldInstruction createGetStatic(ClassItem item)
Create getstatic instruction. Uses the field information to generate the instruction.- Parameters:
item- information for field to be set- Returns:
- generated instruction information
-
createPutStatic
public FieldInstruction createPutStatic(ClassItem item)
Create putstatic instruction. Uses the field information to generate the instruction.- Parameters:
item- information for field to be set- Returns:
- generated instruction information
-
createCallStatic
public InvokeInstruction createCallStatic(ClassItem item)
Create invoke instruction for static method. Uses the method information to generate the instruction.- Parameters:
item- information for method to be called- Returns:
- generated instruction information
-
createCallVirtual
public InvokeInstruction createCallVirtual(ClassItem item)
Create invoke instruction for virtual method. Uses the method information to generate the instruction.- Parameters:
item- information for method to be called- Returns:
- generated instruction information
-
createCallInterface
public InvokeInstruction createCallInterface(ClassItem item)
Create invoke instruction for interface method. Uses the method information to generate the instruction.- Parameters:
item- information for method to be called- Returns:
- generated instruction information
-
createCallStatic
public InvokeInstruction createCallStatic(java.lang.String method, java.lang.String signature)Create invoke static method instruction from signature.- Parameters:
method- fully qualified class and method namesignature- method signature in standard form- Returns:
- generated instruction information
-
createCallVirtual
public InvokeInstruction createCallVirtual(java.lang.String method, java.lang.String signature)Create invoke virtual method instruction from signature.- Parameters:
method- fully qualified class and method namesignature- method signature in standard form- Returns:
- generated instruction information
-
createCallInterface
public InvokeInstruction createCallInterface(java.lang.String method, java.lang.String signature)Create invoke interface method instruction from signature.- Parameters:
method- fully qualified interface and method namesignature- method signature in standard form- Returns:
- generated instruction information
-
createCallInit
public InvokeInstruction createCallInit(java.lang.String name, java.lang.String signature)Create invoke initializer instruction from signature.- Parameters:
name- fully qualified class namesignature- method signature in standard form- Returns:
- generated instruction information
-
-