source: trip-planner-front/node_modules/@babel/types/lib/converters/toStatement.js@ 59329aa

Last change on this file since 59329aa was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago

initial commit

  • Property mode set to 100644
File size: 984 bytes
Line 
1"use strict";
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.default = void 0;
7
8var _generated = require("../validators/generated");
9
10var _generated2 = require("../builders/generated");
11
12var _default = toStatement;
13exports.default = _default;
14
15function toStatement(node, ignore) {
16 if ((0, _generated.isStatement)(node)) {
17 return node;
18 }
19
20 let mustHaveId = false;
21 let newType;
22
23 if ((0, _generated.isClass)(node)) {
24 mustHaveId = true;
25 newType = "ClassDeclaration";
26 } else if ((0, _generated.isFunction)(node)) {
27 mustHaveId = true;
28 newType = "FunctionDeclaration";
29 } else if ((0, _generated.isAssignmentExpression)(node)) {
30 return (0, _generated2.expressionStatement)(node);
31 }
32
33 if (mustHaveId && !node.id) {
34 newType = false;
35 }
36
37 if (!newType) {
38 if (ignore) {
39 return false;
40 } else {
41 throw new Error(`cannot turn ${node.type} to a statement`);
42 }
43 }
44
45 node.type = newType;
46 return node;
47}
Note: See TracBrowser for help on using the repository browser.