/*
  * @see ASTVisitor#visit(LabeledStatement)
  */
 @Override
 public boolean visit(LabeledStatement node) {
   node.getLabel().accept(this);
   this.fBuffer.append(": "); // $NON-NLS-1$
   node.getBody().accept(this);
   return false;
 }
Exemplo n.º 2
0
  public void testLinenoLabel() {
    AstRoot root = parse("\nfoo:\n" + "a = 1;\n" + "bar:\n" + "b = 2;\n");

    LabeledStatement firstStmt = (LabeledStatement) root.getFirstChild();
    LabeledStatement secondStmt = (LabeledStatement) firstStmt.getNext();

    assertEquals(1, firstStmt.getLineno());
    assertEquals(3, secondStmt.getLineno());
  }
 @Override
 protected void checkValidLabeledStatement(final LabeledStatement labelDeclaration) {
   if (!(labelDeclaration.getStatement() instanceof LoopStatement)) {
     throw Jooc.error(
         this, "label '" + getOptLabel().getName() + "' does not reference a loop statement");
   }
 }
Exemplo n.º 4
0
 @Override
 public Void visitLabeledStatement(LabeledStatement node) {
   visitList(node.getLabels(), " ", " ");
   visit(node.getStatement());
   return null;
 }