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
| "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 ECMAScript code with Esprima:
| //
| // const ast = recast.parse(source, {
| // parser: require("recast/parsers/esprima")
| // });
| //
| var util_1 = require("../lib/util");
| function parse(source, options) {
| var comments = [];
| var ast = require("esprima").parse(source, {
| loc: true,
| locations: true,
| comment: true,
| onComment: comments,
| range: (0, util_1.getOption)(options, "range", false),
| tolerant: (0, util_1.getOption)(options, "tolerant", true),
| tokens: true,
| jsx: (0, util_1.getOption)(options, "jsx", false),
| sourceType: (0, util_1.getOption)(options, "sourceType", "module"),
| });
| if (!Array.isArray(ast.comments)) {
| ast.comments = comments;
| }
| return ast;
| }
| exports.parse = parse;
|
|