private void writeSwitch(SwitchBlock switch_) { writeStatements(switch_.source); DSwitch last = (DSwitch)switch_.source.nodes.last; string cond = buildExpression(last.getOperand(0)); outputLine("switch (" + cond + ")"); outputLine("{"); increaseIndent(); for (int i = 0; i < switch_.numCases; i++) { SwitchBlock.Case cas = switch_.getCase(i); outputLine("case " + cas.value + ": {"); increaseIndent(); writeBlock(cas.target); decreaseIndent(); outputLine("}"); } outputLine("default: {"); increaseIndent(); writeBlock(switch_.defaultCase); decreaseIndent(); outputLine("}"); decreaseIndent(); outputLine("}"); if (switch_.join != null) { writeBlock(switch_.join); } }
private void writeSwitch(SwitchBlock switch_) { writeStatements(switch_.source); DSwitch last = (DSwitch)switch_.source.nodes.last; string cond = buildExpression(last.getOperand(0)); outputLine("switch (" + cond + ")"); outputLine("{"); increaseIndent(); for (int i = 0; i < switch_.numCases; i++) { SwitchBlock.Case cas = switch_.getCase(i); outputLine("case " + cas.value + ": {"); increaseIndent(); writeBlock(cas.target); decreaseIndent(); outputLine("}"); } outputLine("default: {"); increaseIndent(); writeBlock(switch_.defaultCase); decreaseIndent(); outputLine("}"); decreaseIndent(); outputLine("}"); if (switch_.join != null) writeBlock(switch_.join); }