@Override public void visit(MonitorExitStatement statement) { statement.getObjectRef().acceptVisitor(this); } }
@Override public void visit(MonitorExitStatement statement) { try { output.writeByte(19); writeLocation(statement.getLocation()); writeExpr(statement.getObjectRef()); } catch (IOException e) { throw new IOExceptionWrapper(e); } }
@Override public void visit(MonitorExitStatement statement) { pushLocation(statement.getLocation()); try { statement.getObjectRef().acceptVisitor(this); statement.setObjectRef(resultExpr); resultStmt = statement; } finally { popLocation(); } }
@Override public void visit(MonitorExitStatement statement) { try { if (async) { writer.appendMethodBody(NameFrequencyEstimator.MONITOR_EXIT_METHOD).append("("); precedence = Precedence.min(); statement.getObjectRef().acceptVisitor(this); writer.append(");").softNewLine(); } else { writer.appendMethodBody(NameFrequencyEstimator.MONITOR_EXIT_SYNC_METHOD).append('('); precedence = Precedence.min(); statement.getObjectRef().acceptVisitor(this); writer.append(");").softNewLine(); } } catch (IOException ex) { throw new RenderingException("IO error occurred", ex); } }
@Override public void visit(MonitorExitStatement statement) { statement.getObjectRef().acceptVisitor(this); } }
@Override public void visit(MonitorExitStatement statement) { try { output.writeByte(19); writeLocation(statement.getLocation()); writeExpr(statement.getObjectRef()); } catch (IOException e) { throw new IOExceptionWrapper(e); } }
@Override public void visit(MonitorExitStatement statement) { pushLocation(statement.getLocation()); try { statement.getObjectRef().acceptVisitor(this); statement.setObjectRef(resultExpr); resultStmt = statement; } finally { popLocation(); } } }
@Override public void visit(MonitorExitStatement statement) { try { if (async) { MethodReference monitorExitRef = new MethodReference( Object.class, "monitorExit", Object.class, void.class); writer.appendMethodBody(monitorExitRef).append("("); precedence = Precedence.min(); statement.getObjectRef().acceptVisitor(this); writer.append(");").softNewLine(); } else { MethodReference monitorEnterRef = new MethodReference( Object.class, "monitorExitSync", Object.class, void.class); writer.appendMethodBody(monitorEnterRef).append('('); precedence = Precedence.min(); statement.getObjectRef().acceptVisitor(this); writer.append(");").softNewLine(); } } catch (IOException ex) { throw new RenderingException("IO error occurred", ex); } }