TextBuffer (Statement stat, int indent, boolean semicolon, BytecodeMappingTracer tracer) { TextBuffer buf = stat.toJava(indent, tracer); List<StatEdge> lstSuccs = stat.getSuccessorEdges(EdgeType.DIRECT_ALL); if (lstSuccs.size() == 1) { StatEdge edge = lstSuccs.get(0); if (edge.getType() != EdgeType.REGULAR && edge.explicit && edge.getDestination().type != StatementType.DUMMY_EXIT) { buf.appendIndent(indent); if (EdgeType.BREAK.equals(edge.getType())) { addDeletedGotoInstructionMapping(stat, tracer); buf.append("break"); } else if (EdgeType.CONTINUE.equals(edge.getType())) { addDeletedGotoInstructionMapping(stat, tracer); buf.append("continue"); } if (edge.labeled) { buf.append(" label").append(Integer.toString(edge.closure.id)); } buf.append(";").appendLineSeparator(); tracer.incrementCurrentSourceLine(); } } if (buf.length() == 0 && semicolon) { buf.appendIndent(indent).append(";").appendLineSeparator(); tracer.incrementCurrentSourceLine(); } return buf; }