/** * Translate the "test" expression and contents of this element. * The contents will be ignored if we know the test will always fail. */ public void translate(ClassGenerator classGen, MethodGenerator methodGen) { final InstructionList il = methodGen.getInstructionList(); _test.translateDesynthesized(classGen, methodGen); // remember end of condition final InstructionHandle truec = il.getEnd(); if (!_ignore) { translateContents(classGen, methodGen); } _test.backPatchFalseList(il.append(NOP)); _test.backPatchTrueList(truec.getNext()); } }
if (whens.hasNext() || otherwise != null) { nextElement = il.append(new GOTO(null)); test.backPatchFalseList(nextElement); test.backPatchFalseList(exit = il.append(NOP)); test.backPatchTrueList(truec.getNext());
exp.backPatchFalseList(restore); _falseList.add(il.append(new GOTO(null)));
/** * Translate the "test" expression and contents of this element. * The contents will be ignored if we know the test will always fail. */ public void translate(ClassGenerator classGen, MethodGenerator methodGen) { final InstructionList il = methodGen.getInstructionList(); _test.translateDesynthesized(classGen, methodGen); // remember end of condition final InstructionHandle truec = il.getEnd(); if (!_ignore) { translateContents(classGen, methodGen); } _test.backPatchFalseList(il.append(NOP)); _test.backPatchTrueList(truec.getNext()); } }
/** * Translate the "test" expression and contents of this element. * The contents will be ignored if we know the test will always fail. */ public void translate(ClassGenerator classGen, MethodGenerator methodGen) { final InstructionList il = methodGen.getInstructionList(); _test.translateDesynthesized(classGen, methodGen); // remember end of condition final InstructionHandle truec = il.getEnd(); if (!_ignore) { translateContents(classGen, methodGen); } _test.backPatchFalseList(il.append(NOP)); _test.backPatchTrueList(truec.getNext()); } }
/** * Translate the "test" expression and contents of this element. * The contents will be ignored if we know the test will always fail. */ public void translate(ClassGenerator classGen, MethodGenerator methodGen) { final InstructionList il = methodGen.getInstructionList(); _test.translateDesynthesized(classGen, methodGen); // remember end of condition final InstructionHandle truec = il.getEnd(); if (!_ignore) { translateContents(classGen, methodGen); } _test.backPatchFalseList(il.append(NOP)); _test.backPatchTrueList(truec.getNext()); } }
if (whens.hasNext() || otherwise != null) { nextElement = il.append(new GOTO(null)); test.backPatchFalseList(nextElement); test.backPatchFalseList(exit = il.append(NOP)); test.backPatchTrueList(truec.getNext());
if (whens.hasNext() || otherwise != null) { nextElement = il.append(new GOTO(null)); test.backPatchFalseList(nextElement); test.backPatchFalseList(exit = il.append(NOP)); test.backPatchTrueList(truec.getNext());
if (whens.hasNext() || otherwise != null) { nextElement = il.append(new GOTO(null)); test.backPatchFalseList(nextElement); test.backPatchFalseList(exit = il.append(NOP)); test.backPatchTrueList(truec.getNext());
backPatchFalseList(restore); _falseList.add(il.append(new GOTO(null)));
backPatchFalseList(restore); _falseList.add(il.append(new GOTO(null)));
backPatchFalseList(restore); _falseList.add(il.append(new GOTO(null)));
backPatchFalseList(restore); _falseList.add(il.append(new GOTO(null)));
_left.backPatchFalseList(ancestor.getLoopHandle()); // clears list
_left.backPatchFalseList(ancestor.getLoopHandle()); // clears list
il.append(new GOTO(parent)); exit.setTarget(il.append(NOP)); _left.backPatchFalseList(_loop);
il.append(new GOTO(parent)); exit.setTarget(il.append(NOP)); _left.backPatchFalseList(_loop);
exp.backPatchFalseList(restore); _falseList.add(il.append(new GOTO(null)));
exp.backPatchFalseList(restore); _falseList.add(il.append(new GOTO(null)));
exp.backPatchFalseList(restore); _falseList.add(il.append(new GOTO(null)));