1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
| "use strict";
| Object.defineProperty(exports, "__esModule", { value: true });
| exports.parse = void 0;
| // This module is suitable for passing as options.parser when calling
| // recast.parse to process JavaScript code with Acorn:
| //
| // const ast = recast.parse(source, {
| // parser: require("recast/parsers/acorn")
| // });
| //
| var util_1 = require("../lib/util");
| function parse(source, options) {
| var comments = [];
| var tokens = [];
| var ast = require("acorn").parse(source, {
| allowHashBang: true,
| allowImportExportEverywhere: true,
| allowReturnOutsideFunction: true,
| ecmaVersion: (0, util_1.getOption)(options, "ecmaVersion", 8),
| sourceType: (0, util_1.getOption)(options, "sourceType", "module"),
| locations: true,
| onComment: comments,
| onToken: tokens,
| });
| if (!ast.comments) {
| ast.comments = comments;
| }
| if (!ast.tokens) {
| ast.tokens = tokens;
| }
| return ast;
| }
| exports.parse = parse;
|
|