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