visitConstructObject()

in lib/generator.js [1602:1624]


  visitConstructObject(ast, level, env) {
    if (ast && ast.fields && ast.fields.length > 0) {
      this.emit('\n');
      this.emit('{\n', level);
      let i = 0;
      ast.fields.forEach((element) => {
        let comments = DSL.comment.getFrontComments(this.comments, element.tokenRange[0]);
        this.visitComments(comments, level + 1);
        this.emit(_avoidReserveName(_upperFirst(_name(element.fieldName))), level + 1);
        this.emit(' = ');
        this.visitExpr(element.expr, level + 1, env);
        this.emit(',\n');
        i++;
      });
      // find the last item's back comment
      let comments = DSL.comment.getBackComments(this.comments, ast.fields[i - 1].tokenRange[1]);
      this.visitComments(comments, level + 1);
      this.emit('}', level);

    } else {
      this.emit('()');
    }
  }