jdk-24/nashorn/test/script/nosecurity/parserapi.js.EXPECTED
2015-03-25 14:39:39 +03:00

7042 lines
208 KiB
Plaintext

[
{
"endPosition": "1113",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"endPosition": "1123",
"kind": "VARIABLE",
"name": "x",
"startPosition": "1117",
"initializer": {
"endPosition": "1123",
"kind": "ARRAY_LITERAL",
"elements": [],
"startPosition": "1121"
}
},
{
"endPosition": "1147",
"kind": "VARIABLE",
"name": "y",
"startPosition": "1129",
"initializer": {
"endPosition": "1147",
"kind": "ARRAY_LITERAL",
"elements": [
{
"endPosition": "1135",
"kind": "NUMBER_LITERAL",
"value": "1",
"startPosition": "1134"
},
{
"endPosition": "1139",
"kind": "NUMBER_LITERAL",
"value": "43",
"startPosition": "1137"
},
{
"endPosition": "1142",
"kind": "NUMBER_LITERAL",
"value": "5",
"startPosition": "1141"
},
{
"endPosition": "1146",
"kind": "NUMBER_LITERAL",
"value": "45",
"startPosition": "1144"
}
],
"startPosition": "1133"
}
},
{
"endPosition": "1165",
"kind": "VARIABLE",
"name": "z",
"startPosition": "1153",
"initializer": {
"endPosition": "1165",
"kind": "ARRAY_LITERAL",
"elements": [
{
"endPosition": "1160",
"kind": "NUMBER_LITERAL",
"value": "34",
"startPosition": "1158"
},
null,
null,
{
"endPosition": "1164",
"kind": "NUMBER_LITERAL",
"value": "4",
"startPosition": "1163"
}
],
"startPosition": "1157"
}
},
{
"endPosition": "1200",
"kind": "VARIABLE",
"name": "k",
"startPosition": "1171",
"initializer": {
"endPosition": "1200",
"kind": "ARRAY_LITERAL",
"elements": [
{
"endPosition": "1179",
"kind": "OBJECT_LITERAL",
"startPosition": "1177",
"properties": []
},
{
"endPosition": "1189",
"kind": "OBJECT_LITERAL",
"startPosition": "1181",
"properties": [
{
"endPosition": "1185",
"kind": "PROPERTY",
"value": {
"endPosition": "1187",
"kind": "NUMBER_LITERAL",
"value": "3",
"startPosition": "1186"
},
"startPosition": "1183",
"key": {
"endPosition": "1184",
"kind": "IDENTIFIER",
"name": "x",
"startPosition": "1183"
}
}
]
},
{
"endPosition": "1197",
"kind": "STRING_LITERAL",
"value": "hello",
"startPosition": "1192"
}
],
"startPosition": "1175"
}
}
],
"sourceName": "parsertests/array_literal.js",
"strict": "false",
"startPosition": "1113"
}
,
{
"endPosition": "1126",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"expression": {
"endPosition": "1135",
"kind": "NUMBER_LITERAL",
"value": "314",
"startPosition": "1132"
},
"endPosition": "1135",
"kind": "ASSIGNMENT",
"variable": {
"endPosition": "1129",
"kind": "IDENTIFIER",
"name": "xyz",
"startPosition": "1126"
},
"startPosition": "1126"
},
"endPosition": "1135",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1126"
},
{
"expression": {
"expression": {
"endPosition": "1147",
"kind": "NUMBER_LITERAL",
"value": "314",
"startPosition": "1144"
},
"endPosition": "1147",
"kind": "PLUS_ASSIGNMENT",
"variable": {
"endPosition": "1140",
"kind": "IDENTIFIER",
"name": "xyz",
"startPosition": "1137"
},
"startPosition": "1137"
},
"endPosition": "1147",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1137"
},
{
"expression": {
"expression": {
"endPosition": "1159",
"kind": "NUMBER_LITERAL",
"value": "314",
"startPosition": "1156"
},
"endPosition": "1159",
"kind": "MINUS_ASSIGNMENT",
"variable": {
"endPosition": "1152",
"kind": "IDENTIFIER",
"name": "xyz",
"startPosition": "1149"
},
"startPosition": "1149"
},
"endPosition": "1159",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1149"
},
{
"expression": {
"expression": {
"endPosition": "1171",
"kind": "NUMBER_LITERAL",
"value": "314",
"startPosition": "1168"
},
"endPosition": "1171",
"kind": "MULTIPLY_ASSIGNMENT",
"variable": {
"endPosition": "1164",
"kind": "IDENTIFIER",
"name": "xyz",
"startPosition": "1161"
},
"startPosition": "1161"
},
"endPosition": "1171",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1161"
},
{
"expression": {
"expression": {
"endPosition": "1183",
"kind": "NUMBER_LITERAL",
"value": "314",
"startPosition": "1180"
},
"endPosition": "1183",
"kind": "DIVIDE_ASSIGNMENT",
"variable": {
"endPosition": "1176",
"kind": "IDENTIFIER",
"name": "xyz",
"startPosition": "1173"
},
"startPosition": "1173"
},
"endPosition": "1183",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1173"
},
{
"expression": {
"expression": {
"endPosition": "1195",
"kind": "NUMBER_LITERAL",
"value": "314",
"startPosition": "1192"
},
"endPosition": "1195",
"kind": "REMAINDER_ASSIGNMENT",
"variable": {
"endPosition": "1188",
"kind": "IDENTIFIER",
"name": "xyz",
"startPosition": "1185"
},
"startPosition": "1185"
},
"endPosition": "1195",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1185"
},
{
"expression": {
"expression": {
"endPosition": "1208",
"kind": "NUMBER_LITERAL",
"value": "314",
"startPosition": "1205"
},
"endPosition": "1208",
"kind": "LEFT_SHIFT_ASSIGNMENT",
"variable": {
"endPosition": "1200",
"kind": "IDENTIFIER",
"name": "xyz",
"startPosition": "1197"
},
"startPosition": "1197"
},
"endPosition": "1208",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1197"
},
{
"expression": {
"expression": {
"endPosition": "1221",
"kind": "NUMBER_LITERAL",
"value": "314",
"startPosition": "1218"
},
"endPosition": "1221",
"kind": "RIGHT_SHIFT_ASSIGNMENT",
"variable": {
"endPosition": "1213",
"kind": "IDENTIFIER",
"name": "xyz",
"startPosition": "1210"
},
"startPosition": "1210"
},
"endPosition": "1221",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1210"
},
{
"expression": {
"expression": {
"endPosition": "1235",
"kind": "NUMBER_LITERAL",
"value": "314",
"startPosition": "1232"
},
"endPosition": "1235",
"kind": "UNSIGNED_RIGHT_SHIFT_ASSIGNMENT",
"variable": {
"endPosition": "1226",
"kind": "IDENTIFIER",
"name": "xyz",
"startPosition": "1223"
},
"startPosition": "1223"
},
"endPosition": "1235",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1223"
},
{
"expression": {
"expression": {
"endPosition": "1247",
"kind": "NUMBER_LITERAL",
"value": "314",
"startPosition": "1244"
},
"endPosition": "1247",
"kind": "AND_ASSIGNMENT",
"variable": {
"endPosition": "1240",
"kind": "IDENTIFIER",
"name": "xyz",
"startPosition": "1237"
},
"startPosition": "1237"
},
"endPosition": "1247",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1237"
},
{
"expression": {
"expression": {
"endPosition": "1259",
"kind": "NUMBER_LITERAL",
"value": "314",
"startPosition": "1256"
},
"endPosition": "1259",
"kind": "XOR_ASSIGNMENT",
"variable": {
"endPosition": "1252",
"kind": "IDENTIFIER",
"name": "xyz",
"startPosition": "1249"
},
"startPosition": "1249"
},
"endPosition": "1259",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1249"
},
{
"expression": {
"expression": {
"endPosition": "1271",
"kind": "NUMBER_LITERAL",
"value": "314",
"startPosition": "1268"
},
"endPosition": "1271",
"kind": "OR_ASSIGNMENT",
"variable": {
"endPosition": "1264",
"kind": "IDENTIFIER",
"name": "xyz",
"startPosition": "1261"
},
"startPosition": "1261"
},
"endPosition": "1271",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1261"
}
],
"sourceName": "parsertests/assignmentExpr.js",
"strict": "false",
"startPosition": "1126"
}
,
{
"endPosition": "1116",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"leftOperand": {
"endPosition": "1117",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1116"
},
"endPosition": "1121",
"kind": "MULTIPLY",
"rightOperand": {
"endPosition": "1121",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1120"
},
"startPosition": "1116"
},
"endPosition": "1121",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1116"
},
{
"expression": {
"leftOperand": {
"endPosition": "1123",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1122"
},
"endPosition": "1127",
"kind": "DIVIDE",
"rightOperand": {
"endPosition": "1127",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1126"
},
"startPosition": "1122"
},
"endPosition": "1127",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1122"
},
{
"expression": {
"leftOperand": {
"endPosition": "1130",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1129"
},
"endPosition": "1134",
"kind": "REMAINDER",
"rightOperand": {
"endPosition": "1134",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1133"
},
"startPosition": "1129"
},
"endPosition": "1134",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1129"
},
{
"expression": {
"leftOperand": {
"endPosition": "1137",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1136"
},
"endPosition": "1141",
"kind": "PLUS",
"rightOperand": {
"endPosition": "1141",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1140"
},
"startPosition": "1136"
},
"endPosition": "1141",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1136"
},
{
"expression": {
"leftOperand": {
"endPosition": "1144",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1143"
},
"endPosition": "1148",
"kind": "MINUS",
"rightOperand": {
"endPosition": "1148",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1147"
},
"startPosition": "1143"
},
"endPosition": "1148",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1143"
},
{
"expression": {
"leftOperand": {
"endPosition": "1151",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1150"
},
"endPosition": "1156",
"kind": "LEFT_SHIFT",
"rightOperand": {
"endPosition": "1156",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1155"
},
"startPosition": "1150"
},
"endPosition": "1156",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1150"
},
{
"expression": {
"leftOperand": {
"endPosition": "1159",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1158"
},
"endPosition": "1164",
"kind": "RIGHT_SHIFT",
"rightOperand": {
"endPosition": "1164",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1163"
},
"startPosition": "1158"
},
"endPosition": "1164",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1158"
},
{
"expression": {
"leftOperand": {
"endPosition": "1167",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1166"
},
"endPosition": "1173",
"kind": "UNSIGNED_RIGHT_SHIFT",
"rightOperand": {
"endPosition": "1173",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1172"
},
"startPosition": "1166"
},
"endPosition": "1173",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1166"
},
{
"expression": {
"leftOperand": {
"endPosition": "1176",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1175"
},
"endPosition": "1180",
"kind": "LESS_THAN",
"rightOperand": {
"endPosition": "1180",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1179"
},
"startPosition": "1175"
},
"endPosition": "1180",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1175"
},
{
"expression": {
"leftOperand": {
"endPosition": "1183",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1182"
},
"endPosition": "1187",
"kind": "GREATER_THAN",
"rightOperand": {
"endPosition": "1187",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1186"
},
"startPosition": "1182"
},
"endPosition": "1187",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1182"
},
{
"expression": {
"leftOperand": {
"endPosition": "1190",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1189"
},
"endPosition": "1195",
"kind": "LESS_THAN_EQUAL",
"rightOperand": {
"endPosition": "1195",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1194"
},
"startPosition": "1189"
},
"endPosition": "1195",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1189"
},
{
"expression": {
"leftOperand": {
"endPosition": "1198",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1197"
},
"endPosition": "1203",
"kind": "GREATER_THAN_EQUAL",
"rightOperand": {
"endPosition": "1203",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1202"
},
"startPosition": "1197"
},
"endPosition": "1203",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1197"
},
{
"expression": {
"leftOperand": {
"endPosition": "1206",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1205"
},
"expression": {
"endPosition": "1206",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1205"
},
"endPosition": "1219",
"kind": "INSTANCE_OF",
"rightOperand": {
"endPosition": "1219",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1218"
},
"type": {
"endPosition": "1219",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1218"
},
"startPosition": "1205"
},
"endPosition": "1219",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1205"
},
{
"expression": {
"leftOperand": {
"endPosition": "1222",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1221"
},
"endPosition": "1227",
"kind": "EQUAL_TO",
"rightOperand": {
"endPosition": "1227",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1226"
},
"startPosition": "1221"
},
"endPosition": "1227",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1221"
},
{
"expression": {
"leftOperand": {
"endPosition": "1230",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1229"
},
"endPosition": "1235",
"kind": "NOT_EQUAL_TO",
"rightOperand": {
"endPosition": "1235",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1234"
},
"startPosition": "1229"
},
"endPosition": "1235",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1229"
},
{
"expression": {
"leftOperand": {
"endPosition": "1238",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1237"
},
"endPosition": "1244",
"kind": "STRICT_EQUAL_TO",
"rightOperand": {
"endPosition": "1244",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1243"
},
"startPosition": "1237"
},
"endPosition": "1244",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1237"
},
{
"expression": {
"leftOperand": {
"endPosition": "1247",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1246"
},
"endPosition": "1253",
"kind": "STRICT_NOT_EQUAL_TO",
"rightOperand": {
"endPosition": "1253",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1252"
},
"startPosition": "1246"
},
"endPosition": "1253",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1246"
},
{
"expression": {
"leftOperand": {
"endPosition": "1256",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1255"
},
"endPosition": "1260",
"kind": "AND",
"rightOperand": {
"endPosition": "1260",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1259"
},
"startPosition": "1255"
},
"endPosition": "1260",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1255"
},
{
"expression": {
"leftOperand": {
"endPosition": "1263",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1262"
},
"endPosition": "1267",
"kind": "XOR",
"rightOperand": {
"endPosition": "1267",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1266"
},
"startPosition": "1262"
},
"endPosition": "1267",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1262"
},
{
"expression": {
"leftOperand": {
"endPosition": "1270",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1269"
},
"endPosition": "1274",
"kind": "OR",
"rightOperand": {
"endPosition": "1274",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1273"
},
"startPosition": "1269"
},
"endPosition": "1274",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1269"
},
{
"expression": {
"leftOperand": {
"endPosition": "1277",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1276"
},
"endPosition": "1282",
"kind": "CONDITIONAL_AND",
"rightOperand": {
"endPosition": "1282",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1281"
},
"startPosition": "1276"
},
"endPosition": "1282",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1276"
},
{
"expression": {
"leftOperand": {
"endPosition": "1285",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1284"
},
"endPosition": "1290",
"kind": "CONDITIONAL_OR",
"rightOperand": {
"endPosition": "1290",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1289"
},
"startPosition": "1284"
},
"endPosition": "1290",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1284"
}
],
"sourceName": "parsertests/binaryExpr.js",
"strict": "false",
"startPosition": "1116"
}
,
{
"endPosition": "1117",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"endPosition": "1119",
"kind": "BLOCK",
"statements": [],
"startPosition": "1117"
},
{
"endPosition": "1139",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1136",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1127",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "1122"
},
"arguments": [
{
"endPosition": "1134",
"kind": "STRING_LITERAL",
"value": "hello",
"startPosition": "1129"
}
],
"startPosition": "1122"
},
"endPosition": "1136",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1122"
}
],
"startPosition": "1120"
}
],
"sourceName": "parsertests/block.js",
"strict": "false",
"startPosition": "1117"
}
,
{
"endPosition": "1117",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"condition": {
"endPosition": "1128",
"kind": "BOOLEAN_LITERAL",
"value": "true",
"startPosition": "1124"
},
"endPosition": "1140",
"kind": "WHILE_LOOP",
"statement": {
"endPosition": "1140",
"kind": "BLOCK",
"statements": [
{
"endPosition": "1138",
"kind": "BREAK",
"startPosition": "1132"
}
],
"startPosition": "1130"
},
"startPosition": "1117"
},
{
"endPosition": "1179",
"kind": "LABELED_STATEMENT",
"statement": {
"endPosition": "1179",
"kind": "BLOCK",
"statements": [
{
"condition": {
"endPosition": "1161",
"kind": "BOOLEAN_LITERAL",
"value": "true",
"startPosition": "1157"
},
"endPosition": "1177",
"kind": "WHILE_LOOP",
"statement": {
"endPosition": "1177",
"kind": "BLOCK",
"statements": [
{
"endPosition": "1175",
"kind": "BREAK",
"label": "loop",
"startPosition": "1165"
}
],
"startPosition": "1163"
},
"startPosition": "1150"
}
],
"startPosition": "1148"
},
"label": "loop",
"startPosition": "1142"
},
{
"endPosition": "1214",
"kind": "LABELED_STATEMENT",
"statement": {
"endPosition": "1214",
"kind": "BLOCK",
"statements": [
{
"endPosition": "1212",
"kind": "FOR_LOOP",
"statement": {
"endPosition": "1212",
"kind": "BLOCK",
"statements": [
{
"endPosition": "1210",
"kind": "BREAK",
"label": "loop",
"startPosition": "1200"
}
],
"startPosition": "1198"
},
"startPosition": "1189"
}
],
"startPosition": "1187"
},
"label": "loop",
"startPosition": "1181"
}
],
"sourceName": "parsertests/breakStat.js",
"strict": "false",
"startPosition": "1117"
}
,
{
"endPosition": "1117",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"condition": {
"endPosition": "1118",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1117"
},
"endPosition": "1125",
"kind": "CONDITIONAL_EXPRESSION",
"trueExpression": {
"endPosition": "1121",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1120"
},
"falseExpression": {
"endPosition": "1125",
"kind": "IDENTIFIER",
"name": "c",
"startPosition": "1124"
},
"startPosition": "1118"
},
"endPosition": "1125",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1117"
}
],
"sourceName": "parsertests/condExpr.js",
"strict": "false",
"startPosition": "1117"
}
,
{
"endPosition": "1120",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"condition": {
"endPosition": "1131",
"kind": "BOOLEAN_LITERAL",
"value": "true",
"startPosition": "1127"
},
"endPosition": "1146",
"kind": "WHILE_LOOP",
"statement": {
"endPosition": "1146",
"kind": "BLOCK",
"statements": [
{
"endPosition": "1144",
"kind": "CONTINUE",
"startPosition": "1135"
}
],
"startPosition": "1133"
},
"startPosition": "1120"
},
{
"endPosition": "1191",
"kind": "LABELED_STATEMENT",
"statement": {
"endPosition": "1191",
"kind": "BLOCK",
"statements": [
{
"condition": {
"endPosition": "1168",
"kind": "BOOLEAN_LITERAL",
"value": "true",
"startPosition": "1164"
},
"endPosition": "1189",
"kind": "WHILE_LOOP",
"statement": {
"endPosition": "1189",
"kind": "BLOCK",
"statements": [
{
"endPosition": "1187",
"kind": "CONTINUE",
"label": "begin",
"startPosition": "1172"
}
],
"startPosition": "1170"
},
"startPosition": "1157"
}
],
"startPosition": "1155"
},
"label": "begin",
"startPosition": "1148"
},
{
"endPosition": "1231",
"kind": "LABELED_STATEMENT",
"statement": {
"endPosition": "1231",
"kind": "BLOCK",
"statements": [
{
"endPosition": "1229",
"kind": "FOR_LOOP",
"statement": {
"endPosition": "1229",
"kind": "BLOCK",
"statements": [
{
"endPosition": "1227",
"kind": "CONTINUE",
"label": "start",
"startPosition": "1212"
}
],
"startPosition": "1210"
},
"startPosition": "1202"
}
],
"startPosition": "1200"
},
"label": "start",
"startPosition": "1193"
}
],
"sourceName": "parsertests/continueStat.js",
"strict": "false",
"startPosition": "1120"
}
,
{
"endPosition": "1118",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"endPosition": "1127",
"kind": "DEBUGGER",
"startPosition": "1118"
}
],
"sourceName": "parsertests/debuggerStat.js",
"strict": "false",
"startPosition": "1118"
}
,
{
"endPosition": "1137",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"endPosition": "1172",
"kind": "FUNCTION",
"name": "hello",
"body": {
"endPosition": "1170",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1170",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1161",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "1156"
},
"arguments": [
{
"endPosition": "1168",
"kind": "STRING_LITERAL",
"value": "hello",
"startPosition": "1163"
}
],
"startPosition": "1156"
},
"endPosition": "1170",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1156"
}
],
"startPosition": "1154"
},
"strict": "false",
"startPosition": "1137",
"parameters": []
},
{
"endPosition": "1203",
"kind": "FUNCTION",
"name": "hello",
"body": {
"endPosition": "1201",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1201",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1198",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "1193"
},
"arguments": [
{
"endPosition": "1200",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1199"
}
],
"startPosition": "1193"
},
"endPosition": "1201",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1193"
}
],
"startPosition": "1191"
},
"strict": "false",
"startPosition": "1173",
"parameters": [
{
"endPosition": "1189",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1188"
}
]
},
{
"endPosition": "1240",
"kind": "FUNCTION",
"name": "hello",
"body": {
"endPosition": "1238",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1238",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1232",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "1227"
},
"arguments": [
{
"endPosition": "1234",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1233"
},
{
"endPosition": "1237",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1236"
}
],
"startPosition": "1227"
},
"endPosition": "1238",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1227"
}
],
"startPosition": "1225"
},
"strict": "false",
"startPosition": "1204",
"parameters": [
{
"endPosition": "1220",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1219"
},
{
"endPosition": "1223",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1222"
}
]
},
{
"endPosition": "1282",
"kind": "VARIABLE",
"name": "hello",
"startPosition": "1245",
"initializer": {
"endPosition": "1264",
"kind": "FUNCTION_EXPRESSION",
"body": {
"endPosition": "1280",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1280",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1271",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "1266"
},
"arguments": [
{
"endPosition": "1278",
"kind": "STRING_LITERAL",
"value": "hello",
"startPosition": "1273"
}
],
"startPosition": "1266"
},
"endPosition": "1280",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1266"
}
],
"startPosition": "1264"
},
"strict": "false",
"startPosition": "1264",
"parameters": []
}
},
{
"endPosition": "1331",
"kind": "VARIABLE",
"name": "hello",
"startPosition": "1288",
"initializer": {
"endPosition": "1313",
"kind": "FUNCTION_EXPRESSION",
"name": "hello",
"body": {
"endPosition": "1329",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1329",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1320",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "1315"
},
"arguments": [
{
"endPosition": "1327",
"kind": "STRING_LITERAL",
"value": "hello",
"startPosition": "1322"
}
],
"startPosition": "1315"
},
"endPosition": "1329",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1315"
}
],
"startPosition": "1313"
},
"strict": "false",
"startPosition": "1313",
"parameters": []
}
},
{
"expression": {
"endPosition": "1344",
"kind": "FUNCTION_EXPRESSION",
"body": {
"endPosition": "1345",
"kind": "BLOCK",
"statements": [],
"startPosition": "1344"
},
"strict": "false",
"startPosition": "1344",
"parameters": []
},
"endPosition": "1347",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1333"
},
{
"endPosition": "1380",
"kind": "FUNCTION",
"name": "test",
"body": {
"endPosition": "1377",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1377",
"kind": "STRING_LITERAL",
"value": "use strict",
"startPosition": "1367"
},
"endPosition": "1377",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1367"
}
],
"startPosition": "1364"
},
"strict": "true",
"startPosition": "1348",
"parameters": []
}
],
"sourceName": "parsertests/functions.js",
"strict": "false",
"startPosition": "1137"
}
,
{
"endPosition": "1114",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"condition": {
"endPosition": "1120",
"kind": "IDENTIFIER",
"name": "js",
"startPosition": "1118"
},
"endPosition": "1135",
"kind": "IF",
"startPosition": "1114",
"thenStatement": {
"endPosition": "1135",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1133",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1131",
"kind": "IDENTIFIER",
"name": "nashorn",
"startPosition": "1124"
},
"arguments": [],
"startPosition": "1124"
},
"endPosition": "1133",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1124"
}
],
"startPosition": "1122"
}
},
{
"condition": {
"endPosition": "1143",
"kind": "IDENTIFIER",
"name": "js",
"startPosition": "1141"
},
"elseStatement": {
"endPosition": "1174",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1172",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1170",
"kind": "IDENTIFIER",
"name": "java",
"startPosition": "1166"
},
"arguments": [],
"startPosition": "1166"
},
"endPosition": "1172",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1166"
}
],
"startPosition": "1164"
},
"endPosition": "1174",
"kind": "IF",
"startPosition": "1137",
"thenStatement": {
"endPosition": "1158",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1156",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1154",
"kind": "IDENTIFIER",
"name": "nashorn",
"startPosition": "1147"
},
"arguments": [],
"startPosition": "1147"
},
"endPosition": "1156",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1147"
}
],
"startPosition": "1145"
}
}
],
"sourceName": "parsertests/ifStat.js",
"strict": "false",
"startPosition": "1114"
}
,
{
"endPosition": "1113",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"endPosition": "1144",
"kind": "LABELED_STATEMENT",
"statement": {
"endPosition": "1144",
"kind": "BLOCK",
"statements": [
{
"endPosition": "1142",
"kind": "FOR_LOOP",
"statement": {
"endPosition": "1142",
"kind": "BREAK",
"label": "begin",
"startPosition": "1131"
},
"startPosition": "1122"
}
],
"startPosition": "1120"
},
"label": "begin",
"startPosition": "1113"
},
{
"endPosition": "1181",
"kind": "LABELED_STATEMENT",
"statement": {
"endPosition": "1181",
"kind": "BLOCK",
"statements": [
{
"condition": {
"endPosition": "1166",
"kind": "BOOLEAN_LITERAL",
"value": "true",
"startPosition": "1162"
},
"endPosition": "1179",
"kind": "WHILE_LOOP",
"statement": {
"endPosition": "1179",
"kind": "BREAK",
"label": "begin",
"startPosition": "1168"
},
"startPosition": "1155"
}
],
"startPosition": "1153"
},
"label": "begin",
"startPosition": "1146"
}
],
"sourceName": "parsertests/labelledStat.js",
"strict": "false",
"startPosition": "1113"
}
,
{
"endPosition": "1125",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"expression": {
"endPosition": "1126",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1125"
},
"endPosition": "1129",
"kind": "ARRAY_ACCESS",
"index": {
"endPosition": "1128",
"kind": "NUMBER_LITERAL",
"value": "3",
"startPosition": "1127"
},
"startPosition": "1125"
},
"endPosition": "1129",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1125"
},
{
"expression": {
"expression": {
"endPosition": "1132",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1131"
},
"endPosition": "1135",
"kind": "ARRAY_ACCESS",
"index": {
"endPosition": "1134",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1133"
},
"startPosition": "1131"
},
"endPosition": "1135",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1131"
},
{
"expression": {
"expression": {
"endPosition": "1138",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1137"
},
"endPosition": "1145",
"kind": "ARRAY_ACCESS",
"index": {
"endPosition": "1143",
"kind": "STRING_LITERAL",
"value": "foo",
"startPosition": "1140"
},
"startPosition": "1137"
},
"endPosition": "1145",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1137"
},
{
"expression": {
"identifier": "foo",
"expression": {
"endPosition": "1150",
"kind": "IDENTIFIER",
"name": "obj",
"startPosition": "1147"
},
"endPosition": "1154",
"kind": "MEMBER_SELECT",
"startPosition": "1147"
},
"endPosition": "1154",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1147"
},
{
"expression": {
"identifier": "bar",
"expression": {
"identifier": "foo",
"expression": {
"endPosition": "1159",
"kind": "IDENTIFIER",
"name": "obj",
"startPosition": "1156"
},
"endPosition": "1163",
"kind": "MEMBER_SELECT",
"startPosition": "1156"
},
"endPosition": "1167",
"kind": "MEMBER_SELECT",
"startPosition": "1156"
},
"endPosition": "1167",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1156"
},
{
"expression": {
"constructorExpression": {
"endPosition": "1177",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1177",
"kind": "IDENTIFIER",
"name": "Type",
"startPosition": "1173"
},
"arguments": [],
"startPosition": "1173"
},
"endPosition": "1177",
"kind": "NEW",
"startPosition": "1169"
},
"endPosition": "1177",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1169"
},
{
"expression": {
"constructorExpression": {
"endPosition": "1189",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1187",
"kind": "IDENTIFIER",
"name": "Type",
"startPosition": "1183"
},
"arguments": [],
"startPosition": "1183"
},
"endPosition": "1189",
"kind": "NEW",
"startPosition": "1179"
},
"endPosition": "1189",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1179"
},
{
"expression": {
"constructorExpression": {
"endPosition": "1211",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1199",
"kind": "IDENTIFIER",
"name": "Type",
"startPosition": "1195"
},
"arguments": [
{
"endPosition": "1201",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1200"
},
{
"endPosition": "1209",
"kind": "STRING_LITERAL",
"value": "hello",
"startPosition": "1204"
}
],
"startPosition": "1195"
},
"endPosition": "1211",
"kind": "NEW",
"startPosition": "1191"
},
"endPosition": "1211",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1191"
},
{
"expression": {
"constructorExpression": {
"endPosition": "1225",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "Type",
"expression": {
"endPosition": "1220",
"kind": "IDENTIFIER",
"name": "obj",
"startPosition": "1217"
},
"endPosition": "1225",
"kind": "MEMBER_SELECT",
"startPosition": "1217"
},
"arguments": [],
"startPosition": "1220"
},
"endPosition": "1225",
"kind": "NEW",
"startPosition": "1213"
},
"endPosition": "1225",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1213"
},
{
"expression": {
"constructorExpression": {
"endPosition": "1241",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "Type",
"expression": {
"endPosition": "1234",
"kind": "IDENTIFIER",
"name": "obj",
"startPosition": "1231"
},
"endPosition": "1239",
"kind": "MEMBER_SELECT",
"startPosition": "1231"
},
"arguments": [],
"startPosition": "1234"
},
"endPosition": "1241",
"kind": "NEW",
"startPosition": "1227"
},
"endPosition": "1241",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1227"
},
{
"expression": {
"constructorExpression": {
"endPosition": "1267",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "Type",
"expression": {
"endPosition": "1250",
"kind": "IDENTIFIER",
"name": "obj",
"startPosition": "1247"
},
"endPosition": "1255",
"kind": "MEMBER_SELECT",
"startPosition": "1247"
},
"arguments": [
{
"endPosition": "1257",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1256"
},
{
"endPosition": "1265",
"kind": "STRING_LITERAL",
"value": "hello",
"startPosition": "1260"
}
],
"startPosition": "1250"
},
"endPosition": "1267",
"kind": "NEW",
"startPosition": "1243"
},
"endPosition": "1267",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1243"
},
{
"expression": {
"endPosition": "1274",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1272",
"kind": "IDENTIFIER",
"name": "foo",
"startPosition": "1269"
},
"arguments": [],
"startPosition": "1269"
},
"endPosition": "1274",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1269"
},
{
"expression": {
"endPosition": "1284",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "foo",
"expression": {
"endPosition": "1278",
"kind": "IDENTIFIER",
"name": "obj",
"startPosition": "1275"
},
"endPosition": "1282",
"kind": "MEMBER_SELECT",
"startPosition": "1275"
},
"arguments": [],
"startPosition": "1275"
},
"endPosition": "1284",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1275"
},
{
"expression": {
"endPosition": "1294",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1289",
"kind": "IDENTIFIER",
"name": "foo",
"startPosition": "1286"
},
"arguments": [
{
"endPosition": "1291",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1290"
},
{
"endPosition": "1293",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1292"
}
],
"startPosition": "1286"
},
"endPosition": "1294",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1286"
},
{
"expression": {
"endPosition": "1309",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "foo",
"expression": {
"endPosition": "1299",
"kind": "IDENTIFIER",
"name": "obj",
"startPosition": "1296"
},
"endPosition": "1303",
"kind": "MEMBER_SELECT",
"startPosition": "1296"
},
"arguments": [
{
"endPosition": "1305",
"kind": "IDENTIFIER",
"name": "a",
"startPosition": "1304"
},
{
"endPosition": "1308",
"kind": "IDENTIFIER",
"name": "b",
"startPosition": "1307"
}
],
"startPosition": "1296"
},
"endPosition": "1309",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1296"
}
],
"sourceName": "parsertests/lhsExpr.js",
"strict": "false",
"startPosition": "1125"
}
,
{
"endPosition": "1110",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"condition": {
"endPosition": "1120",
"kind": "BOOLEAN_LITERAL",
"value": "true",
"startPosition": "1116"
},
"endPosition": "1140",
"kind": "WHILE_LOOP",
"statement": {
"endPosition": "1140",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1138",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1129",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "1124"
},
"arguments": [
{
"endPosition": "1136",
"kind": "STRING_LITERAL",
"value": "hello",
"startPosition": "1131"
}
],
"startPosition": "1124"
},
"endPosition": "1138",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1124"
}
],
"startPosition": "1122"
},
"startPosition": "1110"
},
{
"condition": {
"endPosition": "1173",
"kind": "BOOLEAN_LITERAL",
"value": "true",
"startPosition": "1169"
},
"endPosition": "1174",
"kind": "DO_WHILE_LOOP",
"statement": {
"endPosition": "1162",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1160",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1151",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "1146"
},
"arguments": [
{
"endPosition": "1158",
"kind": "STRING_LITERAL",
"value": "hello",
"startPosition": "1153"
}
],
"startPosition": "1146"
},
"endPosition": "1160",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1146"
}
],
"startPosition": "1144"
},
"startPosition": "1141"
},
{
"expression": {
"endPosition": "1188",
"kind": "IDENTIFIER",
"name": "obj",
"startPosition": "1185"
},
"endPosition": "1207",
"kind": "FOR_IN_LOOP",
"forEach": "false",
"variable": {
"endPosition": "1181",
"kind": "IDENTIFIER",
"name": "i",
"startPosition": "1180"
},
"statement": {
"endPosition": "1207",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1205",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1197",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "1192"
},
"arguments": [
{
"expression": {
"endPosition": "1201",
"kind": "IDENTIFIER",
"name": "obj",
"startPosition": "1198"
},
"endPosition": "1204",
"kind": "ARRAY_ACCESS",
"index": {
"endPosition": "1203",
"kind": "IDENTIFIER",
"name": "i",
"startPosition": "1202"
},
"startPosition": "1198"
}
],
"startPosition": "1192"
},
"endPosition": "1205",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1192"
}
],
"startPosition": "1190"
},
"startPosition": "1175"
},
{
"expression": {
"endPosition": "1226",
"kind": "IDENTIFIER",
"name": "obj",
"startPosition": "1223"
},
"endPosition": "1240",
"kind": "FOR_IN_LOOP",
"forEach": "true",
"variable": {
"endPosition": "1219",
"kind": "IDENTIFIER",
"name": "i",
"startPosition": "1218"
},
"statement": {
"endPosition": "1240",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1238",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1235",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "1230"
},
"arguments": [
{
"endPosition": "1237",
"kind": "IDENTIFIER",
"name": "i",
"startPosition": "1236"
}
],
"startPosition": "1230"
},
"endPosition": "1238",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1230"
}
],
"startPosition": "1228"
},
"startPosition": "1208"
},
{
"condition": {
"leftOperand": {
"endPosition": "1254",
"kind": "IDENTIFIER",
"name": "i",
"startPosition": "1253"
},
"endPosition": "1259",
"kind": "LESS_THAN",
"rightOperand": {
"endPosition": "1259",
"kind": "NUMBER_LITERAL",
"value": "10",
"startPosition": "1257"
},
"startPosition": "1253"
},
"endPosition": "1278",
"kind": "FOR_LOOP",
"statement": {
"endPosition": "1278",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1276",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1273",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "1268"
},
"arguments": [
{
"endPosition": "1275",
"kind": "IDENTIFIER",
"name": "i",
"startPosition": "1274"
}
],
"startPosition": "1268"
},
"endPosition": "1276",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1268"
}
],
"startPosition": "1266"
},
"update": {
"expression": {
"endPosition": "1262",
"kind": "IDENTIFIER",
"name": "i",
"startPosition": "1261"
},
"endPosition": "1264",
"kind": "POSTFIX_INCREMENT",
"startPosition": "1261"
},
"startPosition": "1241",
"initializer": {
"expression": {
"endPosition": "1251",
"kind": "NUMBER_LITERAL",
"value": "0",
"startPosition": "1250"
},
"endPosition": "1251",
"kind": "ASSIGNMENT",
"variable": {
"endPosition": "1247",
"kind": "IDENTIFIER",
"name": "i",
"startPosition": "1246"
},
"startPosition": "1246"
}
}
],
"sourceName": "parsertests/loopStat.js",
"strict": "false",
"startPosition": "1110"
}
,
{
"endPosition": "1125",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"expression": {
"endPosition": "1133",
"kind": "OBJECT_LITERAL",
"startPosition": "1131",
"properties": []
},
"endPosition": "1133",
"kind": "ASSIGNMENT",
"variable": {
"endPosition": "1128",
"kind": "IDENTIFIER",
"name": "obj",
"startPosition": "1125"
},
"startPosition": "1125"
},
"endPosition": "1133",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1125"
},
{
"expression": {
"expression": {
"endPosition": "1154",
"kind": "OBJECT_LITERAL",
"startPosition": "1139",
"properties": [
{
"endPosition": "1143",
"kind": "PROPERTY",
"value": {
"endPosition": "1146",
"kind": "NUMBER_LITERAL",
"value": "10",
"startPosition": "1144"
},
"startPosition": "1141",
"key": {
"endPosition": "1142",
"kind": "IDENTIFIER",
"name": "x",
"startPosition": "1141"
}
},
{
"endPosition": "1150",
"kind": "PROPERTY",
"value": {
"endPosition": "1152",
"kind": "NUMBER_LITERAL",
"value": "2",
"startPosition": "1151"
},
"startPosition": "1148",
"key": {
"endPosition": "1149",
"kind": "IDENTIFIER",
"name": "y",
"startPosition": "1148"
}
}
]
},
"endPosition": "1154",
"kind": "ASSIGNMENT",
"variable": {
"endPosition": "1136",
"kind": "IDENTIFIER",
"name": "p",
"startPosition": "1135"
},
"startPosition": "1135"
},
"endPosition": "1154",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1135"
},
{
"expression": {
"expression": {
"endPosition": "1179",
"kind": "OBJECT_LITERAL",
"startPosition": "1160",
"properties": [
{
"endPosition": "1166",
"kind": "PROPERTY",
"value": {
"endPosition": "1169",
"kind": "NUMBER_LITERAL",
"value": "10",
"startPosition": "1167"
},
"startPosition": "1163",
"key": {
"endPosition": "1164",
"kind": "STRING_LITERAL",
"value": "x",
"startPosition": "1163"
}
},
{
"endPosition": "1175",
"kind": "PROPERTY",
"value": {
"endPosition": "1177",
"kind": "NUMBER_LITERAL",
"value": "2",
"startPosition": "1176"
},
"startPosition": "1172",
"key": {
"endPosition": "1173",
"kind": "STRING_LITERAL",
"value": "y",
"startPosition": "1172"
}
}
]
},
"endPosition": "1179",
"kind": "ASSIGNMENT",
"variable": {
"endPosition": "1157",
"kind": "IDENTIFIER",
"name": "p",
"startPosition": "1156"
},
"startPosition": "1156"
},
"endPosition": "1179",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1156"
},
{
"expression": {
"expression": {
"endPosition": "1241",
"kind": "OBJECT_LITERAL",
"startPosition": "1185",
"properties": [
{
"getter": {
"endPosition": "1195",
"kind": "FUNCTION_EXPRESSION",
"body": {
"endPosition": "1210",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1210",
"kind": "IDENTIFIER",
"name": "xValue",
"startPosition": "1204"
},
"endPosition": "1210",
"kind": "RETURN",
"startPosition": "1197"
}
],
"startPosition": "1195"
},
"strict": "false",
"startPosition": "1195",
"parameters": []
},
"endPosition": "1212",
"kind": "PROPERTY",
"startPosition": "1187",
"key": {
"endPosition": "1192",
"kind": "IDENTIFIER",
"name": "x",
"startPosition": "1191"
}
},
{
"getter": {
"endPosition": "1222",
"kind": "FUNCTION_EXPRESSION",
"body": {
"endPosition": "1237",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1237",
"kind": "IDENTIFIER",
"name": "yValue",
"startPosition": "1231"
},
"endPosition": "1237",
"kind": "RETURN",
"startPosition": "1224"
}
],
"startPosition": "1222"
},
"strict": "false",
"startPosition": "1222",
"parameters": []
},
"endPosition": "1239",
"kind": "PROPERTY",
"startPosition": "1214",
"key": {
"endPosition": "1219",
"kind": "IDENTIFIER",
"name": "y",
"startPosition": "1218"
}
}
]
},
"endPosition": "1241",
"kind": "ASSIGNMENT",
"variable": {
"endPosition": "1182",
"kind": "IDENTIFIER",
"name": "p",
"startPosition": "1181"
},
"startPosition": "1181"
},
"endPosition": "1241",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1181"
},
{
"expression": {
"expression": {
"endPosition": "1315",
"kind": "OBJECT_LITERAL",
"startPosition": "1247",
"properties": [
{
"getter": {
"endPosition": "1259",
"kind": "FUNCTION_EXPRESSION",
"body": {
"endPosition": "1277",
"kind": "BLOCK",
"statements": [
{
"expression": {
"identifier": "_foo",
"expression": {
"endPosition": "1272",
"kind": "IDENTIFIER",
"name": "this",
"startPosition": "1268"
},
"endPosition": "1277",
"kind": "MEMBER_SELECT",
"startPosition": "1268"
},
"endPosition": "1277",
"kind": "RETURN",
"startPosition": "1261"
}
],
"startPosition": "1259"
},
"strict": "false",
"startPosition": "1259",
"parameters": []
},
"endPosition": "1279",
"kind": "PROPERTY",
"setter": {
"endPosition": "1294",
"kind": "FUNCTION_EXPRESSION",
"body": {
"endPosition": "1311",
"kind": "BLOCK",
"statements": [
{
"expression": {
"expression": {
"endPosition": "1311",
"kind": "IDENTIFIER",
"name": "val",
"startPosition": "1308"
},
"endPosition": "1311",
"kind": "ASSIGNMENT",
"variable": {
"identifier": "_foo",
"expression": {
"endPosition": "1300",
"kind": "IDENTIFIER",
"name": "this",
"startPosition": "1296"
},
"endPosition": "1305",
"kind": "MEMBER_SELECT",
"startPosition": "1296"
},
"startPosition": "1296"
},
"endPosition": "1311",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1296"
}
],
"startPosition": "1294"
},
"strict": "false",
"startPosition": "1294",
"parameters": [
{
"endPosition": "1292",
"kind": "IDENTIFIER",
"name": "val",
"startPosition": "1289"
}
]
},
"startPosition": "1249",
"key": {
"endPosition": "1256",
"kind": "IDENTIFIER",
"name": "foo",
"startPosition": "1253"
}
}
]
},
"endPosition": "1315",
"kind": "ASSIGNMENT",
"variable": {
"endPosition": "1244",
"kind": "IDENTIFIER",
"name": "p",
"startPosition": "1243"
},
"startPosition": "1243"
},
"endPosition": "1315",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1243"
}
],
"sourceName": "parsertests/objectLitExpr.js",
"strict": "false",
"startPosition": "1125"
}
,
{
"endPosition": "1118",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"leftOperand": {
"leftOperand": {
"endPosition": "1120",
"kind": "NUMBER_LITERAL",
"value": "2",
"startPosition": "1119"
},
"endPosition": "1126",
"kind": "PLUS",
"rightOperand": {
"endPosition": "1126",
"kind": "NUMBER_LITERAL",
"value": "1",
"startPosition": "1125"
},
"startPosition": "1119"
},
"endPosition": "1131",
"kind": "PLUS",
"rightOperand": {
"endPosition": "1131",
"kind": "NUMBER_LITERAL",
"value": "4",
"startPosition": "1130"
},
"startPosition": "1119"
},
"endPosition": "1131",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1118"
},
{
"expression": {
"leftOperand": {
"leftOperand": {
"endPosition": "1134",
"kind": "NUMBER_LITERAL",
"value": "3",
"startPosition": "1133"
},
"endPosition": "1139",
"kind": "PLUS",
"rightOperand": {
"endPosition": "1139",
"kind": "NUMBER_LITERAL",
"value": "7",
"startPosition": "1138"
},
"startPosition": "1133"
},
"endPosition": "1146",
"kind": "LEFT_SHIFT",
"rightOperand": {
"endPosition": "1146",
"kind": "NUMBER_LITERAL",
"value": "5",
"startPosition": "1145"
},
"startPosition": "1133"
},
"endPosition": "1147",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1133"
}
],
"sourceName": "parsertests/parenExpr.js",
"strict": "false",
"startPosition": "1118"
}
,
{
"endPosition": "1119",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"endPosition": "1123",
"kind": "IDENTIFIER",
"name": "this",
"startPosition": "1119"
},
"endPosition": "1123",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1119"
},
{
"expression": {
"endPosition": "1128",
"kind": "IDENTIFIER",
"name": "foo",
"startPosition": "1125"
},
"endPosition": "1128",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1125"
},
{
"expression": {
"endPosition": "1134",
"kind": "NULL_LITERAL",
"startPosition": "1130"
},
"endPosition": "1134",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1130"
},
{
"expression": {
"endPosition": "1140",
"kind": "BOOLEAN_LITERAL",
"value": "true",
"startPosition": "1136"
},
"endPosition": "1140",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1136"
},
{
"expression": {
"endPosition": "1147",
"kind": "BOOLEAN_LITERAL",
"value": "false",
"startPosition": "1142"
},
"endPosition": "1147",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1142"
},
{
"expression": {
"endPosition": "1151",
"kind": "NUMBER_LITERAL",
"value": "33",
"startPosition": "1149"
},
"endPosition": "1151",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1149"
},
{
"expression": {
"endPosition": "1157",
"kind": "NUMBER_LITERAL",
"value": "3.14",
"startPosition": "1153"
},
"endPosition": "1157",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1153"
},
{
"expression": {
"leftOperand": {
"leftOperand": {
"endPosition": "1162",
"kind": "NUMBER_LITERAL",
"value": "10",
"startPosition": "1160"
},
"endPosition": "1166",
"kind": "PLUS",
"rightOperand": {
"endPosition": "1166",
"kind": "NUMBER_LITERAL",
"value": "3",
"startPosition": "1165"
},
"startPosition": "1160"
},
"endPosition": "1169",
"kind": "MULTIPLY",
"rightOperand": {
"endPosition": "1169",
"kind": "NUMBER_LITERAL",
"value": "2",
"startPosition": "1168"
},
"startPosition": "1160"
},
"endPosition": "1169",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1159"
},
{
"expression": {
"endPosition": "1174",
"kind": "OBJECT_LITERAL",
"startPosition": "1172",
"properties": []
},
"endPosition": "1175",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1171"
},
{
"expression": {
"endPosition": "1186",
"kind": "OBJECT_LITERAL",
"startPosition": "1178",
"properties": [
{
"endPosition": "1182",
"kind": "PROPERTY",
"value": {
"endPosition": "1184",
"kind": "NUMBER_LITERAL",
"value": "3",
"startPosition": "1183"
},
"startPosition": "1180",
"key": {
"endPosition": "1181",
"kind": "IDENTIFIER",
"name": "x",
"startPosition": "1180"
}
}
]
},
"endPosition": "1187",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1177"
},
{
"expression": {
"endPosition": "1191",
"kind": "ARRAY_LITERAL",
"elements": [],
"startPosition": "1189"
},
"endPosition": "1191",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1189"
},
{
"expression": {
"endPosition": "1197",
"kind": "ARRAY_LITERAL",
"elements": [
null,
null
],
"startPosition": "1193"
},
"endPosition": "1197",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1193"
},
{
"expression": {
"endPosition": "1208",
"kind": "ARRAY_LITERAL",
"elements": [
{
"endPosition": "1201",
"kind": "NUMBER_LITERAL",
"value": "4",
"startPosition": "1200"
},
{
"endPosition": "1204",
"kind": "NUMBER_LITERAL",
"value": "5",
"startPosition": "1203"
},
{
"endPosition": "1207",
"kind": "NUMBER_LITERAL",
"value": "5",
"startPosition": "1206"
}
],
"startPosition": "1199"
},
"endPosition": "1208",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1199"
}
],
"sourceName": "parsertests/primaryExpr.js",
"strict": "false",
"startPosition": "1119"
}
,
{
"endPosition": "1114",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"endPosition": "1127",
"kind": "VARIABLE",
"name": "x",
"startPosition": "1118",
"initializer": {
"endPosition": "1127",
"kind": "REGEXP_LITERAL",
"options": "",
"pattern": "foo",
"startPosition": "1122"
}
},
{
"endPosition": "1143",
"kind": "VARIABLE",
"name": "y",
"startPosition": "1133",
"initializer": {
"endPosition": "1143",
"kind": "REGEXP_LITERAL",
"options": "g",
"pattern": "foo",
"startPosition": "1137"
}
},
{
"endPosition": "1168",
"kind": "VARIABLE",
"name": "z",
"startPosition": "1149",
"initializer": {
"endPosition": "1168",
"kind": "REGEXP_LITERAL",
"options": "",
"pattern": "[a-z]*[1-10]?",
"startPosition": "1153"
}
}
],
"sourceName": "parsertests/regexp_literal.js",
"strict": "false",
"startPosition": "1114"
}
,
{
"endPosition": "1118",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"endPosition": "1130",
"kind": "FUNCTION_EXPRESSION",
"body": {
"endPosition": "1138",
"kind": "BLOCK",
"statements": [
{
"endPosition": "1138",
"kind": "RETURN",
"startPosition": "1132"
}
],
"startPosition": "1130"
},
"strict": "false",
"startPosition": "1130",
"parameters": []
},
"endPosition": "1141",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1118"
},
{
"expression": {
"endPosition": "1155",
"kind": "FUNCTION_EXPRESSION",
"body": {
"endPosition": "1167",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1167",
"kind": "IDENTIFIER",
"name": "res",
"startPosition": "1164"
},
"endPosition": "1167",
"kind": "RETURN",
"startPosition": "1157"
}
],
"startPosition": "1155"
},
"strict": "false",
"startPosition": "1155",
"parameters": []
},
"endPosition": "1170",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1143"
},
{
"expression": {
"endPosition": "1184",
"kind": "FUNCTION_EXPRESSION",
"body": {
"endPosition": "1198",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1198",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1196",
"kind": "IDENTIFIER",
"name": "foo",
"startPosition": "1193"
},
"arguments": [],
"startPosition": "1193"
},
"endPosition": "1198",
"kind": "RETURN",
"startPosition": "1186"
}
],
"startPosition": "1184"
},
"strict": "false",
"startPosition": "1184",
"parameters": []
},
"endPosition": "1201",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1172"
}
],
"sourceName": "parsertests/returnStat.js",
"strict": "false",
"startPosition": "1118"
}
,
{
"endPosition": "1111",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"cases": [],
"expression": {
"endPosition": "1122",
"kind": "IDENTIFIER",
"name": "key",
"startPosition": "1119"
},
"endPosition": "1126",
"kind": "SWITCH",
"startPosition": "1111"
},
{
"cases": [
{
"expression": {
"endPosition": "1149",
"kind": "NUMBER_LITERAL",
"value": "2",
"startPosition": "1148"
},
"endPosition": "1166",
"kind": "CASE",
"statements": [
{
"expression": {
"endPosition": "1158",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1156",
"kind": "IDENTIFIER",
"name": "hello",
"startPosition": "1151"
},
"arguments": [],
"startPosition": "1151"
},
"endPosition": "1158",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1151"
},
{
"endPosition": "1166",
"kind": "BREAK",
"startPosition": "1160"
}
],
"startPosition": "1143"
}
],
"expression": {
"endPosition": "1139",
"kind": "IDENTIFIER",
"name": "key",
"startPosition": "1136"
},
"endPosition": "1168",
"kind": "SWITCH",
"startPosition": "1128"
},
{
"cases": [
{
"expression": {
"endPosition": "1191",
"kind": "NUMBER_LITERAL",
"value": "4",
"startPosition": "1190"
},
"endPosition": "1208",
"kind": "CASE",
"statements": [
{
"expression": {
"endPosition": "1200",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1198",
"kind": "IDENTIFIER",
"name": "hello",
"startPosition": "1193"
},
"arguments": [],
"startPosition": "1193"
},
"endPosition": "1200",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1193"
},
{
"endPosition": "1208",
"kind": "BREAK",
"startPosition": "1202"
}
],
"startPosition": "1185"
},
{
"expression": {
"endPosition": "1215",
"kind": "NUMBER_LITERAL",
"value": "2",
"startPosition": "1214"
},
"endPosition": "1232",
"kind": "CASE",
"statements": [
{
"expression": {
"endPosition": "1224",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1222",
"kind": "IDENTIFIER",
"name": "world",
"startPosition": "1217"
},
"arguments": [],
"startPosition": "1217"
},
"endPosition": "1224",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1217"
},
{
"endPosition": "1232",
"kind": "BREAK",
"startPosition": "1226"
}
],
"startPosition": "1209"
},
{
"endPosition": "1247",
"kind": "CASE",
"statements": [
{
"endPosition": "1247",
"kind": "BREAK",
"startPosition": "1242"
}
],
"startPosition": "1233"
}
],
"expression": {
"endPosition": "1181",
"kind": "IDENTIFIER",
"name": "key",
"startPosition": "1178"
},
"endPosition": "1249",
"kind": "SWITCH",
"startPosition": "1170"
}
],
"sourceName": "parsertests/switchStat.js",
"strict": "false",
"startPosition": "1111"
}
,
{
"endPosition": "1110",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"endPosition": "1119",
"kind": "IDENTIFIER",
"name": "err",
"startPosition": "1116"
},
"endPosition": "1120",
"kind": "THROW",
"startPosition": "1110"
},
{
"expression": {
"endPosition": "1133",
"kind": "STRING_LITERAL",
"value": "wrong",
"startPosition": "1128"
},
"endPosition": "1135",
"kind": "THROW",
"startPosition": "1121"
},
{
"expression": {
"constructorExpression": {
"endPosition": "1155",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1155",
"kind": "IDENTIFIER",
"name": "TypeError",
"startPosition": "1146"
},
"arguments": [],
"startPosition": "1146"
},
"endPosition": "1155",
"kind": "NEW",
"startPosition": "1142"
},
"endPosition": "1156",
"kind": "THROW",
"startPosition": "1136"
},
{
"expression": {
"constructorExpression": {
"endPosition": "1192",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1176",
"kind": "IDENTIFIER",
"name": "TypeError",
"startPosition": "1167"
},
"arguments": [
{
"endPosition": "1190",
"kind": "STRING_LITERAL",
"value": "not an array",
"startPosition": "1178"
}
],
"startPosition": "1167"
},
"endPosition": "1192",
"kind": "NEW",
"startPosition": "1163"
},
"endPosition": "1193",
"kind": "THROW",
"startPosition": "1157"
},
{
"expression": {
"endPosition": "1217",
"kind": "OBJECT_LITERAL",
"startPosition": "1200",
"properties": [
{
"endPosition": "1206",
"kind": "PROPERTY",
"value": {
"endPosition": "1214",
"kind": "STRING_LITERAL",
"value": "wrong!",
"startPosition": "1208"
},
"startPosition": "1202",
"key": {
"endPosition": "1205",
"kind": "IDENTIFIER",
"name": "msg",
"startPosition": "1202"
}
}
]
},
"endPosition": "1218",
"kind": "THROW",
"startPosition": "1194"
}
],
"sourceName": "parsertests/throwStat.js",
"strict": "false",
"startPosition": "1110"
}
,
{
"endPosition": "1121",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"endPosition": "1142",
"kind": "TRY",
"catches": [
{
"endPosition": "1142",
"kind": "CATCH",
"parameter": {
"endPosition": "1137",
"kind": "IDENTIFIER",
"name": "e",
"startPosition": "1136"
},
"block": {
"endPosition": "1142",
"kind": "BLOCK",
"statements": [],
"startPosition": "1139"
},
"startPosition": "1129"
}
],
"block": {
"endPosition": "1128",
"kind": "BLOCK",
"statements": [],
"startPosition": "1125"
},
"startPosition": "1121"
},
{
"endPosition": "1175",
"kind": "TRY",
"catches": [
{
"endPosition": "1164",
"kind": "CATCH",
"parameter": {
"endPosition": "1159",
"kind": "IDENTIFIER",
"name": "e",
"startPosition": "1158"
},
"block": {
"endPosition": "1164",
"kind": "BLOCK",
"statements": [],
"startPosition": "1161"
},
"startPosition": "1151"
}
],
"block": {
"endPosition": "1150",
"kind": "BLOCK",
"statements": [],
"startPosition": "1147"
},
"finallyBlock": {
"endPosition": "1175",
"kind": "BLOCK",
"statements": [],
"startPosition": "1173"
},
"startPosition": "1143"
},
{
"endPosition": "1194",
"kind": "TRY",
"catches": [],
"block": {
"endPosition": "1183",
"kind": "BLOCK",
"statements": [],
"startPosition": "1180"
},
"finallyBlock": {
"endPosition": "1194",
"kind": "BLOCK",
"statements": [],
"startPosition": "1192"
},
"startPosition": "1176"
},
{
"endPosition": "1225",
"kind": "TRY",
"catches": [
{
"endPosition": "1225",
"kind": "CATCH",
"parameter": {
"endPosition": "1211",
"kind": "IDENTIFIER",
"name": "e",
"startPosition": "1210"
},
"block": {
"endPosition": "1225",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1223",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1221",
"kind": "IDENTIFIER",
"name": "handle",
"startPosition": "1215"
},
"arguments": [],
"startPosition": "1215"
},
"endPosition": "1223",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1215"
}
],
"startPosition": "1213"
},
"startPosition": "1203"
}
],
"block": {
"endPosition": "1202",
"kind": "BLOCK",
"statements": [],
"startPosition": "1199"
},
"startPosition": "1195"
},
{
"endPosition": "1283",
"kind": "TRY",
"catches": [
{
"endPosition": "1263",
"kind": "CATCH",
"parameter": {
"endPosition": "1249",
"kind": "IDENTIFIER",
"name": "e",
"startPosition": "1248"
},
"block": {
"endPosition": "1263",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1261",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1259",
"kind": "IDENTIFIER",
"name": "handle",
"startPosition": "1253"
},
"arguments": [],
"startPosition": "1253"
},
"endPosition": "1261",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1253"
}
],
"startPosition": "1251"
},
"startPosition": "1241"
}
],
"block": {
"endPosition": "1240",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1238",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1236",
"kind": "IDENTIFIER",
"name": "that",
"startPosition": "1232"
},
"arguments": [],
"startPosition": "1232"
},
"endPosition": "1238",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1232"
}
],
"startPosition": "1230"
},
"finallyBlock": {
"endPosition": "1283",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1281",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1279",
"kind": "IDENTIFIER",
"name": "clean",
"startPosition": "1274"
},
"arguments": [],
"startPosition": "1274"
},
"endPosition": "1281",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1274"
}
],
"startPosition": "1272"
},
"startPosition": "1226"
},
{
"endPosition": "1368",
"kind": "TRY",
"catches": [
{
"condition": {
"leftOperand": {
"endPosition": "1312",
"kind": "IDENTIFIER",
"name": "e",
"startPosition": "1311"
},
"expression": {
"endPosition": "1312",
"kind": "IDENTIFIER",
"name": "e",
"startPosition": "1311"
},
"endPosition": "1333",
"kind": "INSTANCE_OF",
"rightOperand": {
"endPosition": "1333",
"kind": "IDENTIFIER",
"name": "TypeError",
"startPosition": "1324"
},
"type": {
"endPosition": "1333",
"kind": "IDENTIFIER",
"name": "TypeError",
"startPosition": "1324"
},
"startPosition": "1311"
},
"endPosition": "1347",
"kind": "CATCH",
"parameter": {
"endPosition": "1307",
"kind": "IDENTIFIER",
"name": "e",
"startPosition": "1306"
},
"block": {
"endPosition": "1347",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1345",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1343",
"kind": "IDENTIFIER",
"name": "handle",
"startPosition": "1337"
},
"arguments": [],
"startPosition": "1337"
},
"endPosition": "1345",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1337"
}
],
"startPosition": "1335"
},
"startPosition": "1299"
},
{
"endPosition": "1368",
"kind": "CATCH",
"parameter": {
"endPosition": "1356",
"kind": "IDENTIFIER",
"name": "e",
"startPosition": "1355"
},
"block": {
"endPosition": "1368",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1366",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1364",
"kind": "IDENTIFIER",
"name": "rest",
"startPosition": "1360"
},
"arguments": [],
"startPosition": "1360"
},
"endPosition": "1366",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1360"
}
],
"startPosition": "1358"
},
"startPosition": "1348"
}
],
"block": {
"endPosition": "1298",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1296",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1294",
"kind": "IDENTIFIER",
"name": "that",
"startPosition": "1290"
},
"arguments": [],
"startPosition": "1290"
},
"endPosition": "1296",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1290"
}
],
"startPosition": "1288"
},
"startPosition": "1284"
}
],
"sourceName": "parsertests/tryCatchStat.js",
"strict": "false",
"startPosition": "1121"
}
,
{
"endPosition": "1115",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"expression": {
"endPosition": "1116",
"kind": "IDENTIFIER",
"name": "x",
"startPosition": "1115"
},
"endPosition": "1118",
"kind": "POSTFIX_INCREMENT",
"startPosition": "1115"
},
"endPosition": "1118",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1115"
},
{
"expression": {
"expression": {
"endPosition": "1121",
"kind": "IDENTIFIER",
"name": "x",
"startPosition": "1120"
},
"endPosition": "1123",
"kind": "POSTFIX_DECREMENT",
"startPosition": "1120"
},
"endPosition": "1123",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1120"
},
{
"expression": {
"expression": {
"endPosition": "1133",
"kind": "IDENTIFIER",
"name": "x",
"startPosition": "1132"
},
"endPosition": "1133",
"kind": "DELETE",
"startPosition": "1125"
},
"endPosition": "1133",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1125"
},
{
"expression": {
"expression": {
"endPosition": "1141",
"kind": "IDENTIFIER",
"name": "x",
"startPosition": "1140"
},
"endPosition": "1141",
"kind": "VOID",
"startPosition": "1135"
},
"endPosition": "1141",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1135"
},
{
"expression": {
"expression": {
"endPosition": "1151",
"kind": "IDENTIFIER",
"name": "x",
"startPosition": "1150"
},
"endPosition": "1151",
"kind": "TYPEOF",
"startPosition": "1143"
},
"endPosition": "1151",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1143"
},
{
"expression": {
"expression": {
"endPosition": "1156",
"kind": "IDENTIFIER",
"name": "x",
"startPosition": "1155"
},
"endPosition": "1156",
"kind": "PREFIX_INCREMENT",
"startPosition": "1153"
},
"endPosition": "1156",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1153"
},
{
"expression": {
"expression": {
"endPosition": "1161",
"kind": "IDENTIFIER",
"name": "x",
"startPosition": "1160"
},
"endPosition": "1161",
"kind": "PREFIX_DECREMENT",
"startPosition": "1158"
},
"endPosition": "1161",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1158"
},
{
"expression": {
"expression": {
"endPosition": "1165",
"kind": "IDENTIFIER",
"name": "x",
"startPosition": "1164"
},
"endPosition": "1165",
"kind": "PLUS",
"startPosition": "1163"
},
"endPosition": "1165",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1163"
},
{
"expression": {
"expression": {
"endPosition": "1169",
"kind": "IDENTIFIER",
"name": "x",
"startPosition": "1168"
},
"endPosition": "1169",
"kind": "MINUS",
"startPosition": "1167"
},
"endPosition": "1169",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1167"
},
{
"expression": {
"expression": {
"endPosition": "1173",
"kind": "IDENTIFIER",
"name": "x",
"startPosition": "1172"
},
"endPosition": "1173",
"kind": "BITWISE_COMPLEMENT",
"startPosition": "1171"
},
"endPosition": "1173",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1171"
},
{
"expression": {
"expression": {
"endPosition": "1177",
"kind": "IDENTIFIER",
"name": "x",
"startPosition": "1176"
},
"endPosition": "1177",
"kind": "LOGICAL_COMPLEMENT",
"startPosition": "1175"
},
"endPosition": "1177",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1175"
}
],
"sourceName": "parsertests/unaryExpr.js",
"strict": "false",
"startPosition": "1115"
}
,
{
"endPosition": "1122",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"endPosition": "1133",
"kind": "STRING_LITERAL",
"value": "use strict",
"startPosition": "1123"
},
"endPosition": "1133",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1123"
},
{
"endPosition": "1165",
"kind": "FUNCTION",
"name": "f",
"body": {
"endPosition": "1162",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1162",
"kind": "STRING_LITERAL",
"value": "use strict",
"startPosition": "1152"
},
"endPosition": "1162",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1152"
}
],
"startPosition": "1149"
},
"strict": "true",
"startPosition": "1136",
"parameters": []
}
],
"sourceName": "parsertests/useStrict.js",
"strict": "true",
"startPosition": "1122"
}
,
{
"endPosition": "1143",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"endPosition": "1148",
"kind": "VARIABLE",
"name": "a",
"startPosition": "1147"
},
{
"endPosition": "1155",
"kind": "VARIABLE",
"name": "a",
"startPosition": "1154"
},
{
"endPosition": "1158",
"kind": "VARIABLE",
"name": "b",
"startPosition": "1157"
},
{
"endPosition": "1200",
"kind": "VARIABLE",
"name": "a",
"startPosition": "1190",
"initializer": {
"endPosition": "1200",
"kind": "STRING_LITERAL",
"value": "hello",
"startPosition": "1195"
}
},
{
"endPosition": "1212",
"kind": "VARIABLE",
"name": "a",
"startPosition": "1207",
"initializer": {
"endPosition": "1212",
"kind": "NUMBER_LITERAL",
"value": "1",
"startPosition": "1211"
}
},
{
"endPosition": "1219",
"kind": "VARIABLE",
"name": "b",
"startPosition": "1214",
"initializer": {
"endPosition": "1219",
"kind": "NUMBER_LITERAL",
"value": "2",
"startPosition": "1218"
}
},
{
"endPosition": "1226",
"kind": "VARIABLE",
"name": "c",
"startPosition": "1221",
"initializer": {
"endPosition": "1226",
"kind": "NUMBER_LITERAL",
"value": "3",
"startPosition": "1225"
}
}
],
"sourceName": "parsertests/varDecl.js",
"strict": "false",
"startPosition": "1143"
}
,
{
"endPosition": "1111",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"endPosition": "1133",
"kind": "WITH",
"scope": {
"endPosition": "1122",
"kind": "IDENTIFIER",
"name": "scope",
"startPosition": "1117"
},
"statement": {
"endPosition": "1133",
"kind": "BLOCK",
"statements": [
{
"expression": {
"expression": {
"endPosition": "1131",
"kind": "IDENTIFIER",
"name": "y",
"startPosition": "1130"
},
"endPosition": "1131",
"kind": "ASSIGNMENT",
"variable": {
"endPosition": "1127",
"kind": "IDENTIFIER",
"name": "x",
"startPosition": "1126"
},
"startPosition": "1126"
},
"endPosition": "1131",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1126"
}
],
"startPosition": "1124"
},
"startPosition": "1111"
}
],
"sourceName": "parsertests/withStat.js",
"strict": "false",
"startPosition": "1111"
}
,
{
"fileName": "parsernegativetests/caseoutofswitch.js",
"code": "case (1090, 4)",
"columnNumber": "0",
"kind": "ERROR",
"position": "1090",
"message": "parsernegativetests/caseoutofswitch.js:29:0 Expected an operand but found case\ncase 23:\n^",
"lineNumber": "29"
}
,
{
"fileName": "parsernegativetests/caseoutofswitch.js",
"code": "default (1112, 7)",
"columnNumber": "0",
"kind": "ERROR",
"position": "1112",
"message": "parsernegativetests/caseoutofswitch.js:31:0 Expected an operand but found default\ndefault:\n^",
"lineNumber": "31"
}
,
{
"endPosition": "1090",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"endPosition": "1098",
"kind": "ERROR",
"startPosition": "1090"
},
"endPosition": "1098",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1090"
},
{
"expression": {
"endPosition": "1110",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1104",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "1099"
},
"arguments": [
{
"endPosition": "1108",
"kind": "STRING_LITERAL",
"value": "23",
"startPosition": "1106"
}
],
"startPosition": "1099"
},
"endPosition": "1110",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1099"
},
{
"expression": {
"endPosition": "1120",
"kind": "ERROR",
"startPosition": "1112"
},
"endPosition": "1120",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1112"
},
{
"expression": {
"endPosition": "1135",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "1126",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "1121"
},
"arguments": [
{
"endPosition": "1133",
"kind": "STRING_LITERAL",
"value": "hello",
"startPosition": "1128"
}
],
"startPosition": "1121"
},
"endPosition": "1135",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1121"
}
],
"sourceName": "parsernegativetests/caseoutofswitch.js",
"strict": "false",
"startPosition": "1090"
}
,
{
"fileName": "parsernegativetests/illegalbreak.js",
"code": "break (1090, 5)",
"columnNumber": "0",
"kind": "ERROR",
"position": "1090",
"message": "parsernegativetests/illegalbreak.js:29:0 Illegal break statement\nbreak;\n^",
"lineNumber": "29"
}
,
{
"fileName": "parsernegativetests/illegalbreak.js",
"code": "ident (1103, 3)",
"columnNumber": "6",
"kind": "ERROR",
"position": "1103",
"message": "parsernegativetests/illegalbreak.js:30:6 Undefined Label \"foo\"\nbreak foo;\n ^",
"lineNumber": "30"
}
,
{
"endPosition": "1090",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"endPosition": "1096",
"kind": "ERROR",
"startPosition": "1095"
},
"endPosition": "1096",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1095"
},
{
"expression": {
"endPosition": "1107",
"kind": "ERROR",
"startPosition": "1106"
},
"endPosition": "1107",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1106"
}
],
"sourceName": "parsernegativetests/illegalbreak.js",
"strict": "false",
"startPosition": "1090"
}
,
{
"fileName": "parsernegativetests/illegalcontinue.js",
"code": "continue (1090, 8)",
"columnNumber": "0",
"kind": "ERROR",
"position": "1090",
"message": "parsernegativetests/illegalcontinue.js:29:0 Illegal continue statement\ncontinue;\n^",
"lineNumber": "29"
}
,
{
"fileName": "parsernegativetests/illegalcontinue.js",
"code": "ident (1109, 3)",
"columnNumber": "9",
"kind": "ERROR",
"position": "1109",
"message": "parsernegativetests/illegalcontinue.js:30:9 Undefined Label \"foo\"\ncontinue foo;\n ^",
"lineNumber": "30"
}
,
{
"endPosition": "1090",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"endPosition": "1099",
"kind": "ERROR",
"startPosition": "1098"
},
"endPosition": "1099",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1098"
},
{
"expression": {
"endPosition": "1113",
"kind": "ERROR",
"startPosition": "1112"
},
"endPosition": "1113",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1112"
}
],
"sourceName": "parsernegativetests/illegalcontinue.js",
"strict": "false",
"startPosition": "1090"
}
,
{
"fileName": "parsernegativetests/illegallvalue.js",
"code": "decimal (1090, 2)",
"columnNumber": "0",
"kind": "ERROR",
"position": "1090",
"message": "parsernegativetests/illegallvalue.js:29:0 Invalid left hand side for assignment\n44 = 54;\n^",
"lineNumber": "29"
}
,
{
"fileName": "parsernegativetests/illegallvalue.js",
"code": "decimal (1099, 3)",
"columnNumber": "0",
"kind": "ERROR",
"position": "1099",
"message": "parsernegativetests/illegallvalue.js:30:0 Invalid left hand side for assignment\n233 += 33;\n^",
"lineNumber": "30"
}
,
{
"fileName": "parsernegativetests/illegallvalue.js",
"code": "decimal (1110, 4)",
"columnNumber": "0",
"kind": "ERROR",
"position": "1110",
"message": "parsernegativetests/illegallvalue.js:31:0 Invalid left hand side for assignment\n3423 -= 234;\n^",
"lineNumber": "31"
}
,
{
"endPosition": "1090",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"endPosition": "1098",
"kind": "ERROR",
"startPosition": "1097"
},
"endPosition": "1098",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1097"
},
{
"expression": {
"endPosition": "1109",
"kind": "ERROR",
"startPosition": "1108"
},
"endPosition": "1109",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1108"
},
{
"expression": {
"endPosition": "1122",
"kind": "ERROR",
"startPosition": "1121"
},
"endPosition": "1122",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1121"
}
],
"sourceName": "parsernegativetests/illegallvalue.js",
"strict": "false",
"startPosition": "1090"
}
,
{
"fileName": "parsernegativetests/illegaloperator.js",
"code": "* (1093, 1)",
"columnNumber": "3",
"kind": "ERROR",
"position": "1093",
"message": "parsernegativetests/illegaloperator.js:29:3 Expected an operand but found *\nx ** y\n ^",
"lineNumber": "29"
}
,
{
"endPosition": "1090",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"endPosition": "1096",
"kind": "ERROR",
"startPosition": "1093"
},
"endPosition": "1096",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1093"
}
],
"sourceName": "parsernegativetests/illegaloperator.js",
"strict": "false",
"startPosition": "1090"
}
,
{
"fileName": "parsernegativetests/keywordident.js",
"code": "var (1094, 3)",
"columnNumber": "4",
"kind": "ERROR",
"position": "1094",
"message": "parsernegativetests/keywordident.js:29:4 Expected ident but found var\nvar var = 23;\n ^",
"lineNumber": "29"
}
,
{
"endPosition": "1090",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"endPosition": "1103",
"kind": "ERROR",
"startPosition": "1094"
},
"endPosition": "1103",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1094"
},
{
"endPosition": "1115",
"kind": "VARIABLE",
"name": "x",
"startPosition": "1108",
"initializer": {
"endPosition": "1115",
"kind": "NUMBER_LITERAL",
"value": "223",
"startPosition": "1112"
}
}
],
"sourceName": "parsernegativetests/keywordident.js",
"strict": "false",
"startPosition": "1090"
}
,
{
"fileName": "parsernegativetests/parenmissing.js",
"code": "; (1096, 1)",
"columnNumber": "6",
"kind": "ERROR",
"position": "1096",
"message": "parsernegativetests/parenmissing.js:29:6 Expected ) but found ;\n(1 + 2;\n ^",
"lineNumber": "29"
}
,
{
"fileName": "parsernegativetests/parenmissing.js",
"code": ") (1103, 1)",
"columnNumber": "5",
"kind": "ERROR",
"position": "1103",
"message": "parsernegativetests/parenmissing.js:30:5 Expected ; but found )\nx * y);\n ^",
"lineNumber": "30"
}
,
{
"endPosition": "1090",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"endPosition": "1097",
"kind": "ERROR",
"startPosition": "1096"
},
"endPosition": "1097",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1096"
},
{
"expression": {
"leftOperand": {
"endPosition": "1099",
"kind": "IDENTIFIER",
"name": "x",
"startPosition": "1098"
},
"endPosition": "1103",
"kind": "MULTIPLY",
"rightOperand": {
"endPosition": "1103",
"kind": "IDENTIFIER",
"name": "y",
"startPosition": "1102"
},
"startPosition": "1098"
},
"endPosition": "1103",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1098"
},
{
"expression": {
"endPosition": "1105",
"kind": "ERROR",
"startPosition": "1103"
},
"endPosition": "1105",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1103"
}
],
"sourceName": "parsernegativetests/parenmissing.js",
"strict": "false",
"startPosition": "1090"
}
,
{
"fileName": "parsernegativetests/repeatedproperty.js",
"code": "ident (1111, 3)",
"columnNumber": "21",
"kind": "ERROR",
"position": "1111",
"message": "parsernegativetests/repeatedproperty.js:29:21 Property \"foo\" already defined\nvar obj = { foo: 34, get foo() { return 'hello' } };\n ^",
"lineNumber": "29"
}
,
{
"fileName": "parsernegativetests/repeatedproperty.js",
"code": "ident (1165, 3)",
"columnNumber": "22",
"kind": "ERROR",
"position": "1165",
"message": "parsernegativetests/repeatedproperty.js:30:22 Property \"foo\" already defined\nvar obj1 = { foo: 34, set foo(x) { } };\n ^",
"lineNumber": "30"
}
,
{
"fileName": "parsernegativetests/repeatedproperty.js",
"code": "ident (1205, 3)",
"columnNumber": "22",
"kind": "ERROR",
"position": "1205",
"message": "parsernegativetests/repeatedproperty.js:31:22 Property \"foo\" already defined\nvar obj2 = { foo: 34, set foo(x) { } };\n ^",
"lineNumber": "31"
}
,
{
"fileName": "parsernegativetests/repeatedproperty.js",
"code": "ident (1251, 3)",
"columnNumber": "28",
"kind": "ERROR",
"position": "1251",
"message": "parsernegativetests/repeatedproperty.js:32:28 Property \"bar\" already defined\nvar obj3 = { get bar() { }, get bar() {} };\n ^",
"lineNumber": "32"
}
,
{
"fileName": "parsernegativetests/repeatedproperty.js",
"code": "ident (1296, 3)",
"columnNumber": "29",
"kind": "ERROR",
"position": "1296",
"message": "parsernegativetests/repeatedproperty.js:33:29 Property \"bar\" already defined\nvar obj4 = { set bar(x) { }, set bar(x) {} };\n ^",
"lineNumber": "33"
}
,
{
"endPosition": "1090",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"endPosition": "1141",
"kind": "ERROR",
"startPosition": "1140"
},
"endPosition": "1141",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1140"
},
{
"expression": {
"endPosition": "1181",
"kind": "ERROR",
"startPosition": "1180"
},
"endPosition": "1181",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1180"
},
{
"expression": {
"endPosition": "1221",
"kind": "ERROR",
"startPosition": "1220"
},
"endPosition": "1221",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1220"
},
{
"expression": {
"endPosition": "1265",
"kind": "ERROR",
"startPosition": "1264"
},
"endPosition": "1265",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1264"
},
{
"expression": {
"endPosition": "1311",
"kind": "ERROR",
"startPosition": "1310"
},
"endPosition": "1311",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1310"
}
],
"sourceName": "parsernegativetests/repeatedproperty.js",
"strict": "false",
"startPosition": "1090"
}
,
{
"fileName": "parsernegativetests/strict_repeatedproperty.js",
"code": "ident (1126, 3)",
"columnNumber": "21",
"kind": "ERROR",
"position": "1126",
"message": "parsernegativetests/strict_repeatedproperty.js:31:21 Property \"foo\" already defined\nvar obj = { foo: 34, foo: 'hello' };\n ^",
"lineNumber": "31"
}
,
{
"endPosition": "1090",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"endPosition": "1101",
"kind": "STRING_LITERAL",
"value": "use strict",
"startPosition": "1091"
},
"endPosition": "1101",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1091"
},
{
"expression": {
"endPosition": "1140",
"kind": "ERROR",
"startPosition": "1139"
},
"endPosition": "1140",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1139"
}
],
"sourceName": "parsernegativetests/strict_repeatedproperty.js",
"strict": "true",
"startPosition": "1090"
}
,
{
"fileName": "parsernegativetests/strict_repeatparam.js",
"code": "ident (1119, 1)",
"columnNumber": "14",
"kind": "ERROR",
"position": "1119",
"message": "parsernegativetests/strict_repeatparam.js:31:14 strict mode function cannot have duplicate parameter name \"x\"\nfunction func(x, x) {}\n ^",
"lineNumber": "31"
}
,
{
"endPosition": "1090",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"endPosition": "1101",
"kind": "STRING_LITERAL",
"value": "use strict",
"startPosition": "1091"
},
"endPosition": "1101",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1091"
},
{
"expression": {
"endPosition": "1127",
"kind": "ERROR",
"startPosition": "1128"
},
"endPosition": "1127",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1128"
}
],
"sourceName": "parsernegativetests/strict_repeatparam.js",
"strict": "true",
"startPosition": "1090"
}
,
{
"fileName": "parsernegativetests/strict_with.js",
"code": "with (1105, 4)",
"columnNumber": "0",
"kind": "ERROR",
"position": "1105",
"message": "parsernegativetests/strict_with.js:31:0 \"with\" statement cannot be used in strict mode\nwith({}) {}\n^",
"lineNumber": "31"
}
,
{
"fileName": "parsernegativetests/strict_with.js",
"code": ") (1112, 1)",
"columnNumber": "7",
"kind": "ERROR",
"position": "1112",
"message": "parsernegativetests/strict_with.js:31:7 Expected ; but found )\nwith({}) {}\n ^",
"lineNumber": "31"
}
,
{
"endPosition": "1090",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"endPosition": "1101",
"kind": "STRING_LITERAL",
"value": "use strict",
"startPosition": "1091"
},
"endPosition": "1101",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1091"
},
{
"expression": {
"endPosition": "1112",
"kind": "ERROR",
"startPosition": "1109"
},
"endPosition": "1112",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1109"
},
{
"expression": {
"endPosition": "1116",
"kind": "ERROR",
"startPosition": "1112"
},
"endPosition": "1116",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1112"
}
],
"sourceName": "parsernegativetests/strict_with.js",
"strict": "true",
"startPosition": "1090"
}
,
{
"fileName": "parsernegativetests/toplevelreturn.js",
"code": "return (1090, 6)",
"columnNumber": "0",
"kind": "ERROR",
"position": "1090",
"message": "parsernegativetests/toplevelreturn.js:29:0 Invalid return statement\nreturn;\n^",
"lineNumber": "29"
}
,
{
"fileName": "parsernegativetests/toplevelreturn.js",
"code": "return (1098, 6)",
"columnNumber": "0",
"kind": "ERROR",
"position": "1098",
"message": "parsernegativetests/toplevelreturn.js:30:0 Invalid return statement\nreturn 23;\n^",
"lineNumber": "30"
}
,
{
"endPosition": "1090",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"expression": {
"endPosition": "1097",
"kind": "ERROR",
"startPosition": "1090"
},
"endPosition": "1097",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1090"
},
{
"expression": {
"endPosition": "1108",
"kind": "ERROR",
"startPosition": "1098"
},
"endPosition": "1108",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1098"
}
],
"sourceName": "parsernegativetests/toplevelreturn.js",
"strict": "false",
"startPosition": "1090"
}
,
{
"endPosition": "1136",
"kind": "COMPILATION_UNIT",
"sourceElements": [
{
"endPosition": "1240",
"kind": "FUNCTION",
"name": "Parser",
"body": {
"endPosition": "1218",
"kind": "BLOCK",
"statements": [
{
"expression": {
"expression": {
"endPosition": "1217",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "create",
"expression": {
"endPosition": "1208",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "1202"
},
"endPosition": "1215",
"kind": "MEMBER_SELECT",
"startPosition": "1202"
},
"arguments": [],
"startPosition": "1202"
},
"endPosition": "1217",
"kind": "ASSIGNMENT",
"variable": {
"identifier": "_parser",
"expression": {
"endPosition": "1191",
"kind": "IDENTIFIER",
"name": "this",
"startPosition": "1187"
},
"endPosition": "1199",
"kind": "MEMBER_SELECT",
"startPosition": "1187"
},
"startPosition": "1187"
},
"endPosition": "1217",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1187"
}
],
"startPosition": "1154"
},
"strict": "false",
"startPosition": "1136",
"parameters": []
},
{
"expression": {
"expression": {
"endPosition": "1305",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "type",
"expression": {
"endPosition": "1265",
"kind": "IDENTIFIER",
"name": "Java",
"startPosition": "1261"
},
"endPosition": "1270",
"kind": "MEMBER_SELECT",
"startPosition": "1261"
},
"arguments": [
{
"endPosition": "1303",
"kind": "STRING_LITERAL",
"value": "jdk.nashorn.api.tree.Diagnostic",
"startPosition": "1272"
}
],
"startPosition": "1261"
},
"endPosition": "1305",
"kind": "ASSIGNMENT",
"variable": {
"identifier": "Diagnostic",
"expression": {
"endPosition": "1247",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "1241"
},
"endPosition": "1258",
"kind": "MEMBER_SELECT",
"startPosition": "1241"
},
"startPosition": "1241"
},
"endPosition": "1305",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1241"
},
{
"expression": {
"expression": {
"endPosition": "1390",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "type",
"expression": {
"endPosition": "1338",
"kind": "IDENTIFIER",
"name": "Java",
"startPosition": "1334"
},
"endPosition": "1343",
"kind": "MEMBER_SELECT",
"startPosition": "1334"
},
"arguments": [
{
"endPosition": "1388",
"kind": "STRING_LITERAL",
"value": "jdk.nashorn.api.tree.SimpleTreeVisitorES5_1",
"startPosition": "1345"
}
],
"startPosition": "1334"
},
"endPosition": "1390",
"kind": "ASSIGNMENT",
"variable": {
"identifier": "SimpleTreeVisitor",
"expression": {
"endPosition": "1313",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "1307"
},
"endPosition": "1331",
"kind": "MEMBER_SELECT",
"startPosition": "1307"
},
"startPosition": "1307"
},
"endPosition": "1390",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1307"
},
{
"expression": {
"expression": {
"endPosition": "1444",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "type",
"expression": {
"endPosition": "1410",
"kind": "IDENTIFIER",
"name": "Java",
"startPosition": "1406"
},
"endPosition": "1415",
"kind": "MEMBER_SELECT",
"startPosition": "1406"
},
"arguments": [
{
"endPosition": "1442",
"kind": "STRING_LITERAL",
"value": "jdk.nashorn.api.tree.Tree",
"startPosition": "1417"
}
],
"startPosition": "1406"
},
"endPosition": "1444",
"kind": "ASSIGNMENT",
"variable": {
"identifier": "Tree",
"expression": {
"endPosition": "1398",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "1392"
},
"endPosition": "1403",
"kind": "MEMBER_SELECT",
"startPosition": "1392"
},
"startPosition": "1392"
},
"endPosition": "1444",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1392"
},
{
"expression": {
"expression": {
"endPosition": "1487",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "type",
"expression": {
"endPosition": "1464",
"kind": "IDENTIFIER",
"name": "Java",
"startPosition": "1460"
},
"endPosition": "1469",
"kind": "MEMBER_SELECT",
"startPosition": "1460"
},
"arguments": [
{
"endPosition": "1485",
"kind": "STRING_LITERAL",
"value": "java.util.List",
"startPosition": "1471"
}
],
"startPosition": "1460"
},
"endPosition": "1487",
"kind": "ASSIGNMENT",
"variable": {
"identifier": "List",
"expression": {
"endPosition": "1452",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "1446"
},
"endPosition": "1457",
"kind": "MEMBER_SELECT",
"startPosition": "1446"
},
"startPosition": "1446"
},
"endPosition": "1487",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1446"
},
{
"expression": {
"expression": {
"endPosition": "1530",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "type",
"expression": {
"endPosition": "1507",
"kind": "IDENTIFIER",
"name": "Java",
"startPosition": "1503"
},
"endPosition": "1512",
"kind": "MEMBER_SELECT",
"startPosition": "1503"
},
"arguments": [
{
"endPosition": "1528",
"kind": "STRING_LITERAL",
"value": "java.lang.Enum",
"startPosition": "1514"
}
],
"startPosition": "1503"
},
"endPosition": "1530",
"kind": "ASSIGNMENT",
"variable": {
"identifier": "Enum",
"expression": {
"endPosition": "1495",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "1489"
},
"endPosition": "1500",
"kind": "MEMBER_SELECT",
"startPosition": "1489"
},
"startPosition": "1489"
},
"endPosition": "1530",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1489"
},
{
"expression": {
"expression": {
"endPosition": "1657",
"kind": "FUNCTION_EXPRESSION",
"body": {
"endPosition": "1803",
"kind": "BLOCK",
"statements": [
{
"endPosition": "1716",
"kind": "VARIABLE",
"name": "tree",
"startPosition": "1667",
"initializer": {
"endPosition": "1716",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "parse",
"expression": {
"identifier": "_parser",
"expression": {
"endPosition": "1678",
"kind": "IDENTIFIER",
"name": "this",
"startPosition": "1674"
},
"endPosition": "1686",
"kind": "MEMBER_SELECT",
"startPosition": "1674"
},
"endPosition": "1692",
"kind": "MEMBER_SELECT",
"startPosition": "1674"
},
"arguments": [
{
"endPosition": "1697",
"kind": "IDENTIFIER",
"name": "name",
"startPosition": "1693"
},
{
"endPosition": "1705",
"kind": "IDENTIFIER",
"name": "script",
"startPosition": "1699"
},
{
"endPosition": "1715",
"kind": "IDENTIFIER",
"name": "listener",
"startPosition": "1707"
}
],
"startPosition": "1674"
}
},
{
"expression": {
"endPosition": "1771",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "accept",
"expression": {
"endPosition": "1726",
"kind": "IDENTIFIER",
"name": "tree",
"startPosition": "1722"
},
"endPosition": "1733",
"kind": "MEMBER_SELECT",
"startPosition": "1722"
},
"arguments": [
{
"constructorExpression": {
"endPosition": "1764",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "SimpleTreeVisitor",
"expression": {
"endPosition": "1744",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "1738"
},
"endPosition": "1762",
"kind": "MEMBER_SELECT",
"startPosition": "1738"
},
"arguments": [],
"startPosition": "1744"
},
"endPosition": "1764",
"kind": "NEW",
"startPosition": "1734"
},
{
"endPosition": "1770",
"kind": "NULL_LITERAL",
"startPosition": "1766"
}
],
"startPosition": "1722"
},
"endPosition": "1771",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1722"
},
{
"expression": {
"endPosition": "1802",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "convert",
"expression": {
"endPosition": "1788",
"kind": "IDENTIFIER",
"name": "this",
"startPosition": "1784"
},
"endPosition": "1796",
"kind": "MEMBER_SELECT",
"startPosition": "1784"
},
"arguments": [
{
"endPosition": "1801",
"kind": "IDENTIFIER",
"name": "tree",
"startPosition": "1797"
}
],
"startPosition": "1784"
},
"endPosition": "1803",
"kind": "RETURN",
"startPosition": "1777"
}
],
"startPosition": "1657"
},
"strict": "false",
"startPosition": "1657",
"parameters": [
{
"endPosition": "1637",
"kind": "IDENTIFIER",
"name": "name",
"startPosition": "1633"
},
{
"endPosition": "1645",
"kind": "IDENTIFIER",
"name": "script",
"startPosition": "1639"
},
{
"endPosition": "1655",
"kind": "IDENTIFIER",
"name": "listener",
"startPosition": "1647"
}
]
},
"endPosition": "1657",
"kind": "ASSIGNMENT",
"variable": {
"identifier": "parse",
"expression": {
"identifier": "prototype",
"expression": {
"endPosition": "1605",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "1599"
},
"endPosition": "1615",
"kind": "MEMBER_SELECT",
"startPosition": "1599"
},
"endPosition": "1621",
"kind": "MEMBER_SELECT",
"startPosition": "1599"
},
"startPosition": "1599"
},
"endPosition": "1805",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1599"
},
{
"expression": {
"expression": {
"endPosition": "1834",
"kind": "FUNCTION_EXPRESSION",
"body": {
"endPosition": "1897",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "1896",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "create",
"expression": {
"endPosition": "1887",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "type",
"expression": {
"endPosition": "1851",
"kind": "IDENTIFIER",
"name": "Java",
"startPosition": "1847"
},
"endPosition": "1856",
"kind": "MEMBER_SELECT",
"startPosition": "1847"
},
"arguments": [
{
"endPosition": "1885",
"kind": "STRING_LITERAL",
"value": "jdk.nashorn.api.tree.Parser",
"startPosition": "1858"
}
],
"startPosition": "1847"
},
"endPosition": "1894",
"kind": "MEMBER_SELECT",
"startPosition": "1847"
},
"arguments": [],
"startPosition": "1894"
},
"endPosition": "1897",
"kind": "RETURN",
"startPosition": "1840"
}
],
"startPosition": "1834"
},
"strict": "false",
"startPosition": "1834",
"parameters": []
},
"endPosition": "1834",
"kind": "ASSIGNMENT",
"variable": {
"identifier": "create",
"expression": {
"endPosition": "1813",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "1807"
},
"endPosition": "1820",
"kind": "MEMBER_SELECT",
"startPosition": "1807"
},
"startPosition": "1807"
},
"endPosition": "1971",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1807"
},
{
"expression": {
"expression": {
"endPosition": "2014",
"kind": "FUNCTION_EXPRESSION",
"body": {
"endPosition": "2863",
"kind": "BLOCK",
"statements": [
{
"condition": {
"leftOperand": {
"expression": {
"endPosition": "2029",
"kind": "IDENTIFIER",
"name": "tree",
"startPosition": "2025"
},
"endPosition": "2029",
"kind": "LOGICAL_COMPLEMENT",
"startPosition": "2024"
},
"endPosition": "2055",
"kind": "CONDITIONAL_OR",
"rightOperand": {
"leftOperand": {
"expression": {
"endPosition": "2044",
"kind": "IDENTIFIER",
"name": "tree",
"startPosition": "2040"
},
"endPosition": "2044",
"kind": "TYPEOF",
"startPosition": "2033"
},
"endPosition": "2055",
"kind": "NOT_EQUAL_TO",
"rightOperand": {
"endPosition": "2055",
"kind": "STRING_LITERAL",
"value": "object",
"startPosition": "2049"
},
"startPosition": "2033"
},
"startPosition": "2024"
},
"endPosition": "2086",
"kind": "IF",
"startPosition": "2020",
"thenStatement": {
"endPosition": "2086",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "2079",
"kind": "IDENTIFIER",
"name": "tree",
"startPosition": "2075"
},
"endPosition": "2080",
"kind": "RETURN",
"startPosition": "2068"
}
],
"startPosition": "2058"
}
},
{
"endPosition": "2133",
"kind": "VARIABLE",
"name": "obj",
"startPosition": "2096",
"initializer": {
"endPosition": "2133",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "bindProperties",
"expression": {
"endPosition": "2108",
"kind": "IDENTIFIER",
"name": "Object",
"startPosition": "2102"
},
"endPosition": "2123",
"kind": "MEMBER_SELECT",
"startPosition": "2102"
},
"arguments": [
{
"endPosition": "2126",
"kind": "OBJECT_LITERAL",
"startPosition": "2124",
"properties": []
},
{
"endPosition": "2132",
"kind": "IDENTIFIER",
"name": "tree",
"startPosition": "2128"
}
],
"startPosition": "2102"
}
},
{
"endPosition": "2154",
"kind": "VARIABLE",
"name": "result",
"startPosition": "2143",
"initializer": {
"endPosition": "2154",
"kind": "OBJECT_LITERAL",
"startPosition": "2152",
"properties": []
}
},
{
"endPosition": "2170",
"kind": "VARIABLE",
"name": "i",
"startPosition": "2169"
},
{
"expression": {
"endPosition": "2177",
"kind": "IDENTIFIER",
"name": "obj",
"startPosition": "2174"
},
"endPosition": "2845",
"kind": "FOR_IN_LOOP",
"forEach": "false",
"variable": {
"endPosition": "2170",
"kind": "IDENTIFIER",
"name": "i",
"startPosition": "2169"
},
"statement": {
"endPosition": "2845",
"kind": "BLOCK",
"statements": [
{
"endPosition": "2204",
"kind": "VARIABLE",
"name": "val",
"startPosition": "2192",
"initializer": {
"expression": {
"endPosition": "2201",
"kind": "IDENTIFIER",
"name": "obj",
"startPosition": "2198"
},
"endPosition": "2204",
"kind": "ARRAY_ACCESS",
"index": {
"endPosition": "2203",
"kind": "IDENTIFIER",
"name": "i",
"startPosition": "2202"
},
"startPosition": "2198"
}
},
{
"condition": {
"leftOperand": {
"endPosition": "2220",
"kind": "IDENTIFIER",
"name": "val",
"startPosition": "2217"
},
"expression": {
"endPosition": "2220",
"kind": "IDENTIFIER",
"name": "val",
"startPosition": "2217"
},
"endPosition": "2243",
"kind": "INSTANCE_OF",
"rightOperand": {
"identifier": "Tree",
"expression": {
"endPosition": "2238",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "2232"
},
"endPosition": "2243",
"kind": "MEMBER_SELECT",
"startPosition": "2232"
},
"type": {
"identifier": "Tree",
"expression": {
"endPosition": "2238",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "2232"
},
"endPosition": "2243",
"kind": "MEMBER_SELECT",
"startPosition": "2232"
},
"startPosition": "2217"
},
"elseStatement": {
"condition": {
"leftOperand": {
"endPosition": "2309",
"kind": "IDENTIFIER",
"name": "val",
"startPosition": "2306"
},
"expression": {
"endPosition": "2309",
"kind": "IDENTIFIER",
"name": "val",
"startPosition": "2306"
},
"endPosition": "2332",
"kind": "INSTANCE_OF",
"rightOperand": {
"identifier": "List",
"expression": {
"endPosition": "2327",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "2321"
},
"endPosition": "2332",
"kind": "MEMBER_SELECT",
"startPosition": "2321"
},
"type": {
"identifier": "List",
"expression": {
"endPosition": "2327",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "2321"
},
"endPosition": "2332",
"kind": "MEMBER_SELECT",
"startPosition": "2321"
},
"startPosition": "2306"
},
"elseStatement": {
"endPosition": "2840",
"kind": "BLOCK",
"statements": [
{
"cases": [
{
"expression": {
"endPosition": "2574",
"kind": "STRING_LITERAL",
"value": "number",
"startPosition": "2568"
},
"endPosition": "2576",
"kind": "CASE",
"statements": [],
"startPosition": "2562"
},
{
"expression": {
"endPosition": "2603",
"kind": "STRING_LITERAL",
"value": "string",
"startPosition": "2597"
},
"endPosition": "2605",
"kind": "CASE",
"statements": [],
"startPosition": "2591"
},
{
"expression": {
"endPosition": "2633",
"kind": "STRING_LITERAL",
"value": "boolean",
"startPosition": "2626"
},
"endPosition": "2678",
"kind": "CASE",
"statements": [
{
"expression": {
"expression": {
"endPosition": "2677",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "2672",
"kind": "IDENTIFIER",
"name": "String",
"startPosition": "2666"
},
"arguments": [
{
"endPosition": "2676",
"kind": "IDENTIFIER",
"name": "val",
"startPosition": "2673"
}
],
"startPosition": "2666"
},
"endPosition": "2677",
"kind": "ASSIGNMENT",
"variable": {
"expression": {
"endPosition": "2660",
"kind": "IDENTIFIER",
"name": "result",
"startPosition": "2654"
},
"endPosition": "2663",
"kind": "ARRAY_ACCESS",
"index": {
"endPosition": "2662",
"kind": "IDENTIFIER",
"name": "i",
"startPosition": "2661"
},
"startPosition": "2654"
},
"startPosition": "2654"
},
"endPosition": "2677",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "2654"
}
],
"startPosition": "2620"
},
{
"endPosition": "2820",
"kind": "CASE",
"statements": [
{
"condition": {
"leftOperand": {
"endPosition": "2727",
"kind": "IDENTIFIER",
"name": "val",
"startPosition": "2724"
},
"expression": {
"endPosition": "2727",
"kind": "IDENTIFIER",
"name": "val",
"startPosition": "2724"
},
"endPosition": "2750",
"kind": "INSTANCE_OF",
"rightOperand": {
"identifier": "Enum",
"expression": {
"endPosition": "2745",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "2739"
},
"endPosition": "2750",
"kind": "MEMBER_SELECT",
"startPosition": "2739"
},
"type": {
"identifier": "Enum",
"expression": {
"endPosition": "2745",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "2739"
},
"endPosition": "2750",
"kind": "MEMBER_SELECT",
"startPosition": "2739"
},
"startPosition": "2724"
},
"endPosition": "2820",
"kind": "IF",
"startPosition": "2720",
"thenStatement": {
"endPosition": "2820",
"kind": "BLOCK",
"statements": [
{
"expression": {
"expression": {
"endPosition": "2799",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "2794",
"kind": "IDENTIFIER",
"name": "String",
"startPosition": "2788"
},
"arguments": [
{
"endPosition": "2798",
"kind": "IDENTIFIER",
"name": "val",
"startPosition": "2795"
}
],
"startPosition": "2788"
},
"endPosition": "2799",
"kind": "ASSIGNMENT",
"variable": {
"expression": {
"endPosition": "2782",
"kind": "IDENTIFIER",
"name": "result",
"startPosition": "2776"
},
"endPosition": "2785",
"kind": "ARRAY_ACCESS",
"index": {
"endPosition": "2784",
"kind": "IDENTIFIER",
"name": "i",
"startPosition": "2783"
},
"startPosition": "2776"
},
"startPosition": "2776"
},
"endPosition": "2799",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "2776"
}
],
"startPosition": "2752"
}
}
],
"startPosition": "2693"
}
],
"expression": {
"expression": {
"endPosition": "2544",
"kind": "IDENTIFIER",
"name": "val",
"startPosition": "2541"
},
"endPosition": "2544",
"kind": "TYPEOF",
"startPosition": "2534"
},
"endPosition": "2832",
"kind": "SWITCH",
"startPosition": "2526"
}
],
"startPosition": "2514"
},
"endPosition": "2840",
"kind": "IF",
"startPosition": "2302",
"thenStatement": {
"endPosition": "2508",
"kind": "BLOCK",
"statements": [
{
"endPosition": "2377",
"kind": "VARIABLE",
"name": "arr",
"startPosition": "2350",
"initializer": {
"constructorExpression": {
"endPosition": "2377",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "2365",
"kind": "IDENTIFIER",
"name": "Array",
"startPosition": "2360"
},
"arguments": [
{
"endPosition": "2376",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "size",
"expression": {
"endPosition": "2369",
"kind": "IDENTIFIER",
"name": "val",
"startPosition": "2366"
},
"endPosition": "2374",
"kind": "MEMBER_SELECT",
"startPosition": "2366"
},
"arguments": [],
"startPosition": "2366"
}
],
"startPosition": "2360"
},
"endPosition": "2377",
"kind": "NEW",
"startPosition": "2356"
}
},
{
"endPosition": "2399",
"kind": "VARIABLE",
"name": "j",
"startPosition": "2398"
},
{
"expression": {
"endPosition": "2406",
"kind": "IDENTIFIER",
"name": "val",
"startPosition": "2403"
},
"endPosition": "2466",
"kind": "FOR_IN_LOOP",
"forEach": "false",
"variable": {
"endPosition": "2399",
"kind": "IDENTIFIER",
"name": "j",
"startPosition": "2398"
},
"statement": {
"endPosition": "2466",
"kind": "BLOCK",
"statements": [
{
"expression": {
"expression": {
"endPosition": "2453",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "convert",
"expression": {
"endPosition": "2437",
"kind": "IDENTIFIER",
"name": "this",
"startPosition": "2433"
},
"endPosition": "2445",
"kind": "MEMBER_SELECT",
"startPosition": "2433"
},
"arguments": [
{
"expression": {
"endPosition": "2449",
"kind": "IDENTIFIER",
"name": "val",
"startPosition": "2446"
},
"endPosition": "2452",
"kind": "ARRAY_ACCESS",
"index": {
"endPosition": "2451",
"kind": "IDENTIFIER",
"name": "j",
"startPosition": "2450"
},
"startPosition": "2446"
}
],
"startPosition": "2433"
},
"endPosition": "2453",
"kind": "ASSIGNMENT",
"variable": {
"expression": {
"endPosition": "2427",
"kind": "IDENTIFIER",
"name": "arr",
"startPosition": "2424"
},
"endPosition": "2430",
"kind": "ARRAY_ACCESS",
"index": {
"endPosition": "2429",
"kind": "IDENTIFIER",
"name": "j",
"startPosition": "2428"
},
"startPosition": "2424"
},
"startPosition": "2424"
},
"endPosition": "2453",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "2424"
}
],
"startPosition": "2408"
},
"startPosition": "2389"
},
{
"expression": {
"expression": {
"endPosition": "2499",
"kind": "IDENTIFIER",
"name": "arr",
"startPosition": "2496"
},
"endPosition": "2499",
"kind": "ASSIGNMENT",
"variable": {
"expression": {
"endPosition": "2490",
"kind": "IDENTIFIER",
"name": "result",
"startPosition": "2484"
},
"endPosition": "2493",
"kind": "ARRAY_ACCESS",
"index": {
"endPosition": "2492",
"kind": "IDENTIFIER",
"name": "i",
"startPosition": "2491"
},
"startPosition": "2484"
},
"startPosition": "2484"
},
"endPosition": "2499",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "2484"
}
],
"startPosition": "2334"
}
},
"endPosition": "2840",
"kind": "IF",
"startPosition": "2213",
"thenStatement": {
"endPosition": "2296",
"kind": "BLOCK",
"statements": [
{
"expression": {
"expression": {
"endPosition": "2286",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "convert",
"expression": {
"endPosition": "2273",
"kind": "IDENTIFIER",
"name": "this",
"startPosition": "2269"
},
"endPosition": "2281",
"kind": "MEMBER_SELECT",
"startPosition": "2269"
},
"arguments": [
{
"endPosition": "2285",
"kind": "IDENTIFIER",
"name": "val",
"startPosition": "2282"
}
],
"startPosition": "2269"
},
"endPosition": "2286",
"kind": "ASSIGNMENT",
"variable": {
"expression": {
"endPosition": "2263",
"kind": "IDENTIFIER",
"name": "result",
"startPosition": "2257"
},
"endPosition": "2266",
"kind": "ARRAY_ACCESS",
"index": {
"endPosition": "2265",
"kind": "IDENTIFIER",
"name": "i",
"startPosition": "2264"
},
"startPosition": "2257"
},
"startPosition": "2257"
},
"endPosition": "2286",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "2257"
}
],
"startPosition": "2245"
}
}
],
"startPosition": "2179"
},
"startPosition": "2160"
},
{
"expression": {
"endPosition": "2862",
"kind": "IDENTIFIER",
"name": "result",
"startPosition": "2856"
},
"endPosition": "2863",
"kind": "RETURN",
"startPosition": "2849"
}
],
"startPosition": "2014"
},
"strict": "false",
"startPosition": "2014",
"parameters": [
{
"endPosition": "2012",
"kind": "IDENTIFIER",
"name": "tree",
"startPosition": "2008"
}
]
},
"endPosition": "2014",
"kind": "ASSIGNMENT",
"variable": {
"identifier": "convert",
"expression": {
"identifier": "prototype",
"expression": {
"endPosition": "1978",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "1972"
},
"endPosition": "1988",
"kind": "MEMBER_SELECT",
"startPosition": "1972"
},
"endPosition": "1996",
"kind": "MEMBER_SELECT",
"startPosition": "1972"
},
"startPosition": "1972"
},
"endPosition": "2865",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "1972"
},
{
"endPosition": "3618",
"kind": "FUNCTION",
"name": "processFiles",
"body": {
"endPosition": "3575",
"kind": "BLOCK",
"statements": [
{
"endPosition": "2938",
"kind": "VARIABLE",
"name": "File",
"startPosition": "2906",
"initializer": {
"endPosition": "2938",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "type",
"expression": {
"endPosition": "2917",
"kind": "IDENTIFIER",
"name": "Java",
"startPosition": "2913"
},
"endPosition": "2922",
"kind": "MEMBER_SELECT",
"startPosition": "2913"
},
"arguments": [
{
"endPosition": "2936",
"kind": "STRING_LITERAL",
"value": "java.io.File",
"startPosition": "2924"
}
],
"startPosition": "2913"
}
},
{
"endPosition": "2993",
"kind": "VARIABLE",
"name": "files",
"startPosition": "2947",
"initializer": {
"endPosition": "2993",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "listFiles",
"expression": {
"constructorExpression": {
"endPosition": "2981",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "2963",
"kind": "IDENTIFIER",
"name": "File",
"startPosition": "2959"
},
"arguments": [
{
"leftOperand": {
"endPosition": "2971",
"kind": "IDENTIFIER",
"name": "__DIR__",
"startPosition": "2964"
},
"endPosition": "2980",
"kind": "PLUS",
"rightOperand": {
"endPosition": "2980",
"kind": "IDENTIFIER",
"name": "subdir",
"startPosition": "2974"
},
"startPosition": "2964"
}
],
"startPosition": "2959"
},
"endPosition": "2981",
"kind": "NEW",
"startPosition": "2955"
},
"endPosition": "2991",
"kind": "MEMBER_SELECT",
"startPosition": "2955"
},
"arguments": [],
"startPosition": "2955"
}
},
{
"expression": {
"endPosition": "3026",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "sort",
"expression": {
"identifier": "Arrays",
"expression": {
"identifier": "util",
"expression": {
"endPosition": "3002",
"kind": "IDENTIFIER",
"name": "java",
"startPosition": "2998"
},
"endPosition": "3007",
"kind": "MEMBER_SELECT",
"startPosition": "2998"
},
"endPosition": "3014",
"kind": "MEMBER_SELECT",
"startPosition": "2998"
},
"endPosition": "3019",
"kind": "MEMBER_SELECT",
"startPosition": "2998"
},
"arguments": [
{
"endPosition": "3025",
"kind": "IDENTIFIER",
"name": "files",
"startPosition": "3020"
}
],
"startPosition": "2998"
},
"endPosition": "3026",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "2998"
},
{
"endPosition": "3049",
"kind": "VARIABLE",
"name": "file",
"startPosition": "3045"
},
{
"expression": {
"endPosition": "3058",
"kind": "IDENTIFIER",
"name": "files",
"startPosition": "3053"
},
"endPosition": "3575",
"kind": "FOR_IN_LOOP",
"forEach": "true",
"variable": {
"endPosition": "3049",
"kind": "IDENTIFIER",
"name": "file",
"startPosition": "3045"
},
"statement": {
"endPosition": "3575",
"kind": "BLOCK",
"statements": [
{
"condition": {
"endPosition": "3098",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "endsWith",
"expression": {
"identifier": "name",
"expression": {
"endPosition": "3077",
"kind": "IDENTIFIER",
"name": "file",
"startPosition": "3073"
},
"endPosition": "3082",
"kind": "MEMBER_SELECT",
"startPosition": "3073"
},
"endPosition": "3091",
"kind": "MEMBER_SELECT",
"startPosition": "3073"
},
"arguments": [
{
"endPosition": "3096",
"kind": "STRING_LITERAL",
"value": ".js",
"startPosition": "3093"
}
],
"startPosition": "3073"
},
"endPosition": "3570",
"kind": "IF",
"startPosition": "3069",
"thenStatement": {
"endPosition": "3570",
"kind": "BLOCK",
"statements": [
{
"endPosition": "3141",
"kind": "VARIABLE",
"name": "script",
"startPosition": "3117",
"initializer": {
"endPosition": "3141",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "3135",
"kind": "IDENTIFIER",
"name": "readFully",
"startPosition": "3126"
},
"arguments": [
{
"endPosition": "3140",
"kind": "IDENTIFIER",
"name": "file",
"startPosition": "3136"
}
],
"startPosition": "3126"
}
},
{
"endPosition": "3179",
"kind": "VARIABLE",
"name": "parser",
"startPosition": "3158",
"initializer": {
"constructorExpression": {
"endPosition": "3179",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "3177",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "3171"
},
"arguments": [],
"startPosition": "3171"
},
"endPosition": "3179",
"kind": "NEW",
"startPosition": "3167"
}
},
{
"endPosition": "3435",
"kind": "VARIABLE",
"name": "tree",
"startPosition": "3196",
"initializer": {
"endPosition": "3435",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "parse",
"expression": {
"endPosition": "3209",
"kind": "IDENTIFIER",
"name": "parser",
"startPosition": "3203"
},
"endPosition": "3215",
"kind": "MEMBER_SELECT",
"startPosition": "3203"
},
"arguments": [
{
"leftOperand": {
"leftOperand": {
"endPosition": "3222",
"kind": "IDENTIFIER",
"name": "subdir",
"startPosition": "3216"
},
"endPosition": "3227",
"kind": "PLUS",
"rightOperand": {
"endPosition": "3227",
"kind": "STRING_LITERAL",
"value": "/",
"startPosition": "3226"
},
"startPosition": "3216"
},
"endPosition": "3240",
"kind": "PLUS",
"rightOperand": {
"identifier": "name",
"expression": {
"endPosition": "3235",
"kind": "IDENTIFIER",
"name": "file",
"startPosition": "3231"
},
"endPosition": "3240",
"kind": "MEMBER_SELECT",
"startPosition": "3231"
},
"startPosition": "3216"
},
{
"endPosition": "3248",
"kind": "IDENTIFIER",
"name": "script",
"startPosition": "3242"
},
{
"endPosition": "3286",
"kind": "FUNCTION_EXPRESSION",
"body": {
"endPosition": "3417",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "3385",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "3312",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "3307"
},
"arguments": [
{
"endPosition": "3384",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "replace",
"expression": {
"endPosition": "3364",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "stringify",
"expression": {
"endPosition": "3317",
"kind": "IDENTIFIER",
"name": "JSON",
"startPosition": "3313"
},
"endPosition": "3327",
"kind": "MEMBER_SELECT",
"startPosition": "3313"
},
"arguments": [
{
"endPosition": "3354",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "convert",
"expression": {
"endPosition": "3334",
"kind": "IDENTIFIER",
"name": "parser",
"startPosition": "3328"
},
"endPosition": "3342",
"kind": "MEMBER_SELECT",
"startPosition": "3328"
},
"arguments": [
{
"endPosition": "3353",
"kind": "IDENTIFIER",
"name": "diagnostic",
"startPosition": "3343"
}
],
"startPosition": "3328"
},
{
"endPosition": "3360",
"kind": "NULL_LITERAL",
"startPosition": "3356"
},
{
"endPosition": "3363",
"kind": "NUMBER_LITERAL",
"value": "2",
"startPosition": "3362"
}
],
"startPosition": "3313"
},
"endPosition": "3372",
"kind": "MEMBER_SELECT",
"startPosition": "3313"
},
"arguments": [
{
"endPosition": "3379",
"kind": "REGEXP_LITERAL",
"options": "g",
"pattern": "\\\\r",
"startPosition": "3373"
},
{
"endPosition": "3382",
"kind": "STRING_LITERAL",
"value": "",
"startPosition": "3382"
}
],
"startPosition": "3372"
}
],
"startPosition": "3307"
},
"endPosition": "3385",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "3307"
},
{
"expression": {
"endPosition": "3416",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "3411",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "3406"
},
"arguments": [
{
"endPosition": "3414",
"kind": "STRING_LITERAL",
"value": ",",
"startPosition": "3413"
}
],
"startPosition": "3406"
},
"endPosition": "3416",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "3406"
}
],
"startPosition": "3286"
},
"strict": "false",
"startPosition": "3286",
"parameters": [
{
"endPosition": "3284",
"kind": "IDENTIFIER",
"name": "diagnostic",
"startPosition": "3274"
}
]
}
],
"startPosition": "3203"
}
},
{
"condition": {
"leftOperand": {
"endPosition": "3457",
"kind": "IDENTIFIER",
"name": "tree",
"startPosition": "3453"
},
"endPosition": "3465",
"kind": "NOT_EQUAL_TO",
"rightOperand": {
"endPosition": "3465",
"kind": "NULL_LITERAL",
"startPosition": "3461"
},
"startPosition": "3453"
},
"endPosition": "3561",
"kind": "IF",
"startPosition": "3449",
"thenStatement": {
"endPosition": "3561",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "3520",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "3489",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "3484"
},
"arguments": [
{
"endPosition": "3519",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "stringify",
"expression": {
"endPosition": "3494",
"kind": "IDENTIFIER",
"name": "JSON",
"startPosition": "3490"
},
"endPosition": "3504",
"kind": "MEMBER_SELECT",
"startPosition": "3490"
},
"arguments": [
{
"endPosition": "3509",
"kind": "IDENTIFIER",
"name": "tree",
"startPosition": "3505"
},
{
"endPosition": "3515",
"kind": "NULL_LITERAL",
"startPosition": "3511"
},
{
"endPosition": "3518",
"kind": "NUMBER_LITERAL",
"value": "2",
"startPosition": "3517"
}
],
"startPosition": "3490"
}
],
"startPosition": "3484"
},
"endPosition": "3520",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "3484"
},
{
"expression": {
"endPosition": "3547",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "3542",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "3537"
},
"arguments": [
{
"endPosition": "3545",
"kind": "STRING_LITERAL",
"value": ",",
"startPosition": "3544"
}
],
"startPosition": "3537"
},
"endPosition": "3547",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "3537"
}
],
"startPosition": "3467"
}
}
],
"startPosition": "3100"
}
}
],
"startPosition": "3060"
},
"startPosition": "3031"
}
],
"startPosition": "2897"
},
"strict": "false",
"startPosition": "2867",
"parameters": [
{
"endPosition": "2895",
"kind": "IDENTIFIER",
"name": "subdir",
"startPosition": "2889"
}
]
},
{
"endPosition": "3921",
"kind": "FUNCTION",
"name": "main",
"body": {
"endPosition": "3919",
"kind": "BLOCK",
"statements": [
{
"expression": {
"endPosition": "3651",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "3646",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "3641"
},
"arguments": [
{
"endPosition": "3649",
"kind": "STRING_LITERAL",
"value": "[",
"startPosition": "3648"
}
],
"startPosition": "3641"
},
"endPosition": "3651",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "3641"
},
{
"expression": {
"endPosition": "3685",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "3670",
"kind": "IDENTIFIER",
"name": "processFiles",
"startPosition": "3658"
},
"arguments": [
{
"endPosition": "3683",
"kind": "STRING_LITERAL",
"value": "parsertests",
"startPosition": "3672"
}
],
"startPosition": "3658"
},
"endPosition": "3685",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "3658"
},
{
"expression": {
"endPosition": "3726",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "3703",
"kind": "IDENTIFIER",
"name": "processFiles",
"startPosition": "3691"
},
"arguments": [
{
"endPosition": "3724",
"kind": "STRING_LITERAL",
"value": "parsernegativetests",
"startPosition": "3705"
}
],
"startPosition": "3691"
},
"endPosition": "3726",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "3691"
},
{
"endPosition": "3795",
"kind": "VARIABLE",
"name": "script",
"startPosition": "3767",
"initializer": {
"endPosition": "3795",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "3785",
"kind": "IDENTIFIER",
"name": "readFully",
"startPosition": "3776"
},
"arguments": [
{
"endPosition": "3794",
"kind": "IDENTIFIER",
"name": "__FILE__",
"startPosition": "3786"
}
],
"startPosition": "3776"
}
},
{
"endPosition": "3860",
"kind": "VARIABLE",
"name": "tree",
"startPosition": "3805",
"initializer": {
"endPosition": "3860",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "parse",
"expression": {
"constructorExpression": {
"endPosition": "3824",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "3822",
"kind": "IDENTIFIER",
"name": "Parser",
"startPosition": "3816"
},
"arguments": [],
"startPosition": "3816"
},
"endPosition": "3824",
"kind": "NEW",
"startPosition": "3812"
},
"endPosition": "3830",
"kind": "MEMBER_SELECT",
"startPosition": "3812"
},
"arguments": [
{
"endPosition": "3844",
"kind": "STRING_LITERAL",
"value": "parserapi.js",
"startPosition": "3832"
},
{
"endPosition": "3853",
"kind": "IDENTIFIER",
"name": "script",
"startPosition": "3847"
},
{
"endPosition": "3859",
"kind": "NULL_LITERAL",
"startPosition": "3855"
}
],
"startPosition": "3812"
}
},
{
"expression": {
"endPosition": "3902",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "3871",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "3866"
},
"arguments": [
{
"endPosition": "3901",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"identifier": "stringify",
"expression": {
"endPosition": "3876",
"kind": "IDENTIFIER",
"name": "JSON",
"startPosition": "3872"
},
"endPosition": "3886",
"kind": "MEMBER_SELECT",
"startPosition": "3872"
},
"arguments": [
{
"endPosition": "3891",
"kind": "IDENTIFIER",
"name": "tree",
"startPosition": "3887"
},
{
"endPosition": "3897",
"kind": "NULL_LITERAL",
"startPosition": "3893"
},
{
"endPosition": "3900",
"kind": "NUMBER_LITERAL",
"value": "2",
"startPosition": "3899"
}
],
"startPosition": "3872"
}
],
"startPosition": "3866"
},
"endPosition": "3902",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "3866"
},
{
"expression": {
"endPosition": "3918",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "3913",
"kind": "IDENTIFIER",
"name": "print",
"startPosition": "3908"
},
"arguments": [
{
"endPosition": "3916",
"kind": "STRING_LITERAL",
"value": "]",
"startPosition": "3915"
}
],
"startPosition": "3908"
},
"endPosition": "3918",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "3908"
}
],
"startPosition": "3635"
},
"strict": "false",
"startPosition": "3619",
"parameters": []
},
{
"expression": {
"endPosition": "3929",
"kind": "FUNCTION_INVOCATION",
"functionSelect": {
"endPosition": "3927",
"kind": "IDENTIFIER",
"name": "main",
"startPosition": "3923"
},
"arguments": [],
"startPosition": "3923"
},
"endPosition": "3929",
"kind": "EXPRESSION_STATEMENT",
"startPosition": "3923"
}
],
"sourceName": "parserapi.js",
"strict": "false",
"startPosition": "1136"
}
]