[ { "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": "1187", "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": "1146", "kind": "PROPERTY", "value": { "endPosition": "1146", "kind": "NUMBER_LITERAL", "value": "10", "startPosition": "1144" }, "startPosition": "1141", "key": { "endPosition": "1142", "kind": "IDENTIFIER", "name": "x", "startPosition": "1141" } }, { "endPosition": "1152", "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": "1169", "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": "1177", "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": "1184", "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": "1214", "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 (1122, 1)", "columnNumber": "17", "kind": "ERROR", "position": "1122", "message": "parsernegativetests/strict_repeatparam.js:31:17 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": "1242", "kind": "FUNCTION", "name": "Parser", "body": { "endPosition": "1220", "kind": "BLOCK", "statements": [ { "expression": { "expression": { "endPosition": "1219", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "create", "expression": { "endPosition": "1210", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "1204" }, "endPosition": "1217", "kind": "MEMBER_SELECT", "startPosition": "1204" }, "arguments": [], "startPosition": "1204" }, "endPosition": "1219", "kind": "ASSIGNMENT", "variable": { "identifier": "_parser", "expression": { "endPosition": "1193", "kind": "IDENTIFIER", "name": "this", "startPosition": "1189" }, "endPosition": "1201", "kind": "MEMBER_SELECT", "startPosition": "1189" }, "startPosition": "1189" }, "endPosition": "1219", "kind": "EXPRESSION_STATEMENT", "startPosition": "1189" } ], "startPosition": "1154" }, "strict": "false", "startPosition": "1136", "parameters": [] }, { "expression": { "expression": { "endPosition": "1307", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "type", "expression": { "endPosition": "1267", "kind": "IDENTIFIER", "name": "Java", "startPosition": "1263" }, "endPosition": "1272", "kind": "MEMBER_SELECT", "startPosition": "1263" }, "arguments": [ { "endPosition": "1305", "kind": "STRING_LITERAL", "value": "jdk.nashorn.api.tree.Diagnostic", "startPosition": "1274" } ], "startPosition": "1263" }, "endPosition": "1307", "kind": "ASSIGNMENT", "variable": { "identifier": "Diagnostic", "expression": { "endPosition": "1249", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "1243" }, "endPosition": "1260", "kind": "MEMBER_SELECT", "startPosition": "1243" }, "startPosition": "1243" }, "endPosition": "1307", "kind": "EXPRESSION_STATEMENT", "startPosition": "1243" }, { "expression": { "expression": { "endPosition": "1392", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "type", "expression": { "endPosition": "1340", "kind": "IDENTIFIER", "name": "Java", "startPosition": "1336" }, "endPosition": "1345", "kind": "MEMBER_SELECT", "startPosition": "1336" }, "arguments": [ { "endPosition": "1390", "kind": "STRING_LITERAL", "value": "jdk.nashorn.api.tree.SimpleTreeVisitorES5_1", "startPosition": "1347" } ], "startPosition": "1336" }, "endPosition": "1392", "kind": "ASSIGNMENT", "variable": { "identifier": "SimpleTreeVisitor", "expression": { "endPosition": "1315", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "1309" }, "endPosition": "1333", "kind": "MEMBER_SELECT", "startPosition": "1309" }, "startPosition": "1309" }, "endPosition": "1392", "kind": "EXPRESSION_STATEMENT", "startPosition": "1309" }, { "expression": { "expression": { "endPosition": "1446", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "type", "expression": { "endPosition": "1412", "kind": "IDENTIFIER", "name": "Java", "startPosition": "1408" }, "endPosition": "1417", "kind": "MEMBER_SELECT", "startPosition": "1408" }, "arguments": [ { "endPosition": "1444", "kind": "STRING_LITERAL", "value": "jdk.nashorn.api.tree.Tree", "startPosition": "1419" } ], "startPosition": "1408" }, "endPosition": "1446", "kind": "ASSIGNMENT", "variable": { "identifier": "Tree", "expression": { "endPosition": "1400", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "1394" }, "endPosition": "1405", "kind": "MEMBER_SELECT", "startPosition": "1394" }, "startPosition": "1394" }, "endPosition": "1446", "kind": "EXPRESSION_STATEMENT", "startPosition": "1394" }, { "expression": { "expression": { "endPosition": "1489", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "type", "expression": { "endPosition": "1466", "kind": "IDENTIFIER", "name": "Java", "startPosition": "1462" }, "endPosition": "1471", "kind": "MEMBER_SELECT", "startPosition": "1462" }, "arguments": [ { "endPosition": "1487", "kind": "STRING_LITERAL", "value": "java.util.List", "startPosition": "1473" } ], "startPosition": "1462" }, "endPosition": "1489", "kind": "ASSIGNMENT", "variable": { "identifier": "List", "expression": { "endPosition": "1454", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "1448" }, "endPosition": "1459", "kind": "MEMBER_SELECT", "startPosition": "1448" }, "startPosition": "1448" }, "endPosition": "1489", "kind": "EXPRESSION_STATEMENT", "startPosition": "1448" }, { "expression": { "expression": { "endPosition": "1532", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "type", "expression": { "endPosition": "1509", "kind": "IDENTIFIER", "name": "Java", "startPosition": "1505" }, "endPosition": "1514", "kind": "MEMBER_SELECT", "startPosition": "1505" }, "arguments": [ { "endPosition": "1530", "kind": "STRING_LITERAL", "value": "java.lang.Enum", "startPosition": "1516" } ], "startPosition": "1505" }, "endPosition": "1532", "kind": "ASSIGNMENT", "variable": { "identifier": "Enum", "expression": { "endPosition": "1497", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "1491" }, "endPosition": "1502", "kind": "MEMBER_SELECT", "startPosition": "1491" }, "startPosition": "1491" }, "endPosition": "1532", "kind": "EXPRESSION_STATEMENT", "startPosition": "1491" }, { "expression": { "expression": { "endPosition": "1659", "kind": "FUNCTION_EXPRESSION", "body": { "endPosition": "1805", "kind": "BLOCK", "statements": [ { "endPosition": "1718", "kind": "VARIABLE", "name": "tree", "startPosition": "1669", "initializer": { "endPosition": "1718", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "parse", "expression": { "identifier": "_parser", "expression": { "endPosition": "1680", "kind": "IDENTIFIER", "name": "this", "startPosition": "1676" }, "endPosition": "1688", "kind": "MEMBER_SELECT", "startPosition": "1676" }, "endPosition": "1694", "kind": "MEMBER_SELECT", "startPosition": "1676" }, "arguments": [ { "endPosition": "1699", "kind": "IDENTIFIER", "name": "name", "startPosition": "1695" }, { "endPosition": "1707", "kind": "IDENTIFIER", "name": "script", "startPosition": "1701" }, { "endPosition": "1717", "kind": "IDENTIFIER", "name": "listener", "startPosition": "1709" } ], "startPosition": "1676" } }, { "expression": { "endPosition": "1773", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "accept", "expression": { "endPosition": "1728", "kind": "IDENTIFIER", "name": "tree", "startPosition": "1724" }, "endPosition": "1735", "kind": "MEMBER_SELECT", "startPosition": "1724" }, "arguments": [ { "constructorExpression": { "endPosition": "1766", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "SimpleTreeVisitor", "expression": { "endPosition": "1746", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "1740" }, "endPosition": "1764", "kind": "MEMBER_SELECT", "startPosition": "1740" }, "arguments": [], "startPosition": "1746" }, "endPosition": "1766", "kind": "NEW", "startPosition": "1736" }, { "endPosition": "1772", "kind": "NULL_LITERAL", "startPosition": "1768" } ], "startPosition": "1724" }, "endPosition": "1773", "kind": "EXPRESSION_STATEMENT", "startPosition": "1724" }, { "expression": { "endPosition": "1804", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "convert", "expression": { "endPosition": "1790", "kind": "IDENTIFIER", "name": "this", "startPosition": "1786" }, "endPosition": "1798", "kind": "MEMBER_SELECT", "startPosition": "1786" }, "arguments": [ { "endPosition": "1803", "kind": "IDENTIFIER", "name": "tree", "startPosition": "1799" } ], "startPosition": "1786" }, "endPosition": "1805", "kind": "RETURN", "startPosition": "1779" } ], "startPosition": "1659" }, "strict": "false", "startPosition": "1659", "parameters": [ { "endPosition": "1639", "kind": "IDENTIFIER", "name": "name", "startPosition": "1635" }, { "endPosition": "1647", "kind": "IDENTIFIER", "name": "script", "startPosition": "1641" }, { "endPosition": "1657", "kind": "IDENTIFIER", "name": "listener", "startPosition": "1649" } ] }, "endPosition": "1659", "kind": "ASSIGNMENT", "variable": { "identifier": "parse", "expression": { "identifier": "prototype", "expression": { "endPosition": "1607", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "1601" }, "endPosition": "1617", "kind": "MEMBER_SELECT", "startPosition": "1601" }, "endPosition": "1623", "kind": "MEMBER_SELECT", "startPosition": "1601" }, "startPosition": "1601" }, "endPosition": "1807", "kind": "EXPRESSION_STATEMENT", "startPosition": "1601" }, { "expression": { "expression": { "endPosition": "1836", "kind": "FUNCTION_EXPRESSION", "body": { "endPosition": "1899", "kind": "BLOCK", "statements": [ { "expression": { "endPosition": "1898", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "create", "expression": { "endPosition": "1889", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "type", "expression": { "endPosition": "1853", "kind": "IDENTIFIER", "name": "Java", "startPosition": "1849" }, "endPosition": "1858", "kind": "MEMBER_SELECT", "startPosition": "1849" }, "arguments": [ { "endPosition": "1887", "kind": "STRING_LITERAL", "value": "jdk.nashorn.api.tree.Parser", "startPosition": "1860" } ], "startPosition": "1849" }, "endPosition": "1896", "kind": "MEMBER_SELECT", "startPosition": "1849" }, "arguments": [], "startPosition": "1896" }, "endPosition": "1899", "kind": "RETURN", "startPosition": "1842" } ], "startPosition": "1836" }, "strict": "false", "startPosition": "1836", "parameters": [] }, "endPosition": "1836", "kind": "ASSIGNMENT", "variable": { "identifier": "create", "expression": { "endPosition": "1815", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "1809" }, "endPosition": "1822", "kind": "MEMBER_SELECT", "startPosition": "1809" }, "startPosition": "1809" }, "endPosition": "1973", "kind": "EXPRESSION_STATEMENT", "startPosition": "1809" }, { "expression": { "expression": { "endPosition": "2016", "kind": "FUNCTION_EXPRESSION", "body": { "endPosition": "2994", "kind": "BLOCK", "statements": [ { "condition": { "leftOperand": { "leftOperand": { "expression": { "endPosition": "2031", "kind": "IDENTIFIER", "name": "tree", "startPosition": "2027" }, "endPosition": "2031", "kind": "LOGICAL_COMPLEMENT", "startPosition": "2026" }, "endPosition": "2057", "kind": "CONDITIONAL_OR", "rightOperand": { "leftOperand": { "expression": { "endPosition": "2046", "kind": "IDENTIFIER", "name": "tree", "startPosition": "2042" }, "endPosition": "2046", "kind": "TYPEOF", "startPosition": "2035" }, "endPosition": "2057", "kind": "NOT_EQUAL_TO", "rightOperand": { "endPosition": "2057", "kind": "STRING_LITERAL", "value": "object", "startPosition": "2051" }, "startPosition": "2035" }, "startPosition": "2026" }, "endPosition": "2092", "kind": "CONDITIONAL_OR", "rightOperand": { "leftOperand": { "endPosition": "2066", "kind": "IDENTIFIER", "name": "tree", "startPosition": "2062" }, "expression": { "endPosition": "2066", "kind": "IDENTIFIER", "name": "tree", "startPosition": "2062" }, "endPosition": "2092", "kind": "INSTANCE_OF", "rightOperand": { "identifier": "Long", "expression": { "identifier": "lang", "expression": { "endPosition": "2082", "kind": "IDENTIFIER", "name": "java", "startPosition": "2078" }, "endPosition": "2087", "kind": "MEMBER_SELECT", "startPosition": "2078" }, "endPosition": "2092", "kind": "MEMBER_SELECT", "startPosition": "2078" }, "type": { "identifier": "Long", "expression": { "identifier": "lang", "expression": { "endPosition": "2082", "kind": "IDENTIFIER", "name": "java", "startPosition": "2078" }, "endPosition": "2087", "kind": "MEMBER_SELECT", "startPosition": "2078" }, "endPosition": "2092", "kind": "MEMBER_SELECT", "startPosition": "2078" }, "startPosition": "2062" }, "startPosition": "2026" }, "endPosition": "2122", "kind": "IF", "startPosition": "2022", "thenStatement": { "endPosition": "2122", "kind": "BLOCK", "statements": [ { "expression": { "endPosition": "2115", "kind": "IDENTIFIER", "name": "tree", "startPosition": "2111" }, "endPosition": "2116", "kind": "RETURN", "startPosition": "2104" } ], "startPosition": "2094" } }, { "endPosition": "2169", "kind": "VARIABLE", "name": "obj", "startPosition": "2132", "initializer": { "endPosition": "2169", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "bindProperties", "expression": { "endPosition": "2144", "kind": "IDENTIFIER", "name": "Object", "startPosition": "2138" }, "endPosition": "2159", "kind": "MEMBER_SELECT", "startPosition": "2138" }, "arguments": [ { "endPosition": "2162", "kind": "OBJECT_LITERAL", "startPosition": "2160", "properties": [] }, { "endPosition": "2168", "kind": "IDENTIFIER", "name": "tree", "startPosition": "2164" } ], "startPosition": "2138" } }, { "endPosition": "2190", "kind": "VARIABLE", "name": "result", "startPosition": "2179", "initializer": { "endPosition": "2190", "kind": "OBJECT_LITERAL", "startPosition": "2188", "properties": [] } }, { "endPosition": "2206", "kind": "VARIABLE", "name": "i", "startPosition": "2205" }, { "expression": { "endPosition": "2213", "kind": "IDENTIFIER", "name": "obj", "startPosition": "2210" }, "endPosition": "2975", "kind": "FOR_IN_LOOP", "forEach": "false", "variable": { "endPosition": "2206", "kind": "IDENTIFIER", "name": "i", "startPosition": "2205" }, "statement": { "endPosition": "2975", "kind": "BLOCK", "statements": [ { "endPosition": "2241", "kind": "VARIABLE", "name": "val", "startPosition": "2229", "initializer": { "expression": { "endPosition": "2238", "kind": "IDENTIFIER", "name": "obj", "startPosition": "2235" }, "endPosition": "2241", "kind": "ARRAY_ACCESS", "index": { "endPosition": "2240", "kind": "IDENTIFIER", "name": "i", "startPosition": "2239" }, "startPosition": "2235" } }, { "condition": { "leftOperand": { "endPosition": "2258", "kind": "IDENTIFIER", "name": "val", "startPosition": "2255" }, "expression": { "endPosition": "2258", "kind": "IDENTIFIER", "name": "val", "startPosition": "2255" }, "endPosition": "2281", "kind": "INSTANCE_OF", "rightOperand": { "identifier": "Tree", "expression": { "endPosition": "2276", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "2270" }, "endPosition": "2281", "kind": "MEMBER_SELECT", "startPosition": "2270" }, "type": { "identifier": "Tree", "expression": { "endPosition": "2276", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "2270" }, "endPosition": "2281", "kind": "MEMBER_SELECT", "startPosition": "2270" }, "startPosition": "2255" }, "elseStatement": { "condition": { "leftOperand": { "endPosition": "2350", "kind": "IDENTIFIER", "name": "val", "startPosition": "2347" }, "expression": { "endPosition": "2350", "kind": "IDENTIFIER", "name": "val", "startPosition": "2347" }, "endPosition": "2373", "kind": "INSTANCE_OF", "rightOperand": { "identifier": "List", "expression": { "endPosition": "2368", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "2362" }, "endPosition": "2373", "kind": "MEMBER_SELECT", "startPosition": "2362" }, "type": { "identifier": "List", "expression": { "endPosition": "2368", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "2362" }, "endPosition": "2373", "kind": "MEMBER_SELECT", "startPosition": "2362" }, "startPosition": "2347" }, "elseStatement": { "endPosition": "2969", "kind": "BLOCK", "statements": [ { "cases": [ { "expression": { "endPosition": "2625", "kind": "STRING_LITERAL", "value": "number", "startPosition": "2619" }, "endPosition": "2627", "kind": "CASE", "statements": [], "startPosition": "2613" }, { "expression": { "endPosition": "2656", "kind": "STRING_LITERAL", "value": "string", "startPosition": "2650" }, "endPosition": "2658", "kind": "CASE", "statements": [], "startPosition": "2644" }, { "expression": { "endPosition": "2688", "kind": "STRING_LITERAL", "value": "boolean", "startPosition": "2681" }, "endPosition": "2762", "kind": "CASE", "statements": [ { "expression": { "expression": { "endPosition": "2734", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "2729", "kind": "IDENTIFIER", "name": "String", "startPosition": "2723" }, "arguments": [ { "endPosition": "2733", "kind": "IDENTIFIER", "name": "val", "startPosition": "2730" } ], "startPosition": "2723" }, "endPosition": "2734", "kind": "ASSIGNMENT", "variable": { "expression": { "endPosition": "2717", "kind": "IDENTIFIER", "name": "result", "startPosition": "2711" }, "endPosition": "2720", "kind": "ARRAY_ACCESS", "index": { "endPosition": "2719", "kind": "IDENTIFIER", "name": "i", "startPosition": "2718" }, "startPosition": "2711" }, "startPosition": "2711" }, "endPosition": "2734", "kind": "EXPRESSION_STATEMENT", "startPosition": "2711" }, { "endPosition": "2762", "kind": "BREAK", "startPosition": "2756" } ], "startPosition": "2675" }, { "endPosition": "2945", "kind": "CASE", "statements": [ { "condition": { "leftOperand": { "leftOperand": { "endPosition": "2815", "kind": "IDENTIFIER", "name": "val", "startPosition": "2812" }, "expression": { "endPosition": "2815", "kind": "IDENTIFIER", "name": "val", "startPosition": "2812" }, "endPosition": "2841", "kind": "INSTANCE_OF", "rightOperand": { "identifier": "Long", "expression": { "identifier": "lang", "expression": { "endPosition": "2831", "kind": "IDENTIFIER", "name": "java", "startPosition": "2827" }, "endPosition": "2836", "kind": "MEMBER_SELECT", "startPosition": "2827" }, "endPosition": "2841", "kind": "MEMBER_SELECT", "startPosition": "2827" }, "type": { "identifier": "Long", "expression": { "identifier": "lang", "expression": { "endPosition": "2831", "kind": "IDENTIFIER", "name": "java", "startPosition": "2827" }, "endPosition": "2836", "kind": "MEMBER_SELECT", "startPosition": "2827" }, "endPosition": "2841", "kind": "MEMBER_SELECT", "startPosition": "2827" }, "startPosition": "2812" }, "endPosition": "2871", "kind": "CONDITIONAL_OR", "rightOperand": { "leftOperand": { "endPosition": "2848", "kind": "IDENTIFIER", "name": "val", "startPosition": "2845" }, "expression": { "endPosition": "2848", "kind": "IDENTIFIER", "name": "val", "startPosition": "2845" }, "endPosition": "2871", "kind": "INSTANCE_OF", "rightOperand": { "identifier": "Enum", "expression": { "endPosition": "2866", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "2860" }, "endPosition": "2871", "kind": "MEMBER_SELECT", "startPosition": "2860" }, "type": { "identifier": "Enum", "expression": { "endPosition": "2866", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "2860" }, "endPosition": "2871", "kind": "MEMBER_SELECT", "startPosition": "2860" }, "startPosition": "2845" }, "startPosition": "2812" }, "endPosition": "2945", "kind": "IF", "startPosition": "2808", "thenStatement": { "endPosition": "2945", "kind": "BLOCK", "statements": [ { "expression": { "expression": { "endPosition": "2922", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "2917", "kind": "IDENTIFIER", "name": "String", "startPosition": "2911" }, "arguments": [ { "endPosition": "2921", "kind": "IDENTIFIER", "name": "val", "startPosition": "2918" } ], "startPosition": "2911" }, "endPosition": "2922", "kind": "ASSIGNMENT", "variable": { "expression": { "endPosition": "2905", "kind": "IDENTIFIER", "name": "result", "startPosition": "2899" }, "endPosition": "2908", "kind": "ARRAY_ACCESS", "index": { "endPosition": "2907", "kind": "IDENTIFIER", "name": "i", "startPosition": "2906" }, "startPosition": "2899" }, "startPosition": "2899" }, "endPosition": "2922", "kind": "EXPRESSION_STATEMENT", "startPosition": "2899" } ], "startPosition": "2873" } } ], "startPosition": "2779" } ], "expression": { "expression": { "endPosition": "2593", "kind": "IDENTIFIER", "name": "val", "startPosition": "2590" }, "endPosition": "2593", "kind": "TYPEOF", "startPosition": "2583" }, "endPosition": "2959", "kind": "SWITCH", "startPosition": "2575" } ], "startPosition": "2561" }, "endPosition": "2969", "kind": "IF", "startPosition": "2343", "thenStatement": { "endPosition": "2555", "kind": "BLOCK", "statements": [ { "endPosition": "2420", "kind": "VARIABLE", "name": "arr", "startPosition": "2393", "initializer": { "constructorExpression": { "endPosition": "2420", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "2408", "kind": "IDENTIFIER", "name": "Array", "startPosition": "2403" }, "arguments": [ { "endPosition": "2419", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "size", "expression": { "endPosition": "2412", "kind": "IDENTIFIER", "name": "val", "startPosition": "2409" }, "endPosition": "2417", "kind": "MEMBER_SELECT", "startPosition": "2409" }, "arguments": [], "startPosition": "2409" } ], "startPosition": "2403" }, "endPosition": "2420", "kind": "NEW", "startPosition": "2399" } }, { "endPosition": "2444", "kind": "VARIABLE", "name": "j", "startPosition": "2443" }, { "expression": { "endPosition": "2451", "kind": "IDENTIFIER", "name": "val", "startPosition": "2448" }, "endPosition": "2515", "kind": "FOR_IN_LOOP", "forEach": "false", "variable": { "endPosition": "2444", "kind": "IDENTIFIER", "name": "j", "startPosition": "2443" }, "statement": { "endPosition": "2515", "kind": "BLOCK", "statements": [ { "expression": { "expression": { "endPosition": "2500", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "convert", "expression": { "endPosition": "2484", "kind": "IDENTIFIER", "name": "this", "startPosition": "2480" }, "endPosition": "2492", "kind": "MEMBER_SELECT", "startPosition": "2480" }, "arguments": [ { "expression": { "endPosition": "2496", "kind": "IDENTIFIER", "name": "val", "startPosition": "2493" }, "endPosition": "2499", "kind": "ARRAY_ACCESS", "index": { "endPosition": "2498", "kind": "IDENTIFIER", "name": "j", "startPosition": "2497" }, "startPosition": "2493" } ], "startPosition": "2480" }, "endPosition": "2500", "kind": "ASSIGNMENT", "variable": { "expression": { "endPosition": "2474", "kind": "IDENTIFIER", "name": "arr", "startPosition": "2471" }, "endPosition": "2477", "kind": "ARRAY_ACCESS", "index": { "endPosition": "2476", "kind": "IDENTIFIER", "name": "j", "startPosition": "2475" }, "startPosition": "2471" }, "startPosition": "2471" }, "endPosition": "2500", "kind": "EXPRESSION_STATEMENT", "startPosition": "2471" } ], "startPosition": "2453" }, "startPosition": "2434" }, { "expression": { "expression": { "endPosition": "2544", "kind": "IDENTIFIER", "name": "arr", "startPosition": "2541" }, "endPosition": "2544", "kind": "ASSIGNMENT", "variable": { "expression": { "endPosition": "2535", "kind": "IDENTIFIER", "name": "result", "startPosition": "2529" }, "endPosition": "2538", "kind": "ARRAY_ACCESS", "index": { "endPosition": "2537", "kind": "IDENTIFIER", "name": "i", "startPosition": "2536" }, "startPosition": "2529" }, "startPosition": "2529" }, "endPosition": "2544", "kind": "EXPRESSION_STATEMENT", "startPosition": "2529" } ], "startPosition": "2375" } }, "endPosition": "2969", "kind": "IF", "startPosition": "2251", "thenStatement": { "endPosition": "2337", "kind": "BLOCK", "statements": [ { "expression": { "expression": { "endPosition": "2326", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "convert", "expression": { "endPosition": "2313", "kind": "IDENTIFIER", "name": "this", "startPosition": "2309" }, "endPosition": "2321", "kind": "MEMBER_SELECT", "startPosition": "2309" }, "arguments": [ { "endPosition": "2325", "kind": "IDENTIFIER", "name": "val", "startPosition": "2322" } ], "startPosition": "2309" }, "endPosition": "2326", "kind": "ASSIGNMENT", "variable": { "expression": { "endPosition": "2303", "kind": "IDENTIFIER", "name": "result", "startPosition": "2297" }, "endPosition": "2306", "kind": "ARRAY_ACCESS", "index": { "endPosition": "2305", "kind": "IDENTIFIER", "name": "i", "startPosition": "2304" }, "startPosition": "2297" }, "startPosition": "2297" }, "endPosition": "2326", "kind": "EXPRESSION_STATEMENT", "startPosition": "2297" } ], "startPosition": "2283" } } ], "startPosition": "2215" }, "startPosition": "2196" }, { "expression": { "endPosition": "2993", "kind": "IDENTIFIER", "name": "result", "startPosition": "2987" }, "endPosition": "2994", "kind": "RETURN", "startPosition": "2980" } ], "startPosition": "2016" }, "strict": "false", "startPosition": "2016", "parameters": [ { "endPosition": "2014", "kind": "IDENTIFIER", "name": "tree", "startPosition": "2010" } ] }, "endPosition": "2016", "kind": "ASSIGNMENT", "variable": { "identifier": "convert", "expression": { "identifier": "prototype", "expression": { "endPosition": "1980", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "1974" }, "endPosition": "1990", "kind": "MEMBER_SELECT", "startPosition": "1974" }, "endPosition": "1998", "kind": "MEMBER_SELECT", "startPosition": "1974" }, "startPosition": "1974" }, "endPosition": "2996", "kind": "EXPRESSION_STATEMENT", "startPosition": "1974" }, { "endPosition": "3767", "kind": "FUNCTION", "name": "processFiles", "body": { "endPosition": "3724", "kind": "BLOCK", "statements": [ { "endPosition": "3070", "kind": "VARIABLE", "name": "File", "startPosition": "3038", "initializer": { "endPosition": "3070", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "type", "expression": { "endPosition": "3049", "kind": "IDENTIFIER", "name": "Java", "startPosition": "3045" }, "endPosition": "3054", "kind": "MEMBER_SELECT", "startPosition": "3045" }, "arguments": [ { "endPosition": "3068", "kind": "STRING_LITERAL", "value": "java.io.File", "startPosition": "3056" } ], "startPosition": "3045" } }, { "endPosition": "3126", "kind": "VARIABLE", "name": "files", "startPosition": "3080", "initializer": { "endPosition": "3126", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "listFiles", "expression": { "constructorExpression": { "endPosition": "3114", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "3096", "kind": "IDENTIFIER", "name": "File", "startPosition": "3092" }, "arguments": [ { "leftOperand": { "endPosition": "3104", "kind": "IDENTIFIER", "name": "__DIR__", "startPosition": "3097" }, "endPosition": "3113", "kind": "PLUS", "rightOperand": { "endPosition": "3113", "kind": "IDENTIFIER", "name": "subdir", "startPosition": "3107" }, "startPosition": "3097" } ], "startPosition": "3092" }, "endPosition": "3114", "kind": "NEW", "startPosition": "3088" }, "endPosition": "3124", "kind": "MEMBER_SELECT", "startPosition": "3088" }, "arguments": [], "startPosition": "3088" } }, { "expression": { "endPosition": "3160", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "sort", "expression": { "identifier": "Arrays", "expression": { "identifier": "util", "expression": { "endPosition": "3136", "kind": "IDENTIFIER", "name": "java", "startPosition": "3132" }, "endPosition": "3141", "kind": "MEMBER_SELECT", "startPosition": "3132" }, "endPosition": "3148", "kind": "MEMBER_SELECT", "startPosition": "3132" }, "endPosition": "3153", "kind": "MEMBER_SELECT", "startPosition": "3132" }, "arguments": [ { "endPosition": "3159", "kind": "IDENTIFIER", "name": "files", "startPosition": "3154" } ], "startPosition": "3132" }, "endPosition": "3160", "kind": "EXPRESSION_STATEMENT", "startPosition": "3132" }, { "endPosition": "3184", "kind": "VARIABLE", "name": "file", "startPosition": "3180" }, { "expression": { "endPosition": "3193", "kind": "IDENTIFIER", "name": "files", "startPosition": "3188" }, "endPosition": "3724", "kind": "FOR_IN_LOOP", "forEach": "true", "variable": { "endPosition": "3184", "kind": "IDENTIFIER", "name": "file", "startPosition": "3180" }, "statement": { "endPosition": "3724", "kind": "BLOCK", "statements": [ { "condition": { "endPosition": "3234", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "endsWith", "expression": { "identifier": "name", "expression": { "endPosition": "3213", "kind": "IDENTIFIER", "name": "file", "startPosition": "3209" }, "endPosition": "3218", "kind": "MEMBER_SELECT", "startPosition": "3209" }, "endPosition": "3227", "kind": "MEMBER_SELECT", "startPosition": "3209" }, "arguments": [ { "endPosition": "3232", "kind": "STRING_LITERAL", "value": ".js", "startPosition": "3229" } ], "startPosition": "3209" }, "endPosition": "3718", "kind": "IF", "startPosition": "3205", "thenStatement": { "endPosition": "3718", "kind": "BLOCK", "statements": [ { "endPosition": "3278", "kind": "VARIABLE", "name": "script", "startPosition": "3254", "initializer": { "endPosition": "3278", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "3272", "kind": "IDENTIFIER", "name": "readFully", "startPosition": "3263" }, "arguments": [ { "endPosition": "3277", "kind": "IDENTIFIER", "name": "file", "startPosition": "3273" } ], "startPosition": "3263" } }, { "endPosition": "3317", "kind": "VARIABLE", "name": "parser", "startPosition": "3296", "initializer": { "constructorExpression": { "endPosition": "3317", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "3315", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "3309" }, "arguments": [], "startPosition": "3309" }, "endPosition": "3317", "kind": "NEW", "startPosition": "3305" } }, { "endPosition": "3578", "kind": "VARIABLE", "name": "tree", "startPosition": "3335", "initializer": { "endPosition": "3578", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "parse", "expression": { "endPosition": "3348", "kind": "IDENTIFIER", "name": "parser", "startPosition": "3342" }, "endPosition": "3354", "kind": "MEMBER_SELECT", "startPosition": "3342" }, "arguments": [ { "leftOperand": { "leftOperand": { "endPosition": "3361", "kind": "IDENTIFIER", "name": "subdir", "startPosition": "3355" }, "endPosition": "3366", "kind": "PLUS", "rightOperand": { "endPosition": "3366", "kind": "STRING_LITERAL", "value": "/", "startPosition": "3365" }, "startPosition": "3355" }, "endPosition": "3379", "kind": "PLUS", "rightOperand": { "identifier": "name", "expression": { "endPosition": "3374", "kind": "IDENTIFIER", "name": "file", "startPosition": "3370" }, "endPosition": "3379", "kind": "MEMBER_SELECT", "startPosition": "3370" }, "startPosition": "3355" }, { "endPosition": "3387", "kind": "IDENTIFIER", "name": "script", "startPosition": "3381" }, { "endPosition": "3426", "kind": "FUNCTION_EXPRESSION", "body": { "endPosition": "3559", "kind": "BLOCK", "statements": [ { "expression": { "endPosition": "3526", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "3453", "kind": "IDENTIFIER", "name": "print", "startPosition": "3448" }, "arguments": [ { "endPosition": "3525", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "replace", "expression": { "endPosition": "3505", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "stringify", "expression": { "endPosition": "3458", "kind": "IDENTIFIER", "name": "JSON", "startPosition": "3454" }, "endPosition": "3468", "kind": "MEMBER_SELECT", "startPosition": "3454" }, "arguments": [ { "endPosition": "3495", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "convert", "expression": { "endPosition": "3475", "kind": "IDENTIFIER", "name": "parser", "startPosition": "3469" }, "endPosition": "3483", "kind": "MEMBER_SELECT", "startPosition": "3469" }, "arguments": [ { "endPosition": "3494", "kind": "IDENTIFIER", "name": "diagnostic", "startPosition": "3484" } ], "startPosition": "3469" }, { "endPosition": "3501", "kind": "NULL_LITERAL", "startPosition": "3497" }, { "endPosition": "3504", "kind": "NUMBER_LITERAL", "value": "2", "startPosition": "3503" } ], "startPosition": "3454" }, "endPosition": "3513", "kind": "MEMBER_SELECT", "startPosition": "3454" }, "arguments": [ { "endPosition": "3520", "kind": "REGEXP_LITERAL", "options": "g", "pattern": "\\\\r", "startPosition": "3514" }, { "endPosition": "3523", "kind": "STRING_LITERAL", "value": "", "startPosition": "3523" } ], "startPosition": "3513" } ], "startPosition": "3448" }, "endPosition": "3526", "kind": "EXPRESSION_STATEMENT", "startPosition": "3448" }, { "expression": { "endPosition": "3558", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "3553", "kind": "IDENTIFIER", "name": "print", "startPosition": "3548" }, "arguments": [ { "endPosition": "3556", "kind": "STRING_LITERAL", "value": ",", "startPosition": "3555" } ], "startPosition": "3548" }, "endPosition": "3558", "kind": "EXPRESSION_STATEMENT", "startPosition": "3548" } ], "startPosition": "3426" }, "strict": "false", "startPosition": "3426", "parameters": [ { "endPosition": "3424", "kind": "IDENTIFIER", "name": "diagnostic", "startPosition": "3414" } ] } ], "startPosition": "3342" } }, { "condition": { "leftOperand": { "endPosition": "3601", "kind": "IDENTIFIER", "name": "tree", "startPosition": "3597" }, "endPosition": "3609", "kind": "NOT_EQUAL_TO", "rightOperand": { "endPosition": "3609", "kind": "NULL_LITERAL", "startPosition": "3605" }, "startPosition": "3597" }, "endPosition": "3708", "kind": "IF", "startPosition": "3593", "thenStatement": { "endPosition": "3708", "kind": "BLOCK", "statements": [ { "expression": { "endPosition": "3665", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "3634", "kind": "IDENTIFIER", "name": "print", "startPosition": "3629" }, "arguments": [ { "endPosition": "3664", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "stringify", "expression": { "endPosition": "3639", "kind": "IDENTIFIER", "name": "JSON", "startPosition": "3635" }, "endPosition": "3649", "kind": "MEMBER_SELECT", "startPosition": "3635" }, "arguments": [ { "endPosition": "3654", "kind": "IDENTIFIER", "name": "tree", "startPosition": "3650" }, { "endPosition": "3660", "kind": "NULL_LITERAL", "startPosition": "3656" }, { "endPosition": "3663", "kind": "NUMBER_LITERAL", "value": "2", "startPosition": "3662" } ], "startPosition": "3635" } ], "startPosition": "3629" }, "endPosition": "3665", "kind": "EXPRESSION_STATEMENT", "startPosition": "3629" }, { "expression": { "endPosition": "3693", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "3688", "kind": "IDENTIFIER", "name": "print", "startPosition": "3683" }, "arguments": [ { "endPosition": "3691", "kind": "STRING_LITERAL", "value": ",", "startPosition": "3690" } ], "startPosition": "3683" }, "endPosition": "3693", "kind": "EXPRESSION_STATEMENT", "startPosition": "3683" } ], "startPosition": "3611" } } ], "startPosition": "3236" } } ], "startPosition": "3195" }, "startPosition": "3166" } ], "startPosition": "3028" }, "strict": "false", "startPosition": "2998", "parameters": [ { "endPosition": "3026", "kind": "IDENTIFIER", "name": "subdir", "startPosition": "3020" } ] }, { "endPosition": "4070", "kind": "FUNCTION", "name": "main", "body": { "endPosition": "4068", "kind": "BLOCK", "statements": [ { "expression": { "endPosition": "3800", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "3795", "kind": "IDENTIFIER", "name": "print", "startPosition": "3790" }, "arguments": [ { "endPosition": "3798", "kind": "STRING_LITERAL", "value": "[", "startPosition": "3797" } ], "startPosition": "3790" }, "endPosition": "3800", "kind": "EXPRESSION_STATEMENT", "startPosition": "3790" }, { "expression": { "endPosition": "3834", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "3819", "kind": "IDENTIFIER", "name": "processFiles", "startPosition": "3807" }, "arguments": [ { "endPosition": "3832", "kind": "STRING_LITERAL", "value": "parsertests", "startPosition": "3821" } ], "startPosition": "3807" }, "endPosition": "3834", "kind": "EXPRESSION_STATEMENT", "startPosition": "3807" }, { "expression": { "endPosition": "3875", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "3852", "kind": "IDENTIFIER", "name": "processFiles", "startPosition": "3840" }, "arguments": [ { "endPosition": "3873", "kind": "STRING_LITERAL", "value": "parsernegativetests", "startPosition": "3854" } ], "startPosition": "3840" }, "endPosition": "3875", "kind": "EXPRESSION_STATEMENT", "startPosition": "3840" }, { "endPosition": "3944", "kind": "VARIABLE", "name": "script", "startPosition": "3916", "initializer": { "endPosition": "3944", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "3934", "kind": "IDENTIFIER", "name": "readFully", "startPosition": "3925" }, "arguments": [ { "endPosition": "3943", "kind": "IDENTIFIER", "name": "__FILE__", "startPosition": "3935" } ], "startPosition": "3925" } }, { "endPosition": "4009", "kind": "VARIABLE", "name": "tree", "startPosition": "3954", "initializer": { "endPosition": "4009", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "parse", "expression": { "constructorExpression": { "endPosition": "3973", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "3971", "kind": "IDENTIFIER", "name": "Parser", "startPosition": "3965" }, "arguments": [], "startPosition": "3965" }, "endPosition": "3973", "kind": "NEW", "startPosition": "3961" }, "endPosition": "3979", "kind": "MEMBER_SELECT", "startPosition": "3961" }, "arguments": [ { "endPosition": "3993", "kind": "STRING_LITERAL", "value": "parserapi.js", "startPosition": "3981" }, { "endPosition": "4002", "kind": "IDENTIFIER", "name": "script", "startPosition": "3996" }, { "endPosition": "4008", "kind": "NULL_LITERAL", "startPosition": "4004" } ], "startPosition": "3961" } }, { "expression": { "endPosition": "4051", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "4020", "kind": "IDENTIFIER", "name": "print", "startPosition": "4015" }, "arguments": [ { "endPosition": "4050", "kind": "FUNCTION_INVOCATION", "functionSelect": { "identifier": "stringify", "expression": { "endPosition": "4025", "kind": "IDENTIFIER", "name": "JSON", "startPosition": "4021" }, "endPosition": "4035", "kind": "MEMBER_SELECT", "startPosition": "4021" }, "arguments": [ { "endPosition": "4040", "kind": "IDENTIFIER", "name": "tree", "startPosition": "4036" }, { "endPosition": "4046", "kind": "NULL_LITERAL", "startPosition": "4042" }, { "endPosition": "4049", "kind": "NUMBER_LITERAL", "value": "2", "startPosition": "4048" } ], "startPosition": "4021" } ], "startPosition": "4015" }, "endPosition": "4051", "kind": "EXPRESSION_STATEMENT", "startPosition": "4015" }, { "expression": { "endPosition": "4067", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "4062", "kind": "IDENTIFIER", "name": "print", "startPosition": "4057" }, "arguments": [ { "endPosition": "4065", "kind": "STRING_LITERAL", "value": "]", "startPosition": "4064" } ], "startPosition": "4057" }, "endPosition": "4067", "kind": "EXPRESSION_STATEMENT", "startPosition": "4057" } ], "startPosition": "3784" }, "strict": "false", "startPosition": "3768", "parameters": [] }, { "expression": { "endPosition": "4078", "kind": "FUNCTION_INVOCATION", "functionSelect": { "endPosition": "4076", "kind": "IDENTIFIER", "name": "main", "startPosition": "4072" }, "arguments": [], "startPosition": "4072" }, "endPosition": "4078", "kind": "EXPRESSION_STATEMENT", "startPosition": "4072" } ], "sourceName": "parserapi.js", "strict": "false", "startPosition": "1136" } ]