📄 awktab.c
字号:
break;}case 9:#line 185 "awk.y"{ if (end_block) { if (end_block->type != Node_rule_list) end_block = node(end_block, Node_rule_list, (NODE *)NULL); (void) append_right (end_block, node( node((NODE *)NULL, Node_rule_node, yyvsp[0].nodeval), Node_rule_list, (NODE *)NULL)); } else end_block = node((NODE *)NULL, Node_rule_node, yyvsp[0].nodeval); yyval.nodeval = NULL; io_allowed = 1; yyerrok; ; break;}case 10:#line 200 "awk.y"{ warning("BEGIN blocks must have an action part"); errcount++; yyerrok; ; break;}case 11:#line 206 "awk.y"{ warning("END blocks must have an action part"); errcount++; yyerrok; ; break;}case 12:#line 212 "awk.y"{ yyval.nodeval = node (yyvsp[-1].nodeval, Node_rule_node, yyvsp[0].nodeval); yyerrok; ; break;}case 13:#line 214 "awk.y"{ yyval.nodeval = node ((NODE *)NULL, Node_rule_node, yyvsp[0].nodeval); yyerrok; ; break;}case 14:#line 216 "awk.y"{ yyval.nodeval = node (yyvsp[-1].nodeval, Node_rule_node, node(node(node(make_number(0.0), Node_field_spec, (NODE *) NULL), Node_expression_list, (NODE *) NULL), Node_K_print, (NODE *) NULL)); yyerrok; ; break;}case 15:#line 229 "awk.y"{ func_install(yyvsp[-1].nodeval, yyvsp[0].nodeval); yyval.nodeval = NULL; yyerrok; ; break;}case 16:#line 238 "awk.y"{ yyval.sval = yyvsp[0].sval; ; break;}case 17:#line 240 "awk.y"{ yyval.sval = yyvsp[0].sval; ; break;}case 18:#line 242 "awk.y"{ yyerror("%s() is a built-in function, it cannot be redefined", tokstart); errcount++; /* yyerrok; */ ; break;}case 21:#line 257 "awk.y"{ param_counter = 0; ; break;}case 22:#line 261 "awk.y"{ yyval.nodeval = append_right(make_param(yyvsp[-4].sval), yyvsp[-2].nodeval); can_return = 1; ; break;}case 23:#line 269 "awk.y"{ yyval.nodeval = yyvsp[-2].nodeval; can_return = 0; ; break;}case 24:#line 278 "awk.y"{ yyval.nodeval = yyvsp[0].nodeval; ; break;}case 25:#line 280 "awk.y"{ yyval.nodeval = mkrangenode ( node(yyvsp[-2].nodeval, Node_cond_pair, yyvsp[0].nodeval) ); ; break;}case 26:#line 289 "awk.y"{ ++want_regexp; ; break;}case 27:#line 291 "awk.y"{ NODE *n; int len; getnode(n); n->type = Node_regex; len = strlen(yyvsp[-1].sval); n->re_exp = make_string(yyvsp[-1].sval, len); n->re_reg = make_regexp(yyvsp[-1].sval, len, 0, 1); n->re_text = NULL; n->re_flags = CONST; n->re_cnt = 1; yyval.nodeval = n; ; break;}case 28:#line 309 "awk.y"{ yyval.nodeval = yyvsp[-3].nodeval ; ; break;}case 29:#line 311 "awk.y"{ yyval.nodeval = NULL; ; break;}case 30:#line 316 "awk.y"{ yyval.nodeval = yyvsp[0].nodeval; ; break;}case 31:#line 318 "awk.y"{ if (yyvsp[-1].nodeval == NULL || yyvsp[-1].nodeval->type != Node_statement_list) yyvsp[-1].nodeval = node(yyvsp[-1].nodeval, Node_statement_list,(NODE *)NULL); yyval.nodeval = append_right(yyvsp[-1].nodeval, node( yyvsp[0].nodeval, Node_statement_list, (NODE *)NULL)); yyerrok; ; break;}case 32:#line 326 "awk.y"{ yyval.nodeval = NULL; ; break;}case 33:#line 328 "awk.y"{ yyval.nodeval = NULL; ; break;}case 36:#line 338 "awk.y"{ yyval.nodeval = NULL; ; break;}case 37:#line 340 "awk.y"{ yyval.nodeval = NULL; ; break;}case 38:#line 342 "awk.y"{ yyval.nodeval = yyvsp[-1].nodeval; ; break;}case 39:#line 344 "awk.y"{ yyval.nodeval = yyvsp[0].nodeval; ; break;}case 40:#line 346 "awk.y"{ yyval.nodeval = node (yyvsp[-3].nodeval, Node_K_while, yyvsp[0].nodeval); ; break;}case 41:#line 348 "awk.y"{ yyval.nodeval = node (yyvsp[-2].nodeval, Node_K_do, yyvsp[-5].nodeval); ; break;}case 42:#line 350 "awk.y"{ yyval.nodeval = node (yyvsp[0].nodeval, Node_K_arrayfor, make_for_loop(variable(yyvsp[-5].sval,1), (NODE *)NULL, variable(yyvsp[-3].sval,1))); ; break;}case 43:#line 355 "awk.y"{ yyval.nodeval = node(yyvsp[0].nodeval, Node_K_for, (NODE *)make_for_loop(yyvsp[-7].nodeval, yyvsp[-5].nodeval, yyvsp[-3].nodeval)); ; break;}case 44:#line 359 "awk.y"{ yyval.nodeval = node (yyvsp[0].nodeval, Node_K_for, (NODE *)make_for_loop(yyvsp[-6].nodeval, (NODE *)NULL, yyvsp[-3].nodeval)); ; break;}case 45:#line 365 "awk.y"{ yyval.nodeval = node ((NODE *)NULL, Node_K_break, (NODE *)NULL); ; break;}case 46:#line 368 "awk.y"{ yyval.nodeval = node ((NODE *)NULL, Node_K_continue, (NODE *)NULL); ; break;}case 47:#line 370 "awk.y"{ yyval.nodeval = node (yyvsp[-3].nodeval, yyvsp[-5].nodetypeval, yyvsp[-1].nodeval); ; break;}case 48:#line 372 "awk.y"{ if (yyvsp[-3].nodetypeval == Node_K_print && yyvsp[-2].nodeval == NULL) yyvsp[-2].nodeval = node(node(make_number(0.0), Node_field_spec, (NODE *) NULL), Node_expression_list, (NODE *) NULL); yyval.nodeval = node (yyvsp[-2].nodeval, yyvsp[-3].nodetypeval, yyvsp[-1].nodeval); ; break;}case 49:#line 383 "awk.y"{ NODETYPE type; if (yyvsp[-1].nodeval && yyvsp[-1].nodeval == lookup("file")) { if (do_lint) warning("`next file' is a gawk extension"); else if (do_unix || do_posix) yyerror("`next file' is a gawk extension"); else if (! io_allowed) yyerror("`next file' used in BEGIN or END action"); type = Node_K_nextfile; } else { if (! io_allowed) yyerror("next used in BEGIN or END action"); type = Node_K_next; } yyval.nodeval = node ((NODE *)NULL, type, (NODE *)NULL); ; break;}case 50:#line 401 "awk.y"{ yyval.nodeval = node (yyvsp[-1].nodeval, Node_K_exit, (NODE *)NULL); ; break;}case 51:#line 403 "awk.y"{ if (! can_return) yyerror("return used outside function context"); ; break;}case 52:#line 405 "awk.y"{ yyval.nodeval = node (yyvsp[-1].nodeval, Node_K_return, (NODE *)NULL); ; break;}case 53:#line 407 "awk.y"{ yyval.nodeval = node (variable(yyvsp[-4].sval,1), Node_K_delete, yyvsp[-2].nodeval); ; break;}case 54:#line 409 "awk.y"{ yyval.nodeval = yyvsp[-1].nodeval; ; break;}case 55:#line 414 "awk.y"{ yyval.nodetypeval = yyvsp[0].nodetypeval; ; break;}case 56:#line 416 "awk.y"{ yyval.nodetypeval = yyvsp[0].nodetypeval; ; break;}case 57:#line 421 "awk.y"{ yyval.nodeval = node(yyvsp[-3].nodeval, Node_K_if, node(yyvsp[0].nodeval, Node_if_branches, (NODE *)NULL)); ; break;}case 58:#line 427 "awk.y"{ yyval.nodeval = node (yyvsp[-6].nodeval, Node_K_if, node (yyvsp[-3].nodeval, Node_if_branches, yyvsp[0].nodeval)); ; break;}case 59:#line 433 "awk.y"{ want_assign = 0; ; break;}case 63:#line 444 "awk.y"{ yyval.nodeval = NULL; ; break;}case 64:#line 446 "awk.y"{ yyval.nodeval = node (yyvsp[0].nodeval, Node_redirect_input, (NODE *)NULL); ; break;}case 65:#line 451 "awk.y"{ yyval.nodeval = NULL; ; break;}case 66:#line 453 "awk.y"{ yyval.nodeval = node (yyvsp[0].nodeval, Node_redirect_output, (NODE *)NULL); ; break;}case 67:#line 455 "awk.y"{ yyval.nodeval = node (yyvsp[0].nodeval, Node_redirect_append, (NODE *)NULL); ; break;}case 68:#line 457 "awk.y"{ yyval.nodeval = node (yyvsp[0].n
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -