Search in sources :

Example 1 with ConstInstruction

use of org.freud.analysed.classbytecode.method.instruction.ConstInstruction in project freud by LMAX-Exchange.

the class AsmMethod method visitLdcInsn.

public void visitLdcInsn(final Object constant) {
    final Instruction instruction;
    if (constant instanceof Type) {
        instruction = new ReferenceOperandInstruction(instructionList.size(), Opcode.LDC, currentLineNumber, constant.toString());
    } else {
        instruction = new ConstInstruction(instructionList.size(), Opcode.LDC, currentLineNumber, constant);
    }
    updateCurrentState(instruction);
}
Also used : ConstInstruction(org.freud.analysed.classbytecode.method.instruction.ConstInstruction) Type(org.objectweb.asm.Type) ReferenceOperandInstruction(org.freud.analysed.classbytecode.method.instruction.ReferenceOperandInstruction) Instruction(org.freud.analysed.classbytecode.method.instruction.Instruction) ReferenceOperandInstruction(org.freud.analysed.classbytecode.method.instruction.ReferenceOperandInstruction) VarInstruction(org.freud.analysed.classbytecode.method.instruction.VarInstruction) JumpInstruction(org.freud.analysed.classbytecode.method.instruction.JumpInstruction) ConstInstruction(org.freud.analysed.classbytecode.method.instruction.ConstInstruction) FieldInstruction(org.freud.analysed.classbytecode.method.instruction.FieldInstruction) IntOperandInstruction(org.freud.analysed.classbytecode.method.instruction.IntOperandInstruction) MethodInvocationInstruction(org.freud.analysed.classbytecode.method.instruction.MethodInvocationInstruction)

Aggregations

ConstInstruction (org.freud.analysed.classbytecode.method.instruction.ConstInstruction)1 FieldInstruction (org.freud.analysed.classbytecode.method.instruction.FieldInstruction)1 Instruction (org.freud.analysed.classbytecode.method.instruction.Instruction)1 IntOperandInstruction (org.freud.analysed.classbytecode.method.instruction.IntOperandInstruction)1 JumpInstruction (org.freud.analysed.classbytecode.method.instruction.JumpInstruction)1 MethodInvocationInstruction (org.freud.analysed.classbytecode.method.instruction.MethodInvocationInstruction)1 ReferenceOperandInstruction (org.freud.analysed.classbytecode.method.instruction.ReferenceOperandInstruction)1 VarInstruction (org.freud.analysed.classbytecode.method.instruction.VarInstruction)1 Type (org.objectweb.asm.Type)1