use of org.candle.decompiler.intermediate.expression.Expression in project candle-decompiler by bradsdavis.
the class MethodIntermediateVisitor method visitIFGE.
@Override
public void visitIFGE(IFGE obj) {
Expression right = new Resolved(context.getCurrentInstruction(), null, "0");
Expression left = context.getExpressions().pop();
processMultiConditionalStatement(OperationType.GREATER_EQUAL, left, right);
}
use of org.candle.decompiler.intermediate.expression.Expression in project candle-decompiler by bradsdavis.
the class MethodIntermediateVisitor method visitIRETURN.
public void visitIRETURN(IRETURN instruction) {
Expression exp = context.getExpressions().pop();
Return ret = new Return(context.getCurrentInstruction(), exp);
processReturn(ret);
}
use of org.candle.decompiler.intermediate.expression.Expression in project candle-decompiler by bradsdavis.
the class MethodIntermediateVisitor method visitANEWARRAY.
/**
* Decompiles "new object array" operations.
*/
public void visitANEWARRAY(ANEWARRAY instruction) {
Type type = instruction.getType(context.getMethodGen().getConstantPool());
Expression count = context.getExpressions().pop();
ArrayCreation nai = null;
if (context.getCurrentInstruction().getNext().getInstruction() instanceof DUP) {
nai = new NewConstantArrayInstance(context.getCurrentInstruction(), type, count);
} else {
nai = new ArrayCreation(context.getCurrentInstruction(), type, count);
}
context.getExpressions().push(nai);
}
use of org.candle.decompiler.intermediate.expression.Expression in project candle-decompiler by bradsdavis.
the class MethodIntermediateVisitor method visitIFLE.
@Override
public void visitIFLE(IFLE obj) {
Expression right = new Resolved(context.getCurrentInstruction(), null, "0");
Expression left = context.getExpressions().pop();
processMultiConditionalStatement(OperationType.LESS_EQUAL, left, right);
}
use of org.candle.decompiler.intermediate.expression.Expression in project candle-decompiler by bradsdavis.
the class MethodIntermediateVisitor method visitARETURN.
public void visitARETURN(ARETURN instruction) {
Expression exp = context.getExpressions().pop();
Return ret = new Return(context.getCurrentInstruction(), exp);
processReturn(ret);
}
Aggregations