📄 asc.output
字号:
Useless nonterminals: program package_definition package_name_optTerminals which are not used: PACKAGEUseless rules:#298 program: directives;#299 program: package_definition program;#300 package_definition: PACKAGE package_name_opt block;#301 package_name_opt:;#302 package_name_opt: package_name;State 259 contains 1 shift/reduce conflict.State 331 contains 1 shift/reduce conflict.State 358 contains 7 reduce/reduce conflicts.State 409 contains 1 shift/reduce conflict.Grammar Number, Line, Rule 1 163 start -> expression_statement 2 173 simple_qualified_identifier -> IDENTIFIER 3 177 simple_qualified_identifier -> IDENTIFIER SCOPE IDENTIFIER 4 180 simple_qualified_identifier -> reserved_namespace SCOPE IDENTIFIER 5 186 expression_qualified_identifier -> paren_expression SCOPE IDENTIFIER 6 193 qualified_identifier -> simple_qualified_identifier 7 197 qualified_identifier -> expression_qualified_identifier 8 203 primary_expression -> NULL_LITERAL 9 207 primary_expression -> TRUE 10 210 primary_expression -> FALSE 11 213 primary_expression -> NUMBER 12 216 primary_expression -> STRING 13 219 primary_expression -> THIS 14 222 primary_expression -> REGULAR_EXPRESSION 15 225 primary_expression -> reserved_namespace 16 228 primary_expression -> paren_list_expression 17 231 primary_expression -> array_literal 18 234 primary_expression -> object_literal 19 237 primary_expression -> function_expression 20 243 reserved_namespace -> PUBLIC 21 247 reserved_namespace -> PRIVATE 22 253 paren_expression -> '(' assignment_expression ')' 23 261 paren_list_expression -> paren_expression 24 265 paren_list_expression -> '(' list_expression ',' assignment_expression ')' 25 272 function_expression -> FUNCTION function_common 26 276 function_expression -> FUNCTION IDENTIFIER function_common 27 282 object_literal -> '{' field_list '}' 28 286 object_literal -> '{' '}' 29 294 field_list -> nonempty_field_list 30 301 nonempty_field_list -> literal_field 31 305 nonempty_field_list -> literal_field ',' nonempty_field_list 32 311 literal_field -> field_name ':' assignment_expression 33 318 field_name -> qualified_identifier 34 322 field_name -> STRING 35 325 field_name -> NUMBER 36 328 field_name -> paren_expression 37 335 array_literal -> '[' ']' 38 339 array_literal -> '[' comma_list ']' 39 342 array_literal -> '[' element_list ']' 40 345 array_literal -> '[' element_list comma_list ']' 41 348 array_literal -> '[' comma_list element_list comma_list ']' 42 354 element_list -> literal_element 43 358 element_list -> element_list comma_list literal_element 44 364 comma_list -> ',' 45 368 comma_list -> comma_list ',' 46 374 literal_element -> assignment_expression 47 382 super_expression -> SUPER 48 386 super_expression -> SUPER paren_expression 49 392 postfix_expression -> attribute_expression 50 396 postfix_expression -> full_postfix_expression 51 399 postfix_expression -> short_new_expression 52 405 attribute_expression -> simple_qualified_identifier 53 409 attribute_expression -> attribute_expression property_operator 54 412 attribute_expression -> attribute_expression arguments 55 418 full_postfix_expression -> primary_expression 56 422 full_postfix_expression -> expression_qualified_identifier 57 425 full_postfix_expression -> full_new_expression 58 428 full_postfix_expression -> full_postfix_expression property_operator 59 431 full_postfix_expression -> super_expression property_operator 60 434 full_postfix_expression -> full_postfix_expression arguments 61 437 full_postfix_expression -> postfix_expression INCREMENT 62 440 full_postfix_expression -> postfix_expression DECREMENT 63 446 full_new_expression -> NEW full_new_subexpression arguments 64 453 full_new_subexpression -> primary_expression 65 457 full_new_subexpression -> qualified_identifier 66 460 full_new_subexpression -> full_new_expression 67 463 full_new_subexpression -> full_new_subexpression property_operator 68 466 full_new_subexpression -> super_expression property_operator 69 472 short_new_expression -> NEW short_new_subexpression 70 479 short_new_subexpression -> full_new_subexpression 71 483 short_new_subexpression -> short_new_expression 72 491 property_operator -> '.' qualified_identifier 73 495 property_operator -> brackets 74 501 brackets -> '[' ']' 75 505 brackets -> '[' list_expression ']' 76 508 brackets -> '[' expressions_with_rest ']' 77 514 arguments -> '(' ')' 78 518 arguments -> paren_list_expression 79 521 arguments -> '(' expressions_with_rest ')' 80 527 expressions_with_rest -> rest_expression 81 531 expressions_with_rest -> list_expression ',' rest_expression 82 537 rest_expression -> ELIPSIS assignment_expression 83 545 unary_expression -> postfix_expression 84 549 unary_expression -> DELETE postfix_expression 85 552 unary_expression -> VOID unary_expression 86 555 unary_expression -> TYPEOF unary_expression 87 558 unary_expression -> INCREMENT postfix_expression 88 561 unary_expression -> DECREMENT postfix_expression 89 564 unary_expression -> '+' unary_expression 90 567 unary_expression -> '-' unary_expression 91 570 unary_expression -> '-' NEGATED_MIN_LONG 92 573 unary_expression -> '~' unary_expression 93 576 unary_expression -> '!' unary_expression 94 584 power_expression -> unary_expression 95 588 power_expression -> power_expression POWER unary_expression 96 596 multiplicative_expression -> power_expression 97 600 multiplicative_expression -> multiplicative_expression '*' power_expression 98 603 multiplicative_expression -> multiplicative_expression '/' power_expression 99 606 multiplicative_expression -> multiplicative_expression '%' power_expression 100 614 additive_expression -> multiplicative_expression 101 618 additive_expression -> additive_expression '+' multiplicative_expression 102 621 additive_expression -> additive_expression '-' multiplicative_expression 103 627 shift_expression -> additive_expression 104 631 shift_expression -> shift_expression SHIFT_LEFT additive_expression 105 634 shift_expression -> shift_expression SHIFT_RIGHT additive_expression 106 637 shift_expression -> shift_expression SHIFT_RIGHT_UNSIGNED additive_expression 107 640 shift_expression -> shift_expression ROTATE_LEFT additive_expression 108 643 shift_expression -> shift_expression ROTATE_RIGHT additive_expression 109 650 relational_expression -> shift_expression 110 654 relational_expression -> relational_expression '<' shift_expression 111 657 relational_expression -> relational_expression '>' shift_expression 112 660 relational_expression -> relational_expression LESS_EQUAL shift_expression 113 663 relational_expression -> relational_expression GREATER_EQUAL shift_expression 114 666 relational_expression -> relational_expression IS shift_expression 115 669 relational_expression -> relational_expression AS shift_expression 116 672 relational_expression -> relational_expression IN shift_expression 117 675 relational_expression -> relational_expression INSTANCEOF shift_expression 118 682 equality_expression -> relational_expression 119 686 equality_expression -> equality_expression EQUAL relational_expression 120 689 equality_expression -> equality_expression NOT_EQUAL relational_expression 121 692 equality_expression -> equality_expression STRICTLY_EQUAL relational_expression 122 695 equality_expression -> equality_expression STRICTLY_NOT_EQUAL relational_expression 123 703 bitwise_and_expression -> equality_expression 124 707 bitwise_and_expression -> bitwise_and_expression '&' equality_expression 125 713 bitwise_xor_expression -> bitwise_and_expression 126 717 bitwise_xor_expression -> bitwise_xor_expression '^' bitwise_and_expression 127 723 bitwise_or_expression -> bitwise_xor_expression 128 727 bitwise_or_expression -> bitwise_or_expression '|' bitwise_xor_expression 129 735 logical_and_expression -> bitwise_or_expression 130 739 logical_and_expression -> logical_and_expression LOGICAL_AND bitwise_or_expression 131 746 logical_xor_expression -> logical_and_expression 132 750 logical_xor_expression -> logical_xor_expression LOGICAL_XOR logical_and_expression 133 757 logical_or_expression -> logical_xor_expression 134 761 logical_or_expression -> logical_or_expression LOGICAL_OR logical_xor_expression 135 768 conditional_expression -> logical_or_expression 136 772 conditional_expression -> logical_or_expression '?' assignment_expression ':' assignment_expression 137 779 non_assignment_expression -> logical_or_expression 138 783 non_assignment_expression -> logical_or_expression '?' non_assignment_expression ':' non_assignment_expression 139 792 assignment_expression -> conditional_expression 140 796 assignment_expression -> postfix_expression ASSIGNMENT assignment_expression 141 802 list_expression -> assignment_expression 142 806 list_expression -> list_expression ',' assignment_expression 143 812 type_expression -> non_assignment_expression 144 821 statement -> expression_statement ';' 145 826 statement -> super_statement ';' 146 829 statement -> block 147 832 statement -> labeled_statement 148 835 statement -> goto_statement 149 838 statement -> if_statement 150 841 statement -> switch_statement 151 844 statement -> do_statement ';' 152 847 statement -> while_statement 153 850 statement -> for_statement 154 853 statement -> with_statement 155 856 statement -> continue_statement ';' 156 859 statement -> break_statement ';' 157 862 statement -> return_statement ';' 158 865 statement -> throw_statement ';' 159 868 statement -> try_statement 160 871 statement -> catch_statement 161 874 statement -> finally_statement 162 880 substatement -> empty_statement 163 884 substatement -> statement 164 887 substatement -> simple_variable_definition ';' 165 890 substatement -> attributes '{' '}' 166 893 substatement -> attributes '{' substatement_list '}' 167 899 substatement_list -> substatement 168 903 substatement_list -> substatement_list substatement 169 914 empty_statement -> ';' 170 922 expression_statement -> list_expression 171 930 super_statement -> SUPER arguments 172 937 block -> '{' directives '}' 173 941 block -> '{' '}' 174 949 labeled_statement -> IDENTIFIER ':' substatement 175 957 goto_statement -> GOTO IDENTIFIER 176 966 if_statement -> IF paren_list_expression substatement 177 970 if_statement -> IF paren_list_expression substatement ELSE substatement 178 982 switch_statement -> SWITCH paren_list_expression '{' case_elements '}' 179 990 case_elements -> /* empty */ 180 994 case_elements -> case_label 181 997 case_elements -> case_label case_elements_prefix case_element 182 1003 case_elements_prefix -> /* empty */ 183 1007 case_elements_prefix -> case_elements_prefix case_element 184 1013 case_element -> directive 185 1017 case_element -> case_label 186 1023 case_label -> CASE list_expression ':' 187 1027 case_label -> DEFAULT ':' 188 1034 do_statement -> DO substatement WHILE paren_list_expression 189 1042 while_statement -> WHILE paren_list_expression substatement 190 1051 for_statement -> FOR '(' for_initializer ';' optional_expression ';' optional_expression ')' substatement 191 1055 for_statement -> FOR '(' for_in_binding FOR_IN list_expression ')' substatement 192 1061 for_initializer -> /* empty */ 193 1065 for_initializer -> list_expression 194 1068 for_initializer -> variable_definition 195 1071 for_initializer -> attributes variable_definition 196 1077 for_in_binding -> postfix_expression 197 1081 for_in_binding -> variable_definition_kind variable_binding 198 1084 for_in_binding -> attributes variable_definition_kind variable_binding 199 1090 optional_expression -> list_expression 200 1094 optional_expression -> /* empty */ 201 1101 with_statement -> WITH paren_list_expression substatement 202 1109 continue_statement -> CONTINUE 203 1113 continue_statement -> CONTINUE IDENTIFIER 204 1120 break_statement -> BREAK 205 1124 break_statement -> BREAK IDENTIFIER 206 1132 return_statement -> RETURN 207 1136 return_statement -> RETURN list_expression 208 1144 throw_statement -> THROW list_expression 209 1152 try_statement -> TRY block 210 1160 catch_statement -> CATCH '(' parameter ')' block 211 1168 finally_statement -> FINALLY block 212 1176 directive -> empty_statement 213 1180 directive -> statement 214 1183 directive -> annotatable_directive 215 1186 directive -> attributes annotatable_directive 216 1189 directive -> attributes block 217 1192 directive -> pragma ';' 218 1199 annotatable_directive -> variable_definition ';' 219 1203 annotatable_directive -> function_definition 220 1206 annotatable_directive -> class_definition 221 1209 annotatable_directive -> interface_definition 222 1212 annotatable_directive -> namespace_definition ';' 223 1215 annotatable_directive -> import_directive ';' 224 1218 annotatable_directive -> use_directive ';' 225 1225 directives -> directive 226 1229 directives -> directives directive 227 1237 attributes -> attribute 228 1241 attributes -> attribute_combination 229 1249 attribute_combination -> attribute attributes 230 1257 attribute -> attribute_expression 231 1261 attribute -> TRUE 232 1264 attribute -> FALSE 233 1267 attribute -> reserved_namespace 234 1274 use_directive -> USE NAMESPACE paren_list_expression 235 1282 import_directive -> IMPORT package_name 236 1286 import_directive -> IMPORT IDENTIFIER '=' package_name 237 1294 pragma -> USE pragma_items 238 1301 pragma_items -> pragma_item 239 1305 pragma_items -> pragma_items ',' pragma_item 240 1311 pragma_item -> pragma_expr 241 1315 pragma_item -> pragma_expr '?' 242 1321 pragma_expr -> IDENTIFIER 243 1325 pragma_expr -> IDENTIFIER '(' pragma_argument ')' 244 1331 pragma_argument -> TRUE 245 1335 pragma_argument -> FALSE 246 1338 pragma_argument -> NUMBER 247 1341 pragma_argument -> '-' NUMBER 248 1344 pragma_argument -> '-' NEGATED_MIN_LONG 249 1347 pragma_argument -> STRING 250 1356 variable_definition -> variable_definition_kind variable_binding_list 251 1363 variable_definition_kind -> VAR 252 1367 variable_definition_kind -> CONST 253 1373 variable_binding_list -> variable_binding 254 1377 variable_binding_list -> variable_binding_list ',' variable_binding 255 1383 variable_binding -> typed_identifier 256 1387 variable_binding -> typed_identifier variable_initialisation 257 1393 variable_initialisation -> '=' variable_initializer 258 1400 variable_initializer -> assignment_expression 259 1404 variable_initializer -> attribute_combination 260 1410 typed_identifier -> IDENTIFIER 261 1414 typed_identifier -> IDENTIFIER ':' type_expression 262 1421 simple_variable_definition -> VAR untyped_variable_binding_list 263 1428 untyped_variable_binding_list -> untyped_variable_binding 264 1432 untyped_variable_binding_list -> untyped_variable_binding_list ',' untyped_variable_binding 265 1439 untyped_variable_binding -> IDENTIFIER 266 1443 untyped_variable_binding -> IDENTIFIER variable_initialisation 267 1451 function_definition -> FUNCTION function_name function_common 268 1459 function_name -> IDENTIFIER 269 1463 function_name -> IDENTIFIER IDENTIFIER 270 1466 function_name -> STRING 271 1472 function_common -> '(' parameters ')' block 272 1476 function_common -> '(' parameters ')' result block 273 1483 parameters -> /* empty */ 274 1487 parameters -> nonempty_parameters 275 1493 nonempty_parameters -> parameter_init 276 1497 nonempty_parameters -> parameter_init ',' nonempty_parameters 277 1500 nonempty_parameters -> rest_parameter 278 1506 parameter -> parameter_attributes typed_identifier 279 1513 parameter_attributes -> /* empty */ 280 1517 parameter_attributes -> CONST 281 1523 parameter_init -> parameter 282 1527 parameter_init -> parameter '=' assignment_expression 283 1533 rest_parameter -> ELIPSIS 284 1537 rest_parameter -> ELIPSIS parameter_attributes IDENTIFIER 285 1543 result -> ':' type_expression 286 1552 interface_definition -> INTERFACE IDENTIFIER extends_list block 287 1556 interface_definition -> INTERFACE IDENTIFIER ';' 288 1562 extends_list -> /* empty */ 289 1566 extends_list -> EXTENDS type_expression_list 290 1571 type_expression_list -> type_expression 291 1575 type_expression_list -> type_expression_list ',' type_expression 292 1582 class_definition -> CLASS IDENTIFIER inheritance block 293 1590 inheritance -> /* empty */ 294 1594 inheritance -> EXTENDS type_expression 295 1597 inheritance -> IMPLEMENTS type_expression_list 296 1600 inheritance -> EXTENDS type_expression IMPLEMENTS type_expression_list 297 1606 namespace_definition -> NAMESPACE IDENTIFIER 303 1642 package_name -> STRING 304 1646 package_name -> package_identifiers 305 1652 package_identifiers -> IDENTIFIER 306 1656 package_identifiers -> package_identifiers '.' IDENTIFIERTerminals, with rules where they appear$ (-1)'!' (33) 93'%' (37) 99'&' (38) 124'(' (40) 22 24 77 79 190 191 210 243 271 272')' (41) 22 24 77 79 190 191 210 243 271 272'*' (42) 97'+' (43) 89 101',' (44) 24 31 44 45 81 142 239 254 264 276 291'-' (45) 90 91 102 247 248'.' (46) 72 306'/' (47) 98':' (58) 32 136 138 174 186 187 261 285';' (59) 144 145 151 155 156 157 158 164 169 190 217 218 222 223 224 287'<' (60) 110'=' (61) 236 257 282'>' (62) 111'?' (63) 136 138 241'[' (91) 37 38 39 40 41 74 75 76']' (93) 37 38 39 40 41 74 75 76'^' (94) 126'{' (123) 27 28 165 166 172 173 178'|' (124) 128'}' (125) 27 28 165 166 172 173 178'~' (126) 92error (256)AS (257) 115ASSIGNMENT (258) 140BREAK (259) 204 205CASE (260) 186CATCH (261) 210CLASS (262) 292CONST (263) 252 280CONTINUE (264) 202 203DECREMENT (265) 62 88DEFAULT (266) 187DELETE (267) 84DO (268) 188ELIPSIS (269) 82 283 284ELSE (270) 177EQUAL (271) 119EXTENDS (272) 289 294 296FALSE (273) 10 232 245FOR (274) 190 191FOR_IN (275) 191FINALLY (276) 211FUNCTION (277) 25 26 267GOTO (278) 175GREATER_EQUAL (279) 113IDENTIFIER (280) 2 3 4 5 26 174 175 203 205 236 242 243 260 261 265 266 268 269 284 286 287 292 297 305 306IF (281) 176 177IMPLEMENTS (282) 295 296IMPORT (283) 235 236IN (284) 116INCREMENT (285) 61 87INSTANCEOF (286) 117INTERFACE (287) 286 287IS (288) 114LOGICAL_AND (289) 130
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -