@Override public Boolean visitLabeledStatement(LabeledStatementTree tree, Void unused) { // break/continue targets have already been resolved by javac, so // there's nothing to do here return scan(tree.getStatement()); }
@Override public ULabeledStatement visitLabeledStatement(LabeledStatementTree tree, Void v) { return ULabeledStatement.create(tree.getLabel(), template(tree.getStatement())); }
@Override public Choice<State<JCLabeledStatement>> visitLabeledStatement( final LabeledStatementTree node, State<?> state) { return chooseSubtrees( state, s -> unifyStatement(node.getStatement(), s), stmt -> maker().Labelled((Name) node.getLabel(), stmt)); }
@Override public Result visitLabeledStatement(LabeledStatementTree node, BreakContext cxt) { cxt.enter(node.getLabel()); try { return node.getStatement().accept(this, cxt); } finally { cxt.exit(node.getLabel()); } }
@Override public Choice<Unifier> visitLabeledStatement(LabeledStatementTree node, Unifier unifier) { unifier.putBinding(key(), node.getLabel()); return getStatement().unify(node.getStatement(), unifier); } }
@Override public Boolean visitLabeledStatement(LabeledStatementTree tree, Void unused) { // break/continue targets have already been resolved by javac, so // there's nothing to do here return scan(tree.getStatement()); }
public R visitLabeledStatement(LabeledStatementTree node, P p) { return scan(node.getStatement(), p); }
@Override public Void visitLabeledStatement(LabeledStatementTree node, Void p) { return visit(node.getStatement(), p); }
@Override public Object visitLabeledStatement(LabeledStatementTree node, Object p) { return scan(node.getStatement(), p); }
@Override public JCTree visitLabeledStatement(LabeledStatementTree node, Void p) { return node.getStatement().accept(this, p); } }
@Override public String visitLabeledStatement(LabeledStatementTree node, Void v) { StringBuilder out = new StringBuilder(); StatementTree stmt = node.getStatement(); String label = node.getLabel().toString() + ":\n"; appendAsInlineComment(out, "FIX ME: labeled statements not allowed in Gosu"); out.append(label); appendIndent(out); out.append(stmt.accept(this, v)); return out.toString(); }
@Override public Void visitLabeledStatement(LabeledStatementTree expected, Tree actual) { Optional<LabeledStatementTree> other = checkTypeAndCast(expected, actual); if (!other.isPresent()) { addTypeMismatch(expected, actual); return null; } checkForDiff(expected.getLabel().contentEquals(other.get().getLabel()), "Expected statement label to be <%s> but was <%s>.", expected.getLabel(), other.get().getLabel()); scan(expected.getStatement(), other.get().getStatement()); return null; }
@Override public Void visitLabeledStatement(LabeledStatementTree expected, Tree actual) { Optional<LabeledStatementTree> other = checkTypeAndCast(expected, actual); if (!other.isPresent()) { addTypeMismatch(expected, actual); return null; } checkForDiff(expected.getLabel().contentEquals(other.get().getLabel()), "Expected statement label to be <%s> but was <%s>.", expected.getLabel(), other.get().getLabel()); scan(expected.getStatement(), other.get().getStatement()); return null; }
@Override public Void visitLabeledStatement(LabeledStatementTree expected, Tree actual) { Optional<LabeledStatementTree> other = checkTypeAndCast(expected, actual); if (!other.isPresent()) { addTypeMismatch(expected, actual); return null; } checkForDiff(expected.getLabel().contentEquals(other.get().getLabel()), "Expected statement label to be <%s> but was <%s>.", expected.getLabel(), other.get().getLabel()); scan(expected.getStatement(), other.get().getStatement()); return null; }
@Override public ULabeledStatement visitLabeledStatement(LabeledStatementTree tree, Void v) { return ULabeledStatement.create(tree.getLabel(), template(tree.getStatement())); }
protected final LabeledStatementTree rewriteChildren(LabeledStatementTree tree) { StatementTree body = (StatementTree)translate(tree.getStatement()); if (body!=tree.getStatement()) { LabeledStatementTree n = make.LabeledStatement(tree.getLabel(), body); model.setType(n, model.getType(tree)); copyCommentTo(tree,n); copyPosTo(tree,n); tree = n; } return tree; }
@Override public Choice<State<JCLabeledStatement>> visitLabeledStatement( final LabeledStatementTree node, State<?> state) { return chooseSubtrees( state, s -> unifyStatement(node.getStatement(), s), stmt -> maker().Labelled((Name) node.getLabel(), stmt)); }
@Override public Choice<Unifier> visitLabeledStatement(LabeledStatementTree node, Unifier unifier) { unifier.putBinding(key(), node.getLabel()); return getStatement().unify(node.getStatement(), unifier); } }
@Override public Result visitLabeledStatement(LabeledStatementTree node, BreakContext cxt) { cxt.enter(node.getLabel()); try { return node.getStatement().accept(this, cxt); } finally { cxt.exit(node.getLabel()); } }
@Override public Tree visitLabeledStatement(LabeledStatementTree tree, Void p) { LabeledStatementTree n = make.LabeledStatement(tree.getLabel(), tree.getStatement()); model.setType(n, model.getType(tree)); comments.copyComments(tree, n); model.setPos(n, model.getPos(tree)); return n; }