@rollup/wasm-node 4.17.2 → 4.18.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +1 -1
- package/dist/bin/rollup +2 -2
- package/dist/es/getLogFilter.js +2 -2
- package/dist/es/parseAst.js +2 -2
- package/dist/es/rollup.js +2 -2
- package/dist/es/shared/node-entry.js +277 -312
- package/dist/es/shared/parseAst.js +481 -790
- package/dist/es/shared/watch.js +65 -52
- package/dist/getLogFilter.js +2 -2
- package/dist/loadConfigFile.js +2 -2
- package/dist/parseAst.js +2 -2
- package/dist/rollup.js +2 -2
- package/dist/shared/fsevents-importer.js +2 -2
- package/dist/shared/index.js +65 -52
- package/dist/shared/loadConfigFile.js +9 -3
- package/dist/shared/parseAst.js +482 -791
- package/dist/shared/rollup.js +280 -315
- package/dist/shared/watch-cli.js +2 -2
- package/dist/shared/watch.js +2 -2
- package/dist/wasm-node/bindings_wasm.js +12 -12
- package/dist/wasm-node/bindings_wasm_bg.wasm +0 -0
- package/package.json +40 -35
package/dist/shared/parseAst.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*
|
|
2
2
|
@license
|
|
3
|
-
Rollup.js v4.
|
|
4
|
-
|
|
3
|
+
Rollup.js v4.18.1
|
|
4
|
+
Mon, 08 Jul 2024 15:24:39 GMT - commit 21f9a4949358b60801c948cd4777d7a39d9e6de0
|
|
5
5
|
|
|
6
6
|
https://github.com/rollup/rollup
|
|
7
7
|
|
|
@@ -1001,6 +1001,8 @@ const EMPTY_SET = Object.freeze(new (class extends Set {
|
|
|
1001
1001
|
}
|
|
1002
1002
|
})());
|
|
1003
1003
|
|
|
1004
|
+
// This file is generated by scripts/generate-node-types.js.
|
|
1005
|
+
// Do not edit this file directly.
|
|
1004
1006
|
const ArrowFunctionExpression = 'ArrowFunctionExpression';
|
|
1005
1007
|
const BlockStatement = 'BlockStatement';
|
|
1006
1008
|
const CallExpression = 'CallExpression';
|
|
@@ -1014,6 +1016,7 @@ const ParseError = 'ParseError';
|
|
|
1014
1016
|
const Program = 'Program';
|
|
1015
1017
|
const Property = 'Property';
|
|
1016
1018
|
const ReturnStatement = 'ReturnStatement';
|
|
1019
|
+
const StaticBlock = 'StaticBlock';
|
|
1017
1020
|
const TemplateLiteral = 'TemplateLiteral';
|
|
1018
1021
|
const VariableDeclarator = 'VariableDeclarator';
|
|
1019
1022
|
|
|
@@ -1103,16 +1106,11 @@ const convertAnnotation = (position, buffer) => {
|
|
|
1103
1106
|
const type = FIXED_STRINGS[buffer[position]];
|
|
1104
1107
|
return { end, start, type };
|
|
1105
1108
|
};
|
|
1106
|
-
const convertString = (position, buffer, readString) => {
|
|
1107
|
-
const length = buffer[position++];
|
|
1108
|
-
const bytePosition = position << 2;
|
|
1109
|
-
return readString(bytePosition, length);
|
|
1110
|
-
};
|
|
1111
1109
|
|
|
1112
1110
|
// This file is generated by scripts/generate-buffer-to-ast.js.
|
|
1113
1111
|
// Do not edit this file directly.
|
|
1114
|
-
function convertProgram(buffer
|
|
1115
|
-
const node = convertNode(0,
|
|
1112
|
+
function convertProgram(buffer) {
|
|
1113
|
+
const node = convertNode(0, buffer);
|
|
1116
1114
|
switch (node.type) {
|
|
1117
1115
|
case PanicError: {
|
|
1118
1116
|
return error(getRollupError(logParseError(node.message)));
|
|
@@ -1127,1104 +1125,796 @@ function convertProgram(buffer, readString) {
|
|
|
1127
1125
|
}
|
|
1128
1126
|
/* eslint-disable sort-keys */
|
|
1129
1127
|
const nodeConverters = [
|
|
1130
|
-
function panicError(position, buffer
|
|
1131
|
-
const start = buffer[position++];
|
|
1132
|
-
const end = buffer[position++];
|
|
1133
|
-
const message = convertString(buffer[position], buffer, readString);
|
|
1128
|
+
function panicError(position, buffer) {
|
|
1134
1129
|
return {
|
|
1135
1130
|
type: 'PanicError',
|
|
1136
|
-
start,
|
|
1137
|
-
end,
|
|
1138
|
-
message
|
|
1131
|
+
start: buffer[position],
|
|
1132
|
+
end: buffer[position + 1],
|
|
1133
|
+
message: buffer.convertString(buffer[position + 2])
|
|
1139
1134
|
};
|
|
1140
1135
|
},
|
|
1141
|
-
function parseError(position, buffer
|
|
1142
|
-
const start = buffer[position++];
|
|
1143
|
-
const end = buffer[position++];
|
|
1144
|
-
const message = convertString(buffer[position], buffer, readString);
|
|
1136
|
+
function parseError(position, buffer) {
|
|
1145
1137
|
return {
|
|
1146
1138
|
type: 'ParseError',
|
|
1147
|
-
start,
|
|
1148
|
-
end,
|
|
1149
|
-
message
|
|
1139
|
+
start: buffer[position],
|
|
1140
|
+
end: buffer[position + 1],
|
|
1141
|
+
message: buffer.convertString(buffer[position + 2])
|
|
1150
1142
|
};
|
|
1151
1143
|
},
|
|
1152
|
-
function arrayExpression(position, buffer
|
|
1153
|
-
const start = buffer[position++];
|
|
1154
|
-
const end = buffer[position++];
|
|
1155
|
-
const elements = convertNodeList(buffer[position], buffer, readString);
|
|
1144
|
+
function arrayExpression(position, buffer) {
|
|
1156
1145
|
return {
|
|
1157
1146
|
type: 'ArrayExpression',
|
|
1158
|
-
start,
|
|
1159
|
-
end,
|
|
1160
|
-
elements
|
|
1147
|
+
start: buffer[position],
|
|
1148
|
+
end: buffer[position + 1],
|
|
1149
|
+
elements: convertNodeList(buffer[position + 2], buffer)
|
|
1161
1150
|
};
|
|
1162
1151
|
},
|
|
1163
|
-
function arrayPattern(position, buffer
|
|
1164
|
-
const start = buffer[position++];
|
|
1165
|
-
const end = buffer[position++];
|
|
1166
|
-
const elements = convertNodeList(buffer[position], buffer, readString);
|
|
1152
|
+
function arrayPattern(position, buffer) {
|
|
1167
1153
|
return {
|
|
1168
1154
|
type: 'ArrayPattern',
|
|
1169
|
-
start,
|
|
1170
|
-
end,
|
|
1171
|
-
elements
|
|
1172
|
-
};
|
|
1173
|
-
},
|
|
1174
|
-
function arrowFunctionExpression(position, buffer
|
|
1175
|
-
const
|
|
1176
|
-
const
|
|
1177
|
-
const flags = buffer[position++];
|
|
1178
|
-
const async = (flags & 1) === 1;
|
|
1179
|
-
const expression = (flags & 2) === 2;
|
|
1180
|
-
const generator = (flags & 4) === 4;
|
|
1181
|
-
const annotations = convertAnnotations(buffer[position++], buffer);
|
|
1182
|
-
const parameters = convertNodeList(buffer[position++], buffer, readString);
|
|
1183
|
-
const body = convertNode(buffer[position], buffer, readString);
|
|
1155
|
+
start: buffer[position],
|
|
1156
|
+
end: buffer[position + 1],
|
|
1157
|
+
elements: convertNodeList(buffer[position + 2], buffer)
|
|
1158
|
+
};
|
|
1159
|
+
},
|
|
1160
|
+
function arrowFunctionExpression(position, buffer) {
|
|
1161
|
+
const flags = buffer[position + 2];
|
|
1162
|
+
const annotations = convertAnnotations(buffer[position + 3], buffer);
|
|
1184
1163
|
return {
|
|
1185
1164
|
type: 'ArrowFunctionExpression',
|
|
1186
|
-
start,
|
|
1187
|
-
end,
|
|
1188
|
-
async,
|
|
1189
|
-
expression,
|
|
1190
|
-
generator,
|
|
1165
|
+
start: buffer[position],
|
|
1166
|
+
end: buffer[position + 1],
|
|
1167
|
+
async: (flags & 1) === 1,
|
|
1168
|
+
expression: (flags & 2) === 2,
|
|
1169
|
+
generator: (flags & 4) === 4,
|
|
1191
1170
|
...(annotations.length > 0 ? { [ANNOTATION_KEY]: annotations } : {}),
|
|
1192
|
-
params:
|
|
1193
|
-
body,
|
|
1171
|
+
params: convertNodeList(buffer[position + 4], buffer),
|
|
1172
|
+
body: convertNode(buffer[position + 5], buffer),
|
|
1194
1173
|
id: null
|
|
1195
1174
|
};
|
|
1196
1175
|
},
|
|
1197
|
-
function assignmentExpression(position, buffer
|
|
1198
|
-
const start = buffer[position++];
|
|
1199
|
-
const end = buffer[position++];
|
|
1200
|
-
const operator = FIXED_STRINGS[buffer[position++]];
|
|
1201
|
-
const left = convertNode(buffer[position++], buffer, readString);
|
|
1202
|
-
const right = convertNode(buffer[position], buffer, readString);
|
|
1176
|
+
function assignmentExpression(position, buffer) {
|
|
1203
1177
|
return {
|
|
1204
1178
|
type: 'AssignmentExpression',
|
|
1205
|
-
start,
|
|
1206
|
-
end,
|
|
1207
|
-
operator,
|
|
1208
|
-
left,
|
|
1209
|
-
right
|
|
1179
|
+
start: buffer[position],
|
|
1180
|
+
end: buffer[position + 1],
|
|
1181
|
+
operator: FIXED_STRINGS[buffer[position + 2]],
|
|
1182
|
+
left: convertNode(buffer[position + 3], buffer),
|
|
1183
|
+
right: convertNode(buffer[position + 4], buffer)
|
|
1210
1184
|
};
|
|
1211
1185
|
},
|
|
1212
|
-
function assignmentPattern(position, buffer
|
|
1213
|
-
const start = buffer[position++];
|
|
1214
|
-
const end = buffer[position++];
|
|
1215
|
-
const left = convertNode(buffer[position++], buffer, readString);
|
|
1216
|
-
const right = convertNode(buffer[position], buffer, readString);
|
|
1186
|
+
function assignmentPattern(position, buffer) {
|
|
1217
1187
|
return {
|
|
1218
1188
|
type: 'AssignmentPattern',
|
|
1219
|
-
start,
|
|
1220
|
-
end,
|
|
1221
|
-
left,
|
|
1222
|
-
right
|
|
1189
|
+
start: buffer[position],
|
|
1190
|
+
end: buffer[position + 1],
|
|
1191
|
+
left: convertNode(buffer[position + 2], buffer),
|
|
1192
|
+
right: convertNode(buffer[position + 3], buffer)
|
|
1223
1193
|
};
|
|
1224
1194
|
},
|
|
1225
|
-
function awaitExpression(position, buffer
|
|
1226
|
-
const start = buffer[position++];
|
|
1227
|
-
const end = buffer[position++];
|
|
1228
|
-
const argument = convertNode(buffer[position], buffer, readString);
|
|
1195
|
+
function awaitExpression(position, buffer) {
|
|
1229
1196
|
return {
|
|
1230
1197
|
type: 'AwaitExpression',
|
|
1231
|
-
start,
|
|
1232
|
-
end,
|
|
1233
|
-
argument
|
|
1198
|
+
start: buffer[position],
|
|
1199
|
+
end: buffer[position + 1],
|
|
1200
|
+
argument: convertNode(buffer[position + 2], buffer)
|
|
1234
1201
|
};
|
|
1235
1202
|
},
|
|
1236
|
-
function binaryExpression(position, buffer
|
|
1237
|
-
const start = buffer[position++];
|
|
1238
|
-
const end = buffer[position++];
|
|
1239
|
-
const operator = FIXED_STRINGS[buffer[position++]];
|
|
1240
|
-
const left = convertNode(buffer[position++], buffer, readString);
|
|
1241
|
-
const right = convertNode(buffer[position], buffer, readString);
|
|
1203
|
+
function binaryExpression(position, buffer) {
|
|
1242
1204
|
return {
|
|
1243
1205
|
type: 'BinaryExpression',
|
|
1244
|
-
start,
|
|
1245
|
-
end,
|
|
1246
|
-
operator,
|
|
1247
|
-
left,
|
|
1248
|
-
right
|
|
1206
|
+
start: buffer[position],
|
|
1207
|
+
end: buffer[position + 1],
|
|
1208
|
+
operator: FIXED_STRINGS[buffer[position + 2]],
|
|
1209
|
+
left: convertNode(buffer[position + 3], buffer),
|
|
1210
|
+
right: convertNode(buffer[position + 4], buffer)
|
|
1249
1211
|
};
|
|
1250
1212
|
},
|
|
1251
|
-
function blockStatement(position, buffer
|
|
1252
|
-
const start = buffer[position++];
|
|
1253
|
-
const end = buffer[position++];
|
|
1254
|
-
const body = convertNodeList(buffer[position], buffer, readString);
|
|
1213
|
+
function blockStatement(position, buffer) {
|
|
1255
1214
|
return {
|
|
1256
1215
|
type: 'BlockStatement',
|
|
1257
|
-
start,
|
|
1258
|
-
end,
|
|
1259
|
-
body
|
|
1216
|
+
start: buffer[position],
|
|
1217
|
+
end: buffer[position + 1],
|
|
1218
|
+
body: convertNodeList(buffer[position + 2], buffer)
|
|
1260
1219
|
};
|
|
1261
1220
|
},
|
|
1262
|
-
function breakStatement(position, buffer
|
|
1263
|
-
const
|
|
1264
|
-
const end = buffer[position++];
|
|
1265
|
-
const labelPosition = buffer[position];
|
|
1266
|
-
const label = labelPosition === 0 ? null : convertNode(labelPosition, buffer, readString);
|
|
1221
|
+
function breakStatement(position, buffer) {
|
|
1222
|
+
const labelPosition = buffer[position + 2];
|
|
1267
1223
|
return {
|
|
1268
1224
|
type: 'BreakStatement',
|
|
1269
|
-
start,
|
|
1270
|
-
end,
|
|
1271
|
-
label
|
|
1225
|
+
start: buffer[position],
|
|
1226
|
+
end: buffer[position + 1],
|
|
1227
|
+
label: labelPosition === 0 ? null : convertNode(labelPosition, buffer)
|
|
1272
1228
|
};
|
|
1273
1229
|
},
|
|
1274
|
-
function callExpression(position, buffer
|
|
1275
|
-
const
|
|
1276
|
-
const
|
|
1277
|
-
const flags = buffer[position++];
|
|
1278
|
-
const optional = (flags & 1) === 1;
|
|
1279
|
-
const annotations = convertAnnotations(buffer[position++], buffer);
|
|
1280
|
-
const callee = convertNode(buffer[position++], buffer, readString);
|
|
1281
|
-
const callArguments = convertNodeList(buffer[position], buffer, readString);
|
|
1230
|
+
function callExpression(position, buffer) {
|
|
1231
|
+
const flags = buffer[position + 2];
|
|
1232
|
+
const annotations = convertAnnotations(buffer[position + 3], buffer);
|
|
1282
1233
|
return {
|
|
1283
1234
|
type: 'CallExpression',
|
|
1284
|
-
start,
|
|
1285
|
-
end,
|
|
1286
|
-
optional,
|
|
1235
|
+
start: buffer[position],
|
|
1236
|
+
end: buffer[position + 1],
|
|
1237
|
+
optional: (flags & 1) === 1,
|
|
1287
1238
|
...(annotations.length > 0 ? { [ANNOTATION_KEY]: annotations } : {}),
|
|
1288
|
-
callee,
|
|
1289
|
-
arguments:
|
|
1239
|
+
callee: convertNode(buffer[position + 4], buffer),
|
|
1240
|
+
arguments: convertNodeList(buffer[position + 5], buffer)
|
|
1290
1241
|
};
|
|
1291
1242
|
},
|
|
1292
|
-
function catchClause(position, buffer
|
|
1293
|
-
const
|
|
1294
|
-
const end = buffer[position++];
|
|
1295
|
-
const parameterPosition = buffer[position++];
|
|
1296
|
-
const parameter = parameterPosition === 0 ? null : convertNode(parameterPosition, buffer, readString);
|
|
1297
|
-
const body = convertNode(buffer[position], buffer, readString);
|
|
1243
|
+
function catchClause(position, buffer) {
|
|
1244
|
+
const parameterPosition = buffer[position + 2];
|
|
1298
1245
|
return {
|
|
1299
1246
|
type: 'CatchClause',
|
|
1300
|
-
start,
|
|
1301
|
-
end,
|
|
1302
|
-
param:
|
|
1303
|
-
body
|
|
1247
|
+
start: buffer[position],
|
|
1248
|
+
end: buffer[position + 1],
|
|
1249
|
+
param: parameterPosition === 0 ? null : convertNode(parameterPosition, buffer),
|
|
1250
|
+
body: convertNode(buffer[position + 3], buffer)
|
|
1304
1251
|
};
|
|
1305
1252
|
},
|
|
1306
|
-
function chainExpression(position, buffer
|
|
1307
|
-
const start = buffer[position++];
|
|
1308
|
-
const end = buffer[position++];
|
|
1309
|
-
const expression = convertNode(buffer[position], buffer, readString);
|
|
1253
|
+
function chainExpression(position, buffer) {
|
|
1310
1254
|
return {
|
|
1311
1255
|
type: 'ChainExpression',
|
|
1312
|
-
start,
|
|
1313
|
-
end,
|
|
1314
|
-
expression
|
|
1256
|
+
start: buffer[position],
|
|
1257
|
+
end: buffer[position + 1],
|
|
1258
|
+
expression: convertNode(buffer[position + 2], buffer)
|
|
1315
1259
|
};
|
|
1316
1260
|
},
|
|
1317
|
-
function classBody(position, buffer
|
|
1318
|
-
const start = buffer[position++];
|
|
1319
|
-
const end = buffer[position++];
|
|
1320
|
-
const body = convertNodeList(buffer[position], buffer, readString);
|
|
1261
|
+
function classBody(position, buffer) {
|
|
1321
1262
|
return {
|
|
1322
1263
|
type: 'ClassBody',
|
|
1323
|
-
start,
|
|
1324
|
-
end,
|
|
1325
|
-
body
|
|
1264
|
+
start: buffer[position],
|
|
1265
|
+
end: buffer[position + 1],
|
|
1266
|
+
body: convertNodeList(buffer[position + 2], buffer)
|
|
1326
1267
|
};
|
|
1327
1268
|
},
|
|
1328
|
-
function classDeclaration(position, buffer
|
|
1329
|
-
const
|
|
1330
|
-
const
|
|
1331
|
-
const idPosition = buffer[position++];
|
|
1332
|
-
const id = idPosition === 0 ? null : convertNode(idPosition, buffer, readString);
|
|
1333
|
-
const superClassPosition = buffer[position++];
|
|
1334
|
-
const superClass = superClassPosition === 0 ? null : convertNode(superClassPosition, buffer, readString);
|
|
1335
|
-
const body = convertNode(buffer[position], buffer, readString);
|
|
1269
|
+
function classDeclaration(position, buffer) {
|
|
1270
|
+
const idPosition = buffer[position + 2];
|
|
1271
|
+
const superClassPosition = buffer[position + 3];
|
|
1336
1272
|
return {
|
|
1337
1273
|
type: 'ClassDeclaration',
|
|
1338
|
-
start,
|
|
1339
|
-
end,
|
|
1340
|
-
id,
|
|
1341
|
-
superClass,
|
|
1342
|
-
body
|
|
1343
|
-
};
|
|
1344
|
-
},
|
|
1345
|
-
function classExpression(position, buffer
|
|
1346
|
-
const
|
|
1347
|
-
const
|
|
1348
|
-
const idPosition = buffer[position++];
|
|
1349
|
-
const id = idPosition === 0 ? null : convertNode(idPosition, buffer, readString);
|
|
1350
|
-
const superClassPosition = buffer[position++];
|
|
1351
|
-
const superClass = superClassPosition === 0 ? null : convertNode(superClassPosition, buffer, readString);
|
|
1352
|
-
const body = convertNode(buffer[position], buffer, readString);
|
|
1274
|
+
start: buffer[position],
|
|
1275
|
+
end: buffer[position + 1],
|
|
1276
|
+
id: idPosition === 0 ? null : convertNode(idPosition, buffer),
|
|
1277
|
+
superClass: superClassPosition === 0 ? null : convertNode(superClassPosition, buffer),
|
|
1278
|
+
body: convertNode(buffer[position + 4], buffer)
|
|
1279
|
+
};
|
|
1280
|
+
},
|
|
1281
|
+
function classExpression(position, buffer) {
|
|
1282
|
+
const idPosition = buffer[position + 2];
|
|
1283
|
+
const superClassPosition = buffer[position + 3];
|
|
1353
1284
|
return {
|
|
1354
1285
|
type: 'ClassExpression',
|
|
1355
|
-
start,
|
|
1356
|
-
end,
|
|
1357
|
-
id,
|
|
1358
|
-
superClass,
|
|
1359
|
-
body
|
|
1286
|
+
start: buffer[position],
|
|
1287
|
+
end: buffer[position + 1],
|
|
1288
|
+
id: idPosition === 0 ? null : convertNode(idPosition, buffer),
|
|
1289
|
+
superClass: superClassPosition === 0 ? null : convertNode(superClassPosition, buffer),
|
|
1290
|
+
body: convertNode(buffer[position + 4], buffer)
|
|
1360
1291
|
};
|
|
1361
1292
|
},
|
|
1362
|
-
function conditionalExpression(position, buffer
|
|
1363
|
-
const start = buffer[position++];
|
|
1364
|
-
const end = buffer[position++];
|
|
1365
|
-
const test = convertNode(buffer[position++], buffer, readString);
|
|
1366
|
-
const consequent = convertNode(buffer[position++], buffer, readString);
|
|
1367
|
-
const alternate = convertNode(buffer[position], buffer, readString);
|
|
1293
|
+
function conditionalExpression(position, buffer) {
|
|
1368
1294
|
return {
|
|
1369
1295
|
type: 'ConditionalExpression',
|
|
1370
|
-
start,
|
|
1371
|
-
end,
|
|
1372
|
-
test,
|
|
1373
|
-
consequent,
|
|
1374
|
-
alternate
|
|
1296
|
+
start: buffer[position],
|
|
1297
|
+
end: buffer[position + 1],
|
|
1298
|
+
test: convertNode(buffer[position + 2], buffer),
|
|
1299
|
+
consequent: convertNode(buffer[position + 3], buffer),
|
|
1300
|
+
alternate: convertNode(buffer[position + 4], buffer)
|
|
1375
1301
|
};
|
|
1376
1302
|
},
|
|
1377
|
-
function continueStatement(position, buffer
|
|
1378
|
-
const
|
|
1379
|
-
const end = buffer[position++];
|
|
1380
|
-
const labelPosition = buffer[position];
|
|
1381
|
-
const label = labelPosition === 0 ? null : convertNode(labelPosition, buffer, readString);
|
|
1303
|
+
function continueStatement(position, buffer) {
|
|
1304
|
+
const labelPosition = buffer[position + 2];
|
|
1382
1305
|
return {
|
|
1383
1306
|
type: 'ContinueStatement',
|
|
1384
|
-
start,
|
|
1385
|
-
end,
|
|
1386
|
-
label
|
|
1307
|
+
start: buffer[position],
|
|
1308
|
+
end: buffer[position + 1],
|
|
1309
|
+
label: labelPosition === 0 ? null : convertNode(labelPosition, buffer)
|
|
1387
1310
|
};
|
|
1388
1311
|
},
|
|
1389
1312
|
function debuggerStatement(position, buffer) {
|
|
1390
|
-
const start = buffer[position++];
|
|
1391
|
-
const end = buffer[position++];
|
|
1392
1313
|
return {
|
|
1393
1314
|
type: 'DebuggerStatement',
|
|
1394
|
-
start,
|
|
1395
|
-
end
|
|
1315
|
+
start: buffer[position],
|
|
1316
|
+
end: buffer[position + 1]
|
|
1396
1317
|
};
|
|
1397
1318
|
},
|
|
1398
|
-
function directive(position, buffer
|
|
1399
|
-
const start = buffer[position++];
|
|
1400
|
-
const end = buffer[position++];
|
|
1401
|
-
const directive = convertString(buffer[position++], buffer, readString);
|
|
1402
|
-
const expression = convertNode(buffer[position], buffer, readString);
|
|
1319
|
+
function directive(position, buffer) {
|
|
1403
1320
|
return {
|
|
1404
1321
|
type: 'ExpressionStatement',
|
|
1405
|
-
start,
|
|
1406
|
-
end,
|
|
1407
|
-
directive,
|
|
1408
|
-
expression
|
|
1322
|
+
start: buffer[position],
|
|
1323
|
+
end: buffer[position + 1],
|
|
1324
|
+
directive: buffer.convertString(buffer[position + 2]),
|
|
1325
|
+
expression: convertNode(buffer[position + 3], buffer)
|
|
1409
1326
|
};
|
|
1410
1327
|
},
|
|
1411
|
-
function doWhileStatement(position, buffer
|
|
1412
|
-
const start = buffer[position++];
|
|
1413
|
-
const end = buffer[position++];
|
|
1414
|
-
const body = convertNode(buffer[position++], buffer, readString);
|
|
1415
|
-
const test = convertNode(buffer[position], buffer, readString);
|
|
1328
|
+
function doWhileStatement(position, buffer) {
|
|
1416
1329
|
return {
|
|
1417
1330
|
type: 'DoWhileStatement',
|
|
1418
|
-
start,
|
|
1419
|
-
end,
|
|
1420
|
-
body,
|
|
1421
|
-
test
|
|
1331
|
+
start: buffer[position],
|
|
1332
|
+
end: buffer[position + 1],
|
|
1333
|
+
body: convertNode(buffer[position + 2], buffer),
|
|
1334
|
+
test: convertNode(buffer[position + 3], buffer)
|
|
1422
1335
|
};
|
|
1423
1336
|
},
|
|
1424
1337
|
function emptyStatement(position, buffer) {
|
|
1425
|
-
const start = buffer[position++];
|
|
1426
|
-
const end = buffer[position++];
|
|
1427
1338
|
return {
|
|
1428
1339
|
type: 'EmptyStatement',
|
|
1429
|
-
start,
|
|
1430
|
-
end
|
|
1340
|
+
start: buffer[position],
|
|
1341
|
+
end: buffer[position + 1]
|
|
1431
1342
|
};
|
|
1432
1343
|
},
|
|
1433
|
-
function exportAllDeclaration(position, buffer
|
|
1434
|
-
const
|
|
1435
|
-
const end = buffer[position++];
|
|
1436
|
-
const exportedPosition = buffer[position++];
|
|
1437
|
-
const exported = exportedPosition === 0 ? null : convertNode(exportedPosition, buffer, readString);
|
|
1438
|
-
const source = convertNode(buffer[position++], buffer, readString);
|
|
1439
|
-
const attributes = convertNodeList(buffer[position], buffer, readString);
|
|
1344
|
+
function exportAllDeclaration(position, buffer) {
|
|
1345
|
+
const exportedPosition = buffer[position + 2];
|
|
1440
1346
|
return {
|
|
1441
1347
|
type: 'ExportAllDeclaration',
|
|
1442
|
-
start,
|
|
1443
|
-
end,
|
|
1444
|
-
exported,
|
|
1445
|
-
source,
|
|
1446
|
-
attributes
|
|
1348
|
+
start: buffer[position],
|
|
1349
|
+
end: buffer[position + 1],
|
|
1350
|
+
exported: exportedPosition === 0 ? null : convertNode(exportedPosition, buffer),
|
|
1351
|
+
source: convertNode(buffer[position + 3], buffer),
|
|
1352
|
+
attributes: convertNodeList(buffer[position + 4], buffer)
|
|
1447
1353
|
};
|
|
1448
1354
|
},
|
|
1449
|
-
function exportDefaultDeclaration(position, buffer
|
|
1450
|
-
const start = buffer[position++];
|
|
1451
|
-
const end = buffer[position++];
|
|
1452
|
-
const declaration = convertNode(buffer[position], buffer, readString);
|
|
1355
|
+
function exportDefaultDeclaration(position, buffer) {
|
|
1453
1356
|
return {
|
|
1454
1357
|
type: 'ExportDefaultDeclaration',
|
|
1455
|
-
start,
|
|
1456
|
-
end,
|
|
1457
|
-
declaration
|
|
1358
|
+
start: buffer[position],
|
|
1359
|
+
end: buffer[position + 1],
|
|
1360
|
+
declaration: convertNode(buffer[position + 2], buffer)
|
|
1458
1361
|
};
|
|
1459
1362
|
},
|
|
1460
|
-
function exportNamedDeclaration(position, buffer
|
|
1461
|
-
const
|
|
1462
|
-
const
|
|
1463
|
-
const specifiers = convertNodeList(buffer[position++], buffer, readString);
|
|
1464
|
-
const sourcePosition = buffer[position++];
|
|
1465
|
-
const source = sourcePosition === 0 ? null : convertNode(sourcePosition, buffer, readString);
|
|
1466
|
-
const attributes = convertNodeList(buffer[position++], buffer, readString);
|
|
1467
|
-
const declarationPosition = buffer[position];
|
|
1468
|
-
const declaration = declarationPosition === 0 ? null : convertNode(declarationPosition, buffer, readString);
|
|
1363
|
+
function exportNamedDeclaration(position, buffer) {
|
|
1364
|
+
const sourcePosition = buffer[position + 3];
|
|
1365
|
+
const declarationPosition = buffer[position + 5];
|
|
1469
1366
|
return {
|
|
1470
1367
|
type: 'ExportNamedDeclaration',
|
|
1471
|
-
start,
|
|
1472
|
-
end,
|
|
1473
|
-
specifiers,
|
|
1474
|
-
source,
|
|
1475
|
-
attributes,
|
|
1476
|
-
declaration
|
|
1368
|
+
start: buffer[position],
|
|
1369
|
+
end: buffer[position + 1],
|
|
1370
|
+
specifiers: convertNodeList(buffer[position + 2], buffer),
|
|
1371
|
+
source: sourcePosition === 0 ? null : convertNode(sourcePosition, buffer),
|
|
1372
|
+
attributes: convertNodeList(buffer[position + 4], buffer),
|
|
1373
|
+
declaration: declarationPosition === 0 ? null : convertNode(declarationPosition, buffer)
|
|
1477
1374
|
};
|
|
1478
1375
|
},
|
|
1479
|
-
function exportSpecifier(position, buffer
|
|
1480
|
-
const
|
|
1481
|
-
const
|
|
1482
|
-
const local = convertNode(buffer[position++], buffer, readString);
|
|
1483
|
-
const exportedPosition = buffer[position];
|
|
1376
|
+
function exportSpecifier(position, buffer) {
|
|
1377
|
+
const local = convertNode(buffer[position + 2], buffer);
|
|
1378
|
+
const exportedPosition = buffer[position + 3];
|
|
1484
1379
|
return {
|
|
1485
1380
|
type: 'ExportSpecifier',
|
|
1486
|
-
start,
|
|
1487
|
-
end,
|
|
1381
|
+
start: buffer[position],
|
|
1382
|
+
end: buffer[position + 1],
|
|
1488
1383
|
local,
|
|
1489
|
-
exported: exportedPosition === 0 ? { ...local } : convertNode(exportedPosition, buffer
|
|
1384
|
+
exported: exportedPosition === 0 ? { ...local } : convertNode(exportedPosition, buffer)
|
|
1490
1385
|
};
|
|
1491
1386
|
},
|
|
1492
|
-
function expressionStatement(position, buffer
|
|
1493
|
-
const start = buffer[position++];
|
|
1494
|
-
const end = buffer[position++];
|
|
1495
|
-
const expression = convertNode(buffer[position], buffer, readString);
|
|
1387
|
+
function expressionStatement(position, buffer) {
|
|
1496
1388
|
return {
|
|
1497
1389
|
type: 'ExpressionStatement',
|
|
1498
|
-
start,
|
|
1499
|
-
end,
|
|
1500
|
-
expression
|
|
1390
|
+
start: buffer[position],
|
|
1391
|
+
end: buffer[position + 1],
|
|
1392
|
+
expression: convertNode(buffer[position + 2], buffer)
|
|
1501
1393
|
};
|
|
1502
1394
|
},
|
|
1503
|
-
function forInStatement(position, buffer
|
|
1504
|
-
const start = buffer[position++];
|
|
1505
|
-
const end = buffer[position++];
|
|
1506
|
-
const left = convertNode(buffer[position++], buffer, readString);
|
|
1507
|
-
const right = convertNode(buffer[position++], buffer, readString);
|
|
1508
|
-
const body = convertNode(buffer[position], buffer, readString);
|
|
1395
|
+
function forInStatement(position, buffer) {
|
|
1509
1396
|
return {
|
|
1510
1397
|
type: 'ForInStatement',
|
|
1511
|
-
start,
|
|
1512
|
-
end,
|
|
1513
|
-
left,
|
|
1514
|
-
right,
|
|
1515
|
-
body
|
|
1516
|
-
};
|
|
1517
|
-
},
|
|
1518
|
-
function forOfStatement(position, buffer
|
|
1519
|
-
const
|
|
1520
|
-
const end = buffer[position++];
|
|
1521
|
-
const flags = buffer[position++];
|
|
1522
|
-
const awaited = (flags & 1) === 1;
|
|
1523
|
-
const left = convertNode(buffer[position++], buffer, readString);
|
|
1524
|
-
const right = convertNode(buffer[position++], buffer, readString);
|
|
1525
|
-
const body = convertNode(buffer[position], buffer, readString);
|
|
1398
|
+
start: buffer[position],
|
|
1399
|
+
end: buffer[position + 1],
|
|
1400
|
+
left: convertNode(buffer[position + 2], buffer),
|
|
1401
|
+
right: convertNode(buffer[position + 3], buffer),
|
|
1402
|
+
body: convertNode(buffer[position + 4], buffer)
|
|
1403
|
+
};
|
|
1404
|
+
},
|
|
1405
|
+
function forOfStatement(position, buffer) {
|
|
1406
|
+
const flags = buffer[position + 2];
|
|
1526
1407
|
return {
|
|
1527
1408
|
type: 'ForOfStatement',
|
|
1528
|
-
start,
|
|
1529
|
-
end,
|
|
1530
|
-
await:
|
|
1531
|
-
left,
|
|
1532
|
-
right,
|
|
1533
|
-
body
|
|
1534
|
-
};
|
|
1535
|
-
},
|
|
1536
|
-
function forStatement(position, buffer
|
|
1537
|
-
const
|
|
1538
|
-
const
|
|
1539
|
-
const
|
|
1540
|
-
const init = initPosition === 0 ? null : convertNode(initPosition, buffer, readString);
|
|
1541
|
-
const testPosition = buffer[position++];
|
|
1542
|
-
const test = testPosition === 0 ? null : convertNode(testPosition, buffer, readString);
|
|
1543
|
-
const updatePosition = buffer[position++];
|
|
1544
|
-
const update = updatePosition === 0 ? null : convertNode(updatePosition, buffer, readString);
|
|
1545
|
-
const body = convertNode(buffer[position], buffer, readString);
|
|
1409
|
+
start: buffer[position],
|
|
1410
|
+
end: buffer[position + 1],
|
|
1411
|
+
await: (flags & 1) === 1,
|
|
1412
|
+
left: convertNode(buffer[position + 3], buffer),
|
|
1413
|
+
right: convertNode(buffer[position + 4], buffer),
|
|
1414
|
+
body: convertNode(buffer[position + 5], buffer)
|
|
1415
|
+
};
|
|
1416
|
+
},
|
|
1417
|
+
function forStatement(position, buffer) {
|
|
1418
|
+
const initPosition = buffer[position + 2];
|
|
1419
|
+
const testPosition = buffer[position + 3];
|
|
1420
|
+
const updatePosition = buffer[position + 4];
|
|
1546
1421
|
return {
|
|
1547
1422
|
type: 'ForStatement',
|
|
1548
|
-
start,
|
|
1549
|
-
end,
|
|
1550
|
-
init,
|
|
1551
|
-
test,
|
|
1552
|
-
update,
|
|
1553
|
-
body
|
|
1554
|
-
};
|
|
1555
|
-
},
|
|
1556
|
-
function functionDeclaration(position, buffer
|
|
1557
|
-
const
|
|
1558
|
-
const
|
|
1559
|
-
const
|
|
1560
|
-
const async = (flags & 1) === 1;
|
|
1561
|
-
const generator = (flags & 2) === 2;
|
|
1562
|
-
const annotations = convertAnnotations(buffer[position++], buffer);
|
|
1563
|
-
const idPosition = buffer[position++];
|
|
1564
|
-
const id = idPosition === 0 ? null : convertNode(idPosition, buffer, readString);
|
|
1565
|
-
const parameters = convertNodeList(buffer[position++], buffer, readString);
|
|
1566
|
-
const body = convertNode(buffer[position], buffer, readString);
|
|
1423
|
+
start: buffer[position],
|
|
1424
|
+
end: buffer[position + 1],
|
|
1425
|
+
init: initPosition === 0 ? null : convertNode(initPosition, buffer),
|
|
1426
|
+
test: testPosition === 0 ? null : convertNode(testPosition, buffer),
|
|
1427
|
+
update: updatePosition === 0 ? null : convertNode(updatePosition, buffer),
|
|
1428
|
+
body: convertNode(buffer[position + 5], buffer)
|
|
1429
|
+
};
|
|
1430
|
+
},
|
|
1431
|
+
function functionDeclaration(position, buffer) {
|
|
1432
|
+
const flags = buffer[position + 2];
|
|
1433
|
+
const annotations = convertAnnotations(buffer[position + 3], buffer);
|
|
1434
|
+
const idPosition = buffer[position + 4];
|
|
1567
1435
|
return {
|
|
1568
1436
|
type: 'FunctionDeclaration',
|
|
1569
|
-
start,
|
|
1570
|
-
end,
|
|
1571
|
-
async,
|
|
1572
|
-
generator,
|
|
1437
|
+
start: buffer[position],
|
|
1438
|
+
end: buffer[position + 1],
|
|
1439
|
+
async: (flags & 1) === 1,
|
|
1440
|
+
generator: (flags & 2) === 2,
|
|
1573
1441
|
...(annotations.length > 0 ? { [ANNOTATION_KEY]: annotations } : {}),
|
|
1574
|
-
id,
|
|
1575
|
-
params:
|
|
1576
|
-
body,
|
|
1442
|
+
id: idPosition === 0 ? null : convertNode(idPosition, buffer),
|
|
1443
|
+
params: convertNodeList(buffer[position + 5], buffer),
|
|
1444
|
+
body: convertNode(buffer[position + 6], buffer),
|
|
1577
1445
|
expression: false
|
|
1578
1446
|
};
|
|
1579
1447
|
},
|
|
1580
|
-
function functionExpression(position, buffer
|
|
1581
|
-
const
|
|
1582
|
-
const
|
|
1583
|
-
const
|
|
1584
|
-
const async = (flags & 1) === 1;
|
|
1585
|
-
const generator = (flags & 2) === 2;
|
|
1586
|
-
const annotations = convertAnnotations(buffer[position++], buffer);
|
|
1587
|
-
const idPosition = buffer[position++];
|
|
1588
|
-
const id = idPosition === 0 ? null : convertNode(idPosition, buffer, readString);
|
|
1589
|
-
const parameters = convertNodeList(buffer[position++], buffer, readString);
|
|
1590
|
-
const body = convertNode(buffer[position], buffer, readString);
|
|
1448
|
+
function functionExpression(position, buffer) {
|
|
1449
|
+
const flags = buffer[position + 2];
|
|
1450
|
+
const annotations = convertAnnotations(buffer[position + 3], buffer);
|
|
1451
|
+
const idPosition = buffer[position + 4];
|
|
1591
1452
|
return {
|
|
1592
1453
|
type: 'FunctionExpression',
|
|
1593
|
-
start,
|
|
1594
|
-
end,
|
|
1595
|
-
async,
|
|
1596
|
-
generator,
|
|
1454
|
+
start: buffer[position],
|
|
1455
|
+
end: buffer[position + 1],
|
|
1456
|
+
async: (flags & 1) === 1,
|
|
1457
|
+
generator: (flags & 2) === 2,
|
|
1597
1458
|
...(annotations.length > 0 ? { [ANNOTATION_KEY]: annotations } : {}),
|
|
1598
|
-
id,
|
|
1599
|
-
params:
|
|
1600
|
-
body,
|
|
1459
|
+
id: idPosition === 0 ? null : convertNode(idPosition, buffer),
|
|
1460
|
+
params: convertNodeList(buffer[position + 5], buffer),
|
|
1461
|
+
body: convertNode(buffer[position + 6], buffer),
|
|
1601
1462
|
expression: false
|
|
1602
1463
|
};
|
|
1603
1464
|
},
|
|
1604
|
-
function identifier(position, buffer
|
|
1605
|
-
const start = buffer[position++];
|
|
1606
|
-
const end = buffer[position++];
|
|
1607
|
-
const name = convertString(buffer[position], buffer, readString);
|
|
1465
|
+
function identifier(position, buffer) {
|
|
1608
1466
|
return {
|
|
1609
1467
|
type: 'Identifier',
|
|
1610
|
-
start,
|
|
1611
|
-
end,
|
|
1612
|
-
name
|
|
1468
|
+
start: buffer[position],
|
|
1469
|
+
end: buffer[position + 1],
|
|
1470
|
+
name: buffer.convertString(buffer[position + 2])
|
|
1613
1471
|
};
|
|
1614
1472
|
},
|
|
1615
|
-
function ifStatement(position, buffer
|
|
1616
|
-
const
|
|
1617
|
-
const end = buffer[position++];
|
|
1618
|
-
const test = convertNode(buffer[position++], buffer, readString);
|
|
1619
|
-
const consequent = convertNode(buffer[position++], buffer, readString);
|
|
1620
|
-
const alternatePosition = buffer[position];
|
|
1621
|
-
const alternate = alternatePosition === 0 ? null : convertNode(alternatePosition, buffer, readString);
|
|
1473
|
+
function ifStatement(position, buffer) {
|
|
1474
|
+
const alternatePosition = buffer[position + 4];
|
|
1622
1475
|
return {
|
|
1623
1476
|
type: 'IfStatement',
|
|
1624
|
-
start,
|
|
1625
|
-
end,
|
|
1626
|
-
test,
|
|
1627
|
-
consequent,
|
|
1628
|
-
alternate
|
|
1477
|
+
start: buffer[position],
|
|
1478
|
+
end: buffer[position + 1],
|
|
1479
|
+
test: convertNode(buffer[position + 2], buffer),
|
|
1480
|
+
consequent: convertNode(buffer[position + 3], buffer),
|
|
1481
|
+
alternate: alternatePosition === 0 ? null : convertNode(alternatePosition, buffer)
|
|
1629
1482
|
};
|
|
1630
1483
|
},
|
|
1631
|
-
function importAttribute(position, buffer
|
|
1632
|
-
const start = buffer[position++];
|
|
1633
|
-
const end = buffer[position++];
|
|
1634
|
-
const key = convertNode(buffer[position++], buffer, readString);
|
|
1635
|
-
const value = convertNode(buffer[position], buffer, readString);
|
|
1484
|
+
function importAttribute(position, buffer) {
|
|
1636
1485
|
return {
|
|
1637
1486
|
type: 'ImportAttribute',
|
|
1638
|
-
start,
|
|
1639
|
-
end,
|
|
1640
|
-
key,
|
|
1641
|
-
value
|
|
1487
|
+
start: buffer[position],
|
|
1488
|
+
end: buffer[position + 1],
|
|
1489
|
+
key: convertNode(buffer[position + 2], buffer),
|
|
1490
|
+
value: convertNode(buffer[position + 3], buffer)
|
|
1642
1491
|
};
|
|
1643
1492
|
},
|
|
1644
|
-
function importDeclaration(position, buffer
|
|
1645
|
-
const start = buffer[position++];
|
|
1646
|
-
const end = buffer[position++];
|
|
1647
|
-
const specifiers = convertNodeList(buffer[position++], buffer, readString);
|
|
1648
|
-
const source = convertNode(buffer[position++], buffer, readString);
|
|
1649
|
-
const attributes = convertNodeList(buffer[position], buffer, readString);
|
|
1493
|
+
function importDeclaration(position, buffer) {
|
|
1650
1494
|
return {
|
|
1651
1495
|
type: 'ImportDeclaration',
|
|
1652
|
-
start,
|
|
1653
|
-
end,
|
|
1654
|
-
specifiers,
|
|
1655
|
-
source,
|
|
1656
|
-
attributes
|
|
1496
|
+
start: buffer[position],
|
|
1497
|
+
end: buffer[position + 1],
|
|
1498
|
+
specifiers: convertNodeList(buffer[position + 2], buffer),
|
|
1499
|
+
source: convertNode(buffer[position + 3], buffer),
|
|
1500
|
+
attributes: convertNodeList(buffer[position + 4], buffer)
|
|
1657
1501
|
};
|
|
1658
1502
|
},
|
|
1659
|
-
function importDefaultSpecifier(position, buffer
|
|
1660
|
-
const start = buffer[position++];
|
|
1661
|
-
const end = buffer[position++];
|
|
1662
|
-
const local = convertNode(buffer[position], buffer, readString);
|
|
1503
|
+
function importDefaultSpecifier(position, buffer) {
|
|
1663
1504
|
return {
|
|
1664
1505
|
type: 'ImportDefaultSpecifier',
|
|
1665
|
-
start,
|
|
1666
|
-
end,
|
|
1667
|
-
local
|
|
1506
|
+
start: buffer[position],
|
|
1507
|
+
end: buffer[position + 1],
|
|
1508
|
+
local: convertNode(buffer[position + 2], buffer)
|
|
1668
1509
|
};
|
|
1669
1510
|
},
|
|
1670
|
-
function importExpression(position, buffer
|
|
1671
|
-
const
|
|
1672
|
-
const end = buffer[position++];
|
|
1673
|
-
const source = convertNode(buffer[position++], buffer, readString);
|
|
1674
|
-
const optionsPosition = buffer[position];
|
|
1675
|
-
const options = optionsPosition === 0 ? null : convertNode(optionsPosition, buffer, readString);
|
|
1511
|
+
function importExpression(position, buffer) {
|
|
1512
|
+
const optionsPosition = buffer[position + 3];
|
|
1676
1513
|
return {
|
|
1677
1514
|
type: 'ImportExpression',
|
|
1678
|
-
start,
|
|
1679
|
-
end,
|
|
1680
|
-
source,
|
|
1681
|
-
options
|
|
1515
|
+
start: buffer[position],
|
|
1516
|
+
end: buffer[position + 1],
|
|
1517
|
+
source: convertNode(buffer[position + 2], buffer),
|
|
1518
|
+
options: optionsPosition === 0 ? null : convertNode(optionsPosition, buffer)
|
|
1682
1519
|
};
|
|
1683
1520
|
},
|
|
1684
|
-
function importNamespaceSpecifier(position, buffer
|
|
1685
|
-
const start = buffer[position++];
|
|
1686
|
-
const end = buffer[position++];
|
|
1687
|
-
const local = convertNode(buffer[position], buffer, readString);
|
|
1521
|
+
function importNamespaceSpecifier(position, buffer) {
|
|
1688
1522
|
return {
|
|
1689
1523
|
type: 'ImportNamespaceSpecifier',
|
|
1690
|
-
start,
|
|
1691
|
-
end,
|
|
1692
|
-
local
|
|
1524
|
+
start: buffer[position],
|
|
1525
|
+
end: buffer[position + 1],
|
|
1526
|
+
local: convertNode(buffer[position + 2], buffer)
|
|
1693
1527
|
};
|
|
1694
1528
|
},
|
|
1695
|
-
function importSpecifier(position, buffer
|
|
1696
|
-
const
|
|
1697
|
-
const
|
|
1698
|
-
const importedPosition = buffer[position++];
|
|
1699
|
-
const local = convertNode(buffer[position], buffer, readString);
|
|
1529
|
+
function importSpecifier(position, buffer) {
|
|
1530
|
+
const importedPosition = buffer[position + 2];
|
|
1531
|
+
const local = convertNode(buffer[position + 3], buffer);
|
|
1700
1532
|
return {
|
|
1701
1533
|
type: 'ImportSpecifier',
|
|
1702
|
-
start,
|
|
1703
|
-
end,
|
|
1704
|
-
imported: importedPosition === 0 ? { ...local } : convertNode(importedPosition, buffer
|
|
1534
|
+
start: buffer[position],
|
|
1535
|
+
end: buffer[position + 1],
|
|
1536
|
+
imported: importedPosition === 0 ? { ...local } : convertNode(importedPosition, buffer),
|
|
1705
1537
|
local
|
|
1706
1538
|
};
|
|
1707
1539
|
},
|
|
1708
|
-
function labeledStatement(position, buffer
|
|
1709
|
-
const start = buffer[position++];
|
|
1710
|
-
const end = buffer[position++];
|
|
1711
|
-
const label = convertNode(buffer[position++], buffer, readString);
|
|
1712
|
-
const body = convertNode(buffer[position], buffer, readString);
|
|
1540
|
+
function labeledStatement(position, buffer) {
|
|
1713
1541
|
return {
|
|
1714
1542
|
type: 'LabeledStatement',
|
|
1715
|
-
start,
|
|
1716
|
-
end,
|
|
1717
|
-
label,
|
|
1718
|
-
body
|
|
1543
|
+
start: buffer[position],
|
|
1544
|
+
end: buffer[position + 1],
|
|
1545
|
+
label: convertNode(buffer[position + 2], buffer),
|
|
1546
|
+
body: convertNode(buffer[position + 3], buffer)
|
|
1719
1547
|
};
|
|
1720
1548
|
},
|
|
1721
|
-
function literalBigInt(position, buffer
|
|
1722
|
-
const
|
|
1723
|
-
const end = buffer[position++];
|
|
1724
|
-
const bigint = convertString(buffer[position++], buffer, readString);
|
|
1725
|
-
const raw = convertString(buffer[position], buffer, readString);
|
|
1549
|
+
function literalBigInt(position, buffer) {
|
|
1550
|
+
const bigint = buffer.convertString(buffer[position + 2]);
|
|
1726
1551
|
return {
|
|
1727
1552
|
type: 'Literal',
|
|
1728
|
-
start,
|
|
1729
|
-
end,
|
|
1553
|
+
start: buffer[position],
|
|
1554
|
+
end: buffer[position + 1],
|
|
1730
1555
|
bigint,
|
|
1731
|
-
raw,
|
|
1556
|
+
raw: buffer.convertString(buffer[position + 3]),
|
|
1732
1557
|
value: BigInt(bigint)
|
|
1733
1558
|
};
|
|
1734
1559
|
},
|
|
1735
1560
|
function literalBoolean(position, buffer) {
|
|
1736
|
-
const
|
|
1737
|
-
const end = buffer[position++];
|
|
1738
|
-
const flags = buffer[position++];
|
|
1561
|
+
const flags = buffer[position + 2];
|
|
1739
1562
|
const value = (flags & 1) === 1;
|
|
1740
1563
|
return {
|
|
1741
1564
|
type: 'Literal',
|
|
1742
|
-
start,
|
|
1743
|
-
end,
|
|
1565
|
+
start: buffer[position],
|
|
1566
|
+
end: buffer[position + 1],
|
|
1744
1567
|
value,
|
|
1745
1568
|
raw: value ? 'true' : 'false'
|
|
1746
1569
|
};
|
|
1747
1570
|
},
|
|
1748
1571
|
function literalNull(position, buffer) {
|
|
1749
|
-
const start = buffer[position++];
|
|
1750
|
-
const end = buffer[position++];
|
|
1751
1572
|
return {
|
|
1752
1573
|
type: 'Literal',
|
|
1753
|
-
start,
|
|
1754
|
-
end,
|
|
1574
|
+
start: buffer[position],
|
|
1575
|
+
end: buffer[position + 1],
|
|
1755
1576
|
raw: 'null',
|
|
1756
1577
|
value: null
|
|
1757
1578
|
};
|
|
1758
1579
|
},
|
|
1759
|
-
function literalNumber(position, buffer
|
|
1760
|
-
const
|
|
1761
|
-
const end = buffer[position++];
|
|
1762
|
-
const rawPosition = buffer[position++];
|
|
1763
|
-
const raw = rawPosition === 0 ? undefined : convertString(rawPosition, buffer, readString);
|
|
1764
|
-
const value = new DataView(buffer.buffer).getFloat64(position << 2, true);
|
|
1580
|
+
function literalNumber(position, buffer) {
|
|
1581
|
+
const rawPosition = buffer[position + 2];
|
|
1765
1582
|
return {
|
|
1766
1583
|
type: 'Literal',
|
|
1767
|
-
start,
|
|
1768
|
-
end,
|
|
1769
|
-
raw,
|
|
1770
|
-
value
|
|
1584
|
+
start: buffer[position],
|
|
1585
|
+
end: buffer[position + 1],
|
|
1586
|
+
raw: rawPosition === 0 ? undefined : buffer.convertString(rawPosition),
|
|
1587
|
+
value: new DataView(buffer.buffer).getFloat64((position + 3) << 2, true)
|
|
1771
1588
|
};
|
|
1772
1589
|
},
|
|
1773
|
-
function literalRegExp(position, buffer
|
|
1774
|
-
const
|
|
1775
|
-
const
|
|
1776
|
-
const flags = convertString(buffer[position++], buffer, readString);
|
|
1777
|
-
const pattern = convertString(buffer[position], buffer, readString);
|
|
1590
|
+
function literalRegExp(position, buffer) {
|
|
1591
|
+
const flags = buffer.convertString(buffer[position + 2]);
|
|
1592
|
+
const pattern = buffer.convertString(buffer[position + 3]);
|
|
1778
1593
|
return {
|
|
1779
1594
|
type: 'Literal',
|
|
1780
|
-
start,
|
|
1781
|
-
end,
|
|
1595
|
+
start: buffer[position],
|
|
1596
|
+
end: buffer[position + 1],
|
|
1782
1597
|
raw: `/${pattern}/${flags}`,
|
|
1783
1598
|
regex: { flags, pattern },
|
|
1784
1599
|
value: new RegExp(pattern, flags)
|
|
1785
1600
|
};
|
|
1786
1601
|
},
|
|
1787
|
-
function literalString(position, buffer
|
|
1788
|
-
const
|
|
1789
|
-
const end = buffer[position++];
|
|
1790
|
-
const value = convertString(buffer[position++], buffer, readString);
|
|
1791
|
-
const rawPosition = buffer[position];
|
|
1792
|
-
const raw = rawPosition === 0 ? undefined : convertString(rawPosition, buffer, readString);
|
|
1602
|
+
function literalString(position, buffer) {
|
|
1603
|
+
const rawPosition = buffer[position + 3];
|
|
1793
1604
|
return {
|
|
1794
1605
|
type: 'Literal',
|
|
1795
|
-
start,
|
|
1796
|
-
end,
|
|
1797
|
-
value,
|
|
1798
|
-
raw
|
|
1606
|
+
start: buffer[position],
|
|
1607
|
+
end: buffer[position + 1],
|
|
1608
|
+
value: buffer.convertString(buffer[position + 2]),
|
|
1609
|
+
raw: rawPosition === 0 ? undefined : buffer.convertString(rawPosition)
|
|
1799
1610
|
};
|
|
1800
1611
|
},
|
|
1801
|
-
function logicalExpression(position, buffer
|
|
1802
|
-
const start = buffer[position++];
|
|
1803
|
-
const end = buffer[position++];
|
|
1804
|
-
const operator = FIXED_STRINGS[buffer[position++]];
|
|
1805
|
-
const left = convertNode(buffer[position++], buffer, readString);
|
|
1806
|
-
const right = convertNode(buffer[position], buffer, readString);
|
|
1612
|
+
function logicalExpression(position, buffer) {
|
|
1807
1613
|
return {
|
|
1808
1614
|
type: 'LogicalExpression',
|
|
1809
|
-
start,
|
|
1810
|
-
end,
|
|
1811
|
-
operator,
|
|
1812
|
-
left,
|
|
1813
|
-
right
|
|
1814
|
-
};
|
|
1815
|
-
},
|
|
1816
|
-
function memberExpression(position, buffer
|
|
1817
|
-
const
|
|
1818
|
-
const end = buffer[position++];
|
|
1819
|
-
const flags = buffer[position++];
|
|
1820
|
-
const computed = (flags & 1) === 1;
|
|
1821
|
-
const optional = (flags & 2) === 2;
|
|
1822
|
-
const object = convertNode(buffer[position++], buffer, readString);
|
|
1823
|
-
const property = convertNode(buffer[position], buffer, readString);
|
|
1615
|
+
start: buffer[position],
|
|
1616
|
+
end: buffer[position + 1],
|
|
1617
|
+
operator: FIXED_STRINGS[buffer[position + 2]],
|
|
1618
|
+
left: convertNode(buffer[position + 3], buffer),
|
|
1619
|
+
right: convertNode(buffer[position + 4], buffer)
|
|
1620
|
+
};
|
|
1621
|
+
},
|
|
1622
|
+
function memberExpression(position, buffer) {
|
|
1623
|
+
const flags = buffer[position + 2];
|
|
1824
1624
|
return {
|
|
1825
1625
|
type: 'MemberExpression',
|
|
1826
|
-
start,
|
|
1827
|
-
end,
|
|
1828
|
-
computed,
|
|
1829
|
-
optional,
|
|
1830
|
-
object,
|
|
1831
|
-
property
|
|
1626
|
+
start: buffer[position],
|
|
1627
|
+
end: buffer[position + 1],
|
|
1628
|
+
computed: (flags & 1) === 1,
|
|
1629
|
+
optional: (flags & 2) === 2,
|
|
1630
|
+
object: convertNode(buffer[position + 3], buffer),
|
|
1631
|
+
property: convertNode(buffer[position + 4], buffer)
|
|
1832
1632
|
};
|
|
1833
1633
|
},
|
|
1834
|
-
function metaProperty(position, buffer
|
|
1835
|
-
const start = buffer[position++];
|
|
1836
|
-
const end = buffer[position++];
|
|
1837
|
-
const meta = convertNode(buffer[position++], buffer, readString);
|
|
1838
|
-
const property = convertNode(buffer[position], buffer, readString);
|
|
1634
|
+
function metaProperty(position, buffer) {
|
|
1839
1635
|
return {
|
|
1840
1636
|
type: 'MetaProperty',
|
|
1841
|
-
start,
|
|
1842
|
-
end,
|
|
1843
|
-
meta,
|
|
1844
|
-
property
|
|
1845
|
-
};
|
|
1846
|
-
},
|
|
1847
|
-
function methodDefinition(position, buffer
|
|
1848
|
-
const
|
|
1849
|
-
const end = buffer[position++];
|
|
1850
|
-
const flags = buffer[position++];
|
|
1851
|
-
const isStatic = (flags & 1) === 1;
|
|
1852
|
-
const computed = (flags & 2) === 2;
|
|
1853
|
-
const key = convertNode(buffer[position++], buffer, readString);
|
|
1854
|
-
const value = convertNode(buffer[position++], buffer, readString);
|
|
1855
|
-
const kind = FIXED_STRINGS[buffer[position]];
|
|
1637
|
+
start: buffer[position],
|
|
1638
|
+
end: buffer[position + 1],
|
|
1639
|
+
meta: convertNode(buffer[position + 2], buffer),
|
|
1640
|
+
property: convertNode(buffer[position + 3], buffer)
|
|
1641
|
+
};
|
|
1642
|
+
},
|
|
1643
|
+
function methodDefinition(position, buffer) {
|
|
1644
|
+
const flags = buffer[position + 2];
|
|
1856
1645
|
return {
|
|
1857
1646
|
type: 'MethodDefinition',
|
|
1858
|
-
start,
|
|
1859
|
-
end,
|
|
1860
|
-
static:
|
|
1861
|
-
computed,
|
|
1862
|
-
key,
|
|
1863
|
-
value,
|
|
1864
|
-
kind
|
|
1647
|
+
start: buffer[position],
|
|
1648
|
+
end: buffer[position + 1],
|
|
1649
|
+
static: (flags & 1) === 1,
|
|
1650
|
+
computed: (flags & 2) === 2,
|
|
1651
|
+
key: convertNode(buffer[position + 3], buffer),
|
|
1652
|
+
value: convertNode(buffer[position + 4], buffer),
|
|
1653
|
+
kind: FIXED_STRINGS[buffer[position + 5]]
|
|
1865
1654
|
};
|
|
1866
1655
|
},
|
|
1867
|
-
function newExpression(position, buffer
|
|
1868
|
-
const
|
|
1869
|
-
const end = buffer[position++];
|
|
1870
|
-
const annotations = convertAnnotations(buffer[position++], buffer);
|
|
1871
|
-
const callee = convertNode(buffer[position++], buffer, readString);
|
|
1872
|
-
const callArguments = convertNodeList(buffer[position], buffer, readString);
|
|
1656
|
+
function newExpression(position, buffer) {
|
|
1657
|
+
const annotations = convertAnnotations(buffer[position + 2], buffer);
|
|
1873
1658
|
return {
|
|
1874
1659
|
type: 'NewExpression',
|
|
1875
|
-
start,
|
|
1876
|
-
end,
|
|
1660
|
+
start: buffer[position],
|
|
1661
|
+
end: buffer[position + 1],
|
|
1877
1662
|
...(annotations.length > 0 ? { [ANNOTATION_KEY]: annotations } : {}),
|
|
1878
|
-
callee,
|
|
1879
|
-
arguments:
|
|
1663
|
+
callee: convertNode(buffer[position + 3], buffer),
|
|
1664
|
+
arguments: convertNodeList(buffer[position + 4], buffer)
|
|
1880
1665
|
};
|
|
1881
1666
|
},
|
|
1882
|
-
function objectExpression(position, buffer
|
|
1883
|
-
const start = buffer[position++];
|
|
1884
|
-
const end = buffer[position++];
|
|
1885
|
-
const properties = convertNodeList(buffer[position], buffer, readString);
|
|
1667
|
+
function objectExpression(position, buffer) {
|
|
1886
1668
|
return {
|
|
1887
1669
|
type: 'ObjectExpression',
|
|
1888
|
-
start,
|
|
1889
|
-
end,
|
|
1890
|
-
properties
|
|
1670
|
+
start: buffer[position],
|
|
1671
|
+
end: buffer[position + 1],
|
|
1672
|
+
properties: convertNodeList(buffer[position + 2], buffer)
|
|
1891
1673
|
};
|
|
1892
1674
|
},
|
|
1893
|
-
function objectPattern(position, buffer
|
|
1894
|
-
const start = buffer[position++];
|
|
1895
|
-
const end = buffer[position++];
|
|
1896
|
-
const properties = convertNodeList(buffer[position], buffer, readString);
|
|
1675
|
+
function objectPattern(position, buffer) {
|
|
1897
1676
|
return {
|
|
1898
1677
|
type: 'ObjectPattern',
|
|
1899
|
-
start,
|
|
1900
|
-
end,
|
|
1901
|
-
properties
|
|
1678
|
+
start: buffer[position],
|
|
1679
|
+
end: buffer[position + 1],
|
|
1680
|
+
properties: convertNodeList(buffer[position + 2], buffer)
|
|
1902
1681
|
};
|
|
1903
1682
|
},
|
|
1904
|
-
function privateIdentifier(position, buffer
|
|
1905
|
-
const start = buffer[position++];
|
|
1906
|
-
const end = buffer[position++];
|
|
1907
|
-
const name = convertString(buffer[position], buffer, readString);
|
|
1683
|
+
function privateIdentifier(position, buffer) {
|
|
1908
1684
|
return {
|
|
1909
1685
|
type: 'PrivateIdentifier',
|
|
1910
|
-
start,
|
|
1911
|
-
end,
|
|
1912
|
-
name
|
|
1686
|
+
start: buffer[position],
|
|
1687
|
+
end: buffer[position + 1],
|
|
1688
|
+
name: buffer.convertString(buffer[position + 2])
|
|
1913
1689
|
};
|
|
1914
1690
|
},
|
|
1915
|
-
function program(position, buffer
|
|
1916
|
-
const
|
|
1917
|
-
const end = buffer[position++];
|
|
1918
|
-
const body = convertNodeList(buffer[position++], buffer, readString);
|
|
1919
|
-
const invalidAnnotations = convertAnnotations(buffer[position], buffer);
|
|
1691
|
+
function program(position, buffer) {
|
|
1692
|
+
const invalidAnnotations = convertAnnotations(buffer[position + 3], buffer);
|
|
1920
1693
|
return {
|
|
1921
1694
|
type: 'Program',
|
|
1922
|
-
start,
|
|
1923
|
-
end,
|
|
1924
|
-
body,
|
|
1695
|
+
start: buffer[position],
|
|
1696
|
+
end: buffer[position + 1],
|
|
1697
|
+
body: convertNodeList(buffer[position + 2], buffer),
|
|
1925
1698
|
...(invalidAnnotations.length > 0 ? { [INVALID_ANNOTATION_KEY]: invalidAnnotations } : {}),
|
|
1926
1699
|
sourceType: 'module'
|
|
1927
1700
|
};
|
|
1928
1701
|
},
|
|
1929
|
-
function property(position, buffer
|
|
1930
|
-
const
|
|
1931
|
-
const
|
|
1932
|
-
const
|
|
1933
|
-
const method = (flags & 1) === 1;
|
|
1934
|
-
const shorthand = (flags & 2) === 2;
|
|
1935
|
-
const computed = (flags & 4) === 4;
|
|
1936
|
-
const keyPosition = buffer[position++];
|
|
1937
|
-
const value = convertNode(buffer[position++], buffer, readString);
|
|
1938
|
-
const kind = FIXED_STRINGS[buffer[position]];
|
|
1702
|
+
function property(position, buffer) {
|
|
1703
|
+
const flags = buffer[position + 2];
|
|
1704
|
+
const keyPosition = buffer[position + 3];
|
|
1705
|
+
const value = convertNode(buffer[position + 4], buffer);
|
|
1939
1706
|
return {
|
|
1940
1707
|
type: 'Property',
|
|
1941
|
-
start,
|
|
1942
|
-
end,
|
|
1943
|
-
method,
|
|
1944
|
-
shorthand,
|
|
1945
|
-
computed,
|
|
1946
|
-
key: keyPosition === 0 ? { ...value } : convertNode(keyPosition, buffer
|
|
1708
|
+
start: buffer[position],
|
|
1709
|
+
end: buffer[position + 1],
|
|
1710
|
+
method: (flags & 1) === 1,
|
|
1711
|
+
shorthand: (flags & 2) === 2,
|
|
1712
|
+
computed: (flags & 4) === 4,
|
|
1713
|
+
key: keyPosition === 0 ? { ...value } : convertNode(keyPosition, buffer),
|
|
1947
1714
|
value,
|
|
1948
|
-
kind
|
|
1715
|
+
kind: FIXED_STRINGS[buffer[position + 5]]
|
|
1949
1716
|
};
|
|
1950
1717
|
},
|
|
1951
|
-
function propertyDefinition(position, buffer
|
|
1952
|
-
const
|
|
1953
|
-
const
|
|
1954
|
-
const flags = buffer[position++];
|
|
1955
|
-
const isStatic = (flags & 1) === 1;
|
|
1956
|
-
const computed = (flags & 2) === 2;
|
|
1957
|
-
const key = convertNode(buffer[position++], buffer, readString);
|
|
1958
|
-
const valuePosition = buffer[position];
|
|
1959
|
-
const value = valuePosition === 0 ? null : convertNode(valuePosition, buffer, readString);
|
|
1718
|
+
function propertyDefinition(position, buffer) {
|
|
1719
|
+
const flags = buffer[position + 2];
|
|
1720
|
+
const valuePosition = buffer[position + 4];
|
|
1960
1721
|
return {
|
|
1961
1722
|
type: 'PropertyDefinition',
|
|
1962
|
-
start,
|
|
1963
|
-
end,
|
|
1964
|
-
static:
|
|
1965
|
-
computed,
|
|
1966
|
-
key,
|
|
1967
|
-
value
|
|
1723
|
+
start: buffer[position],
|
|
1724
|
+
end: buffer[position + 1],
|
|
1725
|
+
static: (flags & 1) === 1,
|
|
1726
|
+
computed: (flags & 2) === 2,
|
|
1727
|
+
key: convertNode(buffer[position + 3], buffer),
|
|
1728
|
+
value: valuePosition === 0 ? null : convertNode(valuePosition, buffer)
|
|
1968
1729
|
};
|
|
1969
1730
|
},
|
|
1970
|
-
function restElement(position, buffer
|
|
1971
|
-
const start = buffer[position++];
|
|
1972
|
-
const end = buffer[position++];
|
|
1973
|
-
const argument = convertNode(buffer[position], buffer, readString);
|
|
1731
|
+
function restElement(position, buffer) {
|
|
1974
1732
|
return {
|
|
1975
1733
|
type: 'RestElement',
|
|
1976
|
-
start,
|
|
1977
|
-
end,
|
|
1978
|
-
argument
|
|
1734
|
+
start: buffer[position],
|
|
1735
|
+
end: buffer[position + 1],
|
|
1736
|
+
argument: convertNode(buffer[position + 2], buffer)
|
|
1979
1737
|
};
|
|
1980
1738
|
},
|
|
1981
|
-
function returnStatement(position, buffer
|
|
1982
|
-
const
|
|
1983
|
-
const end = buffer[position++];
|
|
1984
|
-
const argumentPosition = buffer[position];
|
|
1985
|
-
const argument = argumentPosition === 0 ? null : convertNode(argumentPosition, buffer, readString);
|
|
1739
|
+
function returnStatement(position, buffer) {
|
|
1740
|
+
const argumentPosition = buffer[position + 2];
|
|
1986
1741
|
return {
|
|
1987
1742
|
type: 'ReturnStatement',
|
|
1988
|
-
start,
|
|
1989
|
-
end,
|
|
1990
|
-
argument
|
|
1743
|
+
start: buffer[position],
|
|
1744
|
+
end: buffer[position + 1],
|
|
1745
|
+
argument: argumentPosition === 0 ? null : convertNode(argumentPosition, buffer)
|
|
1991
1746
|
};
|
|
1992
1747
|
},
|
|
1993
|
-
function sequenceExpression(position, buffer
|
|
1994
|
-
const start = buffer[position++];
|
|
1995
|
-
const end = buffer[position++];
|
|
1996
|
-
const expressions = convertNodeList(buffer[position], buffer, readString);
|
|
1748
|
+
function sequenceExpression(position, buffer) {
|
|
1997
1749
|
return {
|
|
1998
1750
|
type: 'SequenceExpression',
|
|
1999
|
-
start,
|
|
2000
|
-
end,
|
|
2001
|
-
expressions
|
|
1751
|
+
start: buffer[position],
|
|
1752
|
+
end: buffer[position + 1],
|
|
1753
|
+
expressions: convertNodeList(buffer[position + 2], buffer)
|
|
2002
1754
|
};
|
|
2003
1755
|
},
|
|
2004
|
-
function spreadElement(position, buffer
|
|
2005
|
-
const start = buffer[position++];
|
|
2006
|
-
const end = buffer[position++];
|
|
2007
|
-
const argument = convertNode(buffer[position], buffer, readString);
|
|
1756
|
+
function spreadElement(position, buffer) {
|
|
2008
1757
|
return {
|
|
2009
1758
|
type: 'SpreadElement',
|
|
2010
|
-
start,
|
|
2011
|
-
end,
|
|
2012
|
-
argument
|
|
1759
|
+
start: buffer[position],
|
|
1760
|
+
end: buffer[position + 1],
|
|
1761
|
+
argument: convertNode(buffer[position + 2], buffer)
|
|
2013
1762
|
};
|
|
2014
1763
|
},
|
|
2015
|
-
function staticBlock(position, buffer
|
|
2016
|
-
const start = buffer[position++];
|
|
2017
|
-
const end = buffer[position++];
|
|
2018
|
-
const body = convertNodeList(buffer[position], buffer, readString);
|
|
1764
|
+
function staticBlock(position, buffer) {
|
|
2019
1765
|
return {
|
|
2020
1766
|
type: 'StaticBlock',
|
|
2021
|
-
start,
|
|
2022
|
-
end,
|
|
2023
|
-
body
|
|
1767
|
+
start: buffer[position],
|
|
1768
|
+
end: buffer[position + 1],
|
|
1769
|
+
body: convertNodeList(buffer[position + 2], buffer)
|
|
2024
1770
|
};
|
|
2025
1771
|
},
|
|
2026
1772
|
function superElement(position, buffer) {
|
|
2027
|
-
const start = buffer[position++];
|
|
2028
|
-
const end = buffer[position++];
|
|
2029
1773
|
return {
|
|
2030
1774
|
type: 'Super',
|
|
2031
|
-
start,
|
|
2032
|
-
end
|
|
1775
|
+
start: buffer[position],
|
|
1776
|
+
end: buffer[position + 1]
|
|
2033
1777
|
};
|
|
2034
1778
|
},
|
|
2035
|
-
function switchCase(position, buffer
|
|
2036
|
-
const
|
|
2037
|
-
const end = buffer[position++];
|
|
2038
|
-
const testPosition = buffer[position++];
|
|
2039
|
-
const test = testPosition === 0 ? null : convertNode(testPosition, buffer, readString);
|
|
2040
|
-
const consequent = convertNodeList(buffer[position], buffer, readString);
|
|
1779
|
+
function switchCase(position, buffer) {
|
|
1780
|
+
const testPosition = buffer[position + 2];
|
|
2041
1781
|
return {
|
|
2042
1782
|
type: 'SwitchCase',
|
|
2043
|
-
start,
|
|
2044
|
-
end,
|
|
2045
|
-
test,
|
|
2046
|
-
consequent
|
|
1783
|
+
start: buffer[position],
|
|
1784
|
+
end: buffer[position + 1],
|
|
1785
|
+
test: testPosition === 0 ? null : convertNode(testPosition, buffer),
|
|
1786
|
+
consequent: convertNodeList(buffer[position + 3], buffer)
|
|
2047
1787
|
};
|
|
2048
1788
|
},
|
|
2049
|
-
function switchStatement(position, buffer
|
|
2050
|
-
const start = buffer[position++];
|
|
2051
|
-
const end = buffer[position++];
|
|
2052
|
-
const discriminant = convertNode(buffer[position++], buffer, readString);
|
|
2053
|
-
const cases = convertNodeList(buffer[position], buffer, readString);
|
|
1789
|
+
function switchStatement(position, buffer) {
|
|
2054
1790
|
return {
|
|
2055
1791
|
type: 'SwitchStatement',
|
|
2056
|
-
start,
|
|
2057
|
-
end,
|
|
2058
|
-
discriminant,
|
|
2059
|
-
cases
|
|
1792
|
+
start: buffer[position],
|
|
1793
|
+
end: buffer[position + 1],
|
|
1794
|
+
discriminant: convertNode(buffer[position + 2], buffer),
|
|
1795
|
+
cases: convertNodeList(buffer[position + 3], buffer)
|
|
2060
1796
|
};
|
|
2061
1797
|
},
|
|
2062
|
-
function taggedTemplateExpression(position, buffer
|
|
2063
|
-
const start = buffer[position++];
|
|
2064
|
-
const end = buffer[position++];
|
|
2065
|
-
const tag = convertNode(buffer[position++], buffer, readString);
|
|
2066
|
-
const quasi = convertNode(buffer[position], buffer, readString);
|
|
1798
|
+
function taggedTemplateExpression(position, buffer) {
|
|
2067
1799
|
return {
|
|
2068
1800
|
type: 'TaggedTemplateExpression',
|
|
2069
|
-
start,
|
|
2070
|
-
end,
|
|
2071
|
-
tag,
|
|
2072
|
-
quasi
|
|
1801
|
+
start: buffer[position],
|
|
1802
|
+
end: buffer[position + 1],
|
|
1803
|
+
tag: convertNode(buffer[position + 2], buffer),
|
|
1804
|
+
quasi: convertNode(buffer[position + 3], buffer)
|
|
2073
1805
|
};
|
|
2074
1806
|
},
|
|
2075
|
-
function templateElement(position, buffer
|
|
2076
|
-
const
|
|
2077
|
-
const
|
|
2078
|
-
const
|
|
2079
|
-
const
|
|
2080
|
-
const cookedPosition = buffer[position++];
|
|
2081
|
-
const cooked = cookedPosition === 0 ? undefined : convertString(cookedPosition, buffer, readString);
|
|
2082
|
-
const raw = convertString(buffer[position], buffer, readString);
|
|
1807
|
+
function templateElement(position, buffer) {
|
|
1808
|
+
const flags = buffer[position + 2];
|
|
1809
|
+
const cookedPosition = buffer[position + 3];
|
|
1810
|
+
const cooked = cookedPosition === 0 ? undefined : buffer.convertString(cookedPosition);
|
|
1811
|
+
const raw = buffer.convertString(buffer[position + 4]);
|
|
2083
1812
|
return {
|
|
2084
1813
|
type: 'TemplateElement',
|
|
2085
|
-
start,
|
|
2086
|
-
end,
|
|
2087
|
-
tail,
|
|
1814
|
+
start: buffer[position],
|
|
1815
|
+
end: buffer[position + 1],
|
|
1816
|
+
tail: (flags & 1) === 1,
|
|
2088
1817
|
value: { cooked, raw }
|
|
2089
1818
|
};
|
|
2090
1819
|
},
|
|
2091
|
-
function templateLiteral(position, buffer
|
|
2092
|
-
const start = buffer[position++];
|
|
2093
|
-
const end = buffer[position++];
|
|
2094
|
-
const quasis = convertNodeList(buffer[position++], buffer, readString);
|
|
2095
|
-
const expressions = convertNodeList(buffer[position], buffer, readString);
|
|
1820
|
+
function templateLiteral(position, buffer) {
|
|
2096
1821
|
return {
|
|
2097
1822
|
type: 'TemplateLiteral',
|
|
2098
|
-
start,
|
|
2099
|
-
end,
|
|
2100
|
-
quasis,
|
|
2101
|
-
expressions
|
|
1823
|
+
start: buffer[position],
|
|
1824
|
+
end: buffer[position + 1],
|
|
1825
|
+
quasis: convertNodeList(buffer[position + 2], buffer),
|
|
1826
|
+
expressions: convertNodeList(buffer[position + 3], buffer)
|
|
2102
1827
|
};
|
|
2103
1828
|
},
|
|
2104
1829
|
function thisExpression(position, buffer) {
|
|
2105
|
-
const start = buffer[position++];
|
|
2106
|
-
const end = buffer[position++];
|
|
2107
1830
|
return {
|
|
2108
1831
|
type: 'ThisExpression',
|
|
2109
|
-
start,
|
|
2110
|
-
end
|
|
1832
|
+
start: buffer[position],
|
|
1833
|
+
end: buffer[position + 1]
|
|
2111
1834
|
};
|
|
2112
1835
|
},
|
|
2113
|
-
function throwStatement(position, buffer
|
|
2114
|
-
const start = buffer[position++];
|
|
2115
|
-
const end = buffer[position++];
|
|
2116
|
-
const argument = convertNode(buffer[position], buffer, readString);
|
|
1836
|
+
function throwStatement(position, buffer) {
|
|
2117
1837
|
return {
|
|
2118
1838
|
type: 'ThrowStatement',
|
|
2119
|
-
start,
|
|
2120
|
-
end,
|
|
2121
|
-
argument
|
|
1839
|
+
start: buffer[position],
|
|
1840
|
+
end: buffer[position + 1],
|
|
1841
|
+
argument: convertNode(buffer[position + 2], buffer)
|
|
2122
1842
|
};
|
|
2123
1843
|
},
|
|
2124
|
-
function tryStatement(position, buffer
|
|
2125
|
-
const
|
|
2126
|
-
const
|
|
2127
|
-
const block = convertNode(buffer[position++], buffer, readString);
|
|
2128
|
-
const handlerPosition = buffer[position++];
|
|
2129
|
-
const handler = handlerPosition === 0 ? null : convertNode(handlerPosition, buffer, readString);
|
|
2130
|
-
const finalizerPosition = buffer[position];
|
|
2131
|
-
const finalizer = finalizerPosition === 0 ? null : convertNode(finalizerPosition, buffer, readString);
|
|
1844
|
+
function tryStatement(position, buffer) {
|
|
1845
|
+
const handlerPosition = buffer[position + 3];
|
|
1846
|
+
const finalizerPosition = buffer[position + 4];
|
|
2132
1847
|
return {
|
|
2133
1848
|
type: 'TryStatement',
|
|
2134
|
-
start,
|
|
2135
|
-
end,
|
|
2136
|
-
block,
|
|
2137
|
-
handler,
|
|
2138
|
-
finalizer
|
|
1849
|
+
start: buffer[position],
|
|
1850
|
+
end: buffer[position + 1],
|
|
1851
|
+
block: convertNode(buffer[position + 2], buffer),
|
|
1852
|
+
handler: handlerPosition === 0 ? null : convertNode(handlerPosition, buffer),
|
|
1853
|
+
finalizer: finalizerPosition === 0 ? null : convertNode(finalizerPosition, buffer)
|
|
2139
1854
|
};
|
|
2140
1855
|
},
|
|
2141
|
-
function unaryExpression(position, buffer
|
|
2142
|
-
const start = buffer[position++];
|
|
2143
|
-
const end = buffer[position++];
|
|
2144
|
-
const operator = FIXED_STRINGS[buffer[position++]];
|
|
2145
|
-
const argument = convertNode(buffer[position], buffer, readString);
|
|
1856
|
+
function unaryExpression(position, buffer) {
|
|
2146
1857
|
return {
|
|
2147
1858
|
type: 'UnaryExpression',
|
|
2148
|
-
start,
|
|
2149
|
-
end,
|
|
2150
|
-
operator,
|
|
2151
|
-
argument,
|
|
1859
|
+
start: buffer[position],
|
|
1860
|
+
end: buffer[position + 1],
|
|
1861
|
+
operator: FIXED_STRINGS[buffer[position + 2]],
|
|
1862
|
+
argument: convertNode(buffer[position + 3], buffer),
|
|
2152
1863
|
prefix: true
|
|
2153
1864
|
};
|
|
2154
1865
|
},
|
|
2155
|
-
function updateExpression(position, buffer
|
|
2156
|
-
const
|
|
2157
|
-
const end = buffer[position++];
|
|
2158
|
-
const flags = buffer[position++];
|
|
2159
|
-
const prefix = (flags & 1) === 1;
|
|
2160
|
-
const operator = FIXED_STRINGS[buffer[position++]];
|
|
2161
|
-
const argument = convertNode(buffer[position], buffer, readString);
|
|
1866
|
+
function updateExpression(position, buffer) {
|
|
1867
|
+
const flags = buffer[position + 2];
|
|
2162
1868
|
return {
|
|
2163
1869
|
type: 'UpdateExpression',
|
|
2164
|
-
start,
|
|
2165
|
-
end,
|
|
2166
|
-
prefix,
|
|
2167
|
-
operator,
|
|
2168
|
-
argument
|
|
1870
|
+
start: buffer[position],
|
|
1871
|
+
end: buffer[position + 1],
|
|
1872
|
+
prefix: (flags & 1) === 1,
|
|
1873
|
+
operator: FIXED_STRINGS[buffer[position + 3]],
|
|
1874
|
+
argument: convertNode(buffer[position + 4], buffer)
|
|
2169
1875
|
};
|
|
2170
1876
|
},
|
|
2171
|
-
function variableDeclaration(position, buffer
|
|
2172
|
-
const start = buffer[position++];
|
|
2173
|
-
const end = buffer[position++];
|
|
2174
|
-
const kind = FIXED_STRINGS[buffer[position++]];
|
|
2175
|
-
const declarations = convertNodeList(buffer[position], buffer, readString);
|
|
1877
|
+
function variableDeclaration(position, buffer) {
|
|
2176
1878
|
return {
|
|
2177
1879
|
type: 'VariableDeclaration',
|
|
2178
|
-
start,
|
|
2179
|
-
end,
|
|
2180
|
-
kind,
|
|
2181
|
-
declarations
|
|
1880
|
+
start: buffer[position],
|
|
1881
|
+
end: buffer[position + 1],
|
|
1882
|
+
kind: FIXED_STRINGS[buffer[position + 2]],
|
|
1883
|
+
declarations: convertNodeList(buffer[position + 3], buffer)
|
|
2182
1884
|
};
|
|
2183
1885
|
},
|
|
2184
|
-
function variableDeclarator(position, buffer
|
|
2185
|
-
const
|
|
2186
|
-
const end = buffer[position++];
|
|
2187
|
-
const id = convertNode(buffer[position++], buffer, readString);
|
|
2188
|
-
const initPosition = buffer[position];
|
|
2189
|
-
const init = initPosition === 0 ? null : convertNode(initPosition, buffer, readString);
|
|
1886
|
+
function variableDeclarator(position, buffer) {
|
|
1887
|
+
const initPosition = buffer[position + 3];
|
|
2190
1888
|
return {
|
|
2191
1889
|
type: 'VariableDeclarator',
|
|
2192
|
-
start,
|
|
2193
|
-
end,
|
|
2194
|
-
id,
|
|
2195
|
-
init
|
|
1890
|
+
start: buffer[position],
|
|
1891
|
+
end: buffer[position + 1],
|
|
1892
|
+
id: convertNode(buffer[position + 2], buffer),
|
|
1893
|
+
init: initPosition === 0 ? null : convertNode(initPosition, buffer)
|
|
2196
1894
|
};
|
|
2197
1895
|
},
|
|
2198
|
-
function whileStatement(position, buffer
|
|
2199
|
-
const start = buffer[position++];
|
|
2200
|
-
const end = buffer[position++];
|
|
2201
|
-
const test = convertNode(buffer[position++], buffer, readString);
|
|
2202
|
-
const body = convertNode(buffer[position], buffer, readString);
|
|
1896
|
+
function whileStatement(position, buffer) {
|
|
2203
1897
|
return {
|
|
2204
1898
|
type: 'WhileStatement',
|
|
2205
|
-
start,
|
|
2206
|
-
end,
|
|
2207
|
-
test,
|
|
2208
|
-
body
|
|
1899
|
+
start: buffer[position],
|
|
1900
|
+
end: buffer[position + 1],
|
|
1901
|
+
test: convertNode(buffer[position + 2], buffer),
|
|
1902
|
+
body: convertNode(buffer[position + 3], buffer)
|
|
2209
1903
|
};
|
|
2210
1904
|
},
|
|
2211
|
-
function yieldExpression(position, buffer
|
|
2212
|
-
const
|
|
2213
|
-
const
|
|
2214
|
-
const flags = buffer[position++];
|
|
2215
|
-
const delegate = (flags & 1) === 1;
|
|
2216
|
-
const argumentPosition = buffer[position];
|
|
2217
|
-
const argument = argumentPosition === 0 ? null : convertNode(argumentPosition, buffer, readString);
|
|
1905
|
+
function yieldExpression(position, buffer) {
|
|
1906
|
+
const flags = buffer[position + 2];
|
|
1907
|
+
const argumentPosition = buffer[position + 3];
|
|
2218
1908
|
return {
|
|
2219
1909
|
type: 'YieldExpression',
|
|
2220
|
-
start,
|
|
2221
|
-
end,
|
|
2222
|
-
delegate,
|
|
2223
|
-
argument
|
|
1910
|
+
start: buffer[position],
|
|
1911
|
+
end: buffer[position + 1],
|
|
1912
|
+
delegate: (flags & 1) === 1,
|
|
1913
|
+
argument: argumentPosition === 0 ? null : convertNode(argumentPosition, buffer)
|
|
2224
1914
|
};
|
|
2225
1915
|
}
|
|
2226
1916
|
];
|
|
2227
|
-
function convertNode(position, buffer
|
|
1917
|
+
function convertNode(position, buffer) {
|
|
2228
1918
|
const nodeType = buffer[position];
|
|
2229
1919
|
const converter = nodeConverters[nodeType];
|
|
2230
1920
|
/* istanbul ignore if: This should never be executed but is a safeguard against faulty buffers */
|
|
@@ -2232,42 +1922,43 @@ function convertNode(position, buffer, readString) {
|
|
|
2232
1922
|
console.trace();
|
|
2233
1923
|
throw new Error(`Unknown node type: ${nodeType}`);
|
|
2234
1924
|
}
|
|
2235
|
-
return converter(position + 1, buffer
|
|
1925
|
+
return converter(position + 1, buffer);
|
|
2236
1926
|
}
|
|
2237
|
-
function convertNodeList(position, buffer
|
|
1927
|
+
function convertNodeList(position, buffer) {
|
|
2238
1928
|
if (position === 0)
|
|
2239
1929
|
return EMPTY_ARRAY;
|
|
2240
1930
|
const length = buffer[position++];
|
|
2241
1931
|
const list = [];
|
|
2242
1932
|
for (let index = 0; index < length; index++) {
|
|
2243
1933
|
const nodePosition = buffer[position++];
|
|
2244
|
-
list.push(nodePosition ? convertNode(nodePosition, buffer
|
|
1934
|
+
list.push(nodePosition ? convertNode(nodePosition, buffer) : null);
|
|
2245
1935
|
}
|
|
2246
1936
|
return list;
|
|
2247
1937
|
}
|
|
2248
1938
|
|
|
2249
|
-
function
|
|
1939
|
+
function getAstBuffer(astBuffer) {
|
|
1940
|
+
const array = new Uint32Array(astBuffer.buffer);
|
|
1941
|
+
let convertString;
|
|
2250
1942
|
if (typeof Buffer !== 'undefined' && astBuffer instanceof Buffer) {
|
|
2251
|
-
|
|
2252
|
-
|
|
1943
|
+
convertString = (position) => {
|
|
1944
|
+
const length = array[position++];
|
|
1945
|
+
const bytePosition = position << 2;
|
|
1946
|
+
return astBuffer.toString('utf8', bytePosition, bytePosition + length);
|
|
2253
1947
|
};
|
|
2254
1948
|
}
|
|
2255
1949
|
else {
|
|
2256
1950
|
const textDecoder = new TextDecoder();
|
|
2257
|
-
|
|
2258
|
-
|
|
1951
|
+
convertString = (position) => {
|
|
1952
|
+
const length = array[position++];
|
|
1953
|
+
const bytePosition = position << 2;
|
|
1954
|
+
return textDecoder.decode(astBuffer.subarray(bytePosition, bytePosition + length));
|
|
2259
1955
|
};
|
|
2260
1956
|
}
|
|
1957
|
+
return Object.assign(array, { convertString });
|
|
2261
1958
|
}
|
|
2262
1959
|
|
|
2263
|
-
const parseAst = (input, { allowReturnOutsideFunction = false } = {}) =>
|
|
2264
|
-
|
|
2265
|
-
return convertProgram(astBuffer.buffer, getReadStringFunction(astBuffer));
|
|
2266
|
-
};
|
|
2267
|
-
const parseAstAsync = async (input, { allowReturnOutsideFunction = false, signal } = {}) => {
|
|
2268
|
-
const astBuffer = await native_js.parseAsync(input, allowReturnOutsideFunction, signal);
|
|
2269
|
-
return convertProgram(astBuffer.buffer, getReadStringFunction(astBuffer));
|
|
2270
|
-
};
|
|
1960
|
+
const parseAst = (input, { allowReturnOutsideFunction = false } = {}) => convertProgram(getAstBuffer(native_js.parse(input, allowReturnOutsideFunction)));
|
|
1961
|
+
const parseAstAsync = async (input, { allowReturnOutsideFunction = false, signal } = {}) => convertProgram(getAstBuffer(await native_js.parseAsync(input, allowReturnOutsideFunction, signal)));
|
|
2271
1962
|
|
|
2272
1963
|
exports.ANNOTATION_KEY = ANNOTATION_KEY;
|
|
2273
1964
|
exports.ArrowFunctionExpression = ArrowFunctionExpression;
|
|
@@ -2291,6 +1982,7 @@ exports.Literal = Literal;
|
|
|
2291
1982
|
exports.Program = Program;
|
|
2292
1983
|
exports.Property = Property;
|
|
2293
1984
|
exports.ReturnStatement = ReturnStatement;
|
|
1985
|
+
exports.StaticBlock = StaticBlock;
|
|
2294
1986
|
exports.TemplateLiteral = TemplateLiteral;
|
|
2295
1987
|
exports.URL_AVOIDING_EVAL = URL_AVOIDING_EVAL;
|
|
2296
1988
|
exports.URL_NAME_IS_NOT_EXPORTED = URL_NAME_IS_NOT_EXPORTED;
|
|
@@ -2320,11 +2012,10 @@ exports.augmentCodeLocation = augmentCodeLocation;
|
|
|
2320
2012
|
exports.augmentLogMessage = augmentLogMessage;
|
|
2321
2013
|
exports.convertAnnotations = convertAnnotations;
|
|
2322
2014
|
exports.convertNode = convertNode;
|
|
2323
|
-
exports.convertString = convertString;
|
|
2324
2015
|
exports.error = error;
|
|
2325
2016
|
exports.getAliasName = getAliasName;
|
|
2017
|
+
exports.getAstBuffer = getAstBuffer;
|
|
2326
2018
|
exports.getImportPath = getImportPath;
|
|
2327
|
-
exports.getReadStringFunction = getReadStringFunction;
|
|
2328
2019
|
exports.getRollupError = getRollupError;
|
|
2329
2020
|
exports.getRollupUrl = getRollupUrl;
|
|
2330
2021
|
exports.isAbsolute = isAbsolute;
|