📄 parser.yy.c
字号:
return N;
YY_BREAK
case 15:
YY_RULE_SETUP
#line 59 "parser.l"
return DETECTOR;
YY_BREAK
case 16:
YY_RULE_SETUP
#line 60 "parser.l"
return DETECTOR;
YY_BREAK
case 17:
YY_RULE_SETUP
#line 61 "parser.l"
return SOURCE;
YY_BREAK
case 18:
YY_RULE_SETUP
#line 62 "parser.l"
return SOURCE;
YY_BREAK
case 19:
YY_RULE_SETUP
#line 64 "parser.l"
return SDPOS;
YY_BREAK
case 20:
YY_RULE_SETUP
#line 65 "parser.l"
return SDPOS;
YY_BREAK
case 21:
YY_RULE_SETUP
#line 66 "parser.l"
return SDDIR;
YY_BREAK
case 22:
YY_RULE_SETUP
#line 67 "parser.l"
return SDDIR;
YY_BREAK
case 23:
YY_RULE_SETUP
#line 68 "parser.l"
return SDRAD;
YY_BREAK
case 24:
YY_RULE_SETUP
#line 69 "parser.l"
return SDRAD;
YY_BREAK
case 25:
YY_RULE_SETUP
#line 70 "parser.l"
return SDNA;
YY_BREAK
case 26:
YY_RULE_SETUP
#line 72 "parser.l"
return IMGX;
YY_BREAK
case 27:
YY_RULE_SETUP
#line 73 "parser.l"
return IMGY;
YY_BREAK
case 28:
YY_RULE_SETUP
#line 74 "parser.l"
return IMGZ;
YY_BREAK
case 29:
YY_RULE_SETUP
#line 75 "parser.l"
return IMGX;
YY_BREAK
case 30:
YY_RULE_SETUP
#line 76 "parser.l"
return IMGY;
YY_BREAK
case 31:
YY_RULE_SETUP
#line 77 "parser.l"
return IMGZ;
YY_BREAK
case 32:
YY_RULE_SETUP
#line 79 "parser.l"
return DX;
YY_BREAK
case 33:
YY_RULE_SETUP
#line 80 "parser.l"
return DY;
YY_BREAK
case 34:
YY_RULE_SETUP
#line 81 "parser.l"
return DZ;
YY_BREAK
case 35:
YY_RULE_SETUP
#line 83 "parser.l"
return NXSTEP;
YY_BREAK
case 36:
YY_RULE_SETUP
#line 84 "parser.l"
return NYSTEP;
YY_BREAK
case 37:
YY_RULE_SETUP
#line 85 "parser.l"
return NZSTEP;
YY_BREAK
case 38:
YY_RULE_SETUP
#line 87 "parser.l"
return SETFLAG;
YY_BREAK
case 39:
YY_RULE_SETUP
#line 88 "parser.l"
return FTWOPT;
YY_BREAK
case 40:
YY_RULE_SETUP
#line 89 "parser.l"
return FSMOVE;
YY_BREAK
case 41:
YY_RULE_SETUP
#line 90 "parser.l"
return FDMOVE;
YY_BREAK
case 42:
YY_RULE_SETUP
#line 91 "parser.l"
return FXMOVE;
YY_BREAK
case 43:
YY_RULE_SETUP
#line 92 "parser.l"
return FXTIME;
YY_BREAK
case 44:
YY_RULE_SETUP
#line 93 "parser.l"
return FMATLAB;
YY_BREAK
case 45:
YY_RULE_SETUP
#line 94 "parser.l"
return FMIRROR;
YY_BREAK
/* Quoted filenames must start with a normal */
/* FILENAME character but may contain embedded */
/* special characters (space, etc.) after that */
case 46:
*yy_cp = yy_hold_char; /* undo effects of setting up yytext */
yy_c_buf_p = yy_cp = yy_bp + 1;
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
#line 99 "parser.l"
BEGIN(INQ);
YY_BREAK
case 47:
*yy_cp = yy_hold_char; /* undo effects of setting up yytext */
yy_c_buf_p = yy_cp -= 1;
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
#line 100 "parser.l"
{ yylval.string = yytext; BEGIN(ENDQ);
return FILENAME; }
YY_BREAK
case 48:
YY_RULE_SETUP
#line 102 "parser.l"
BEGIN(INITIAL);
YY_BREAK
/* Primitives */
case 49:
YY_RULE_SETUP
#line 105 "parser.l"
{ yylval.integer = atoi(yytext); return DECNUMBER; }
YY_BREAK
case 50:
YY_RULE_SETUP
#line 106 "parser.l"
{ yylval.real = atof(yytext); return REALNUMBER; }
YY_BREAK
case 51:
YY_RULE_SETUP
#line 107 "parser.l"
{ yylval.string = yytext; return FILENAME; }
YY_BREAK
case 52:
YY_RULE_SETUP
#line 109 "parser.l"
return '['; /* begin vector */
YY_BREAK
case 53:
YY_RULE_SETUP
#line 110 "parser.l"
return ']'; /* end vector */
YY_BREAK
case 54:
YY_RULE_SETUP
#line 111 "parser.l"
return '{'; /* begin grouping */
YY_BREAK
case 55:
YY_RULE_SETUP
#line 112 "parser.l"
return '}'; /* end grouping */
YY_BREAK
case 56:
YY_RULE_SETUP
#line 114 "parser.l"
/* IGNORE: optional separator */
YY_BREAK
case 57:
YY_RULE_SETUP
#line 115 "parser.l"
/* IGNORE: optional assignment */
YY_BREAK
case 58:
YY_RULE_SETUP
#line 116 "parser.l"
/* IGNORE: comment */
YY_BREAK
case 59:
YY_RULE_SETUP
#line 117 "parser.l"
/* IGNORE: whitespace */
YY_BREAK
case 60:
YY_RULE_SETUP
#line 118 "parser.l"
linenumber++; /* End of line */
YY_BREAK
case YY_STATE_EOF(INITIAL):
case YY_STATE_EOF(INQ):
case YY_STATE_EOF(ENDQ):
#line 119 "parser.l"
return 0; /* Done, returns zero */
YY_BREAK
case 61:
YY_RULE_SETUP
#line 120 "parser.l"
yyerror("Unrecognized token");
YY_BREAK
case 62:
YY_RULE_SETUP
#line 122 "parser.l"
ECHO;
YY_BREAK
#line 1446 "lex.yy.c"
case YY_END_OF_BUFFER:
{
/* Amount of text matched not including the EOB char. */
int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;
/* Undo the effects of YY_DO_BEFORE_ACTION. */
*yy_cp = yy_hold_char;
YY_RESTORE_YY_MORE_OFFSET
if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
{
/* We're scanning a new file or input source. It's
* possible that this happened because the user
* just pointed yyin at a new source and called
* yylex(). If so, then we have to assure
* consistency between yy_current_buffer and our
* globals. Here is the right place to do so, because
* this is the first action (other than possibly a
* back-up) that will match for the new input source.
*/
yy_n_chars = yy_current_buffer->yy_n_chars;
yy_current_buffer->yy_input_file = yyin;
yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;
}
/* Note that here we test for yy_c_buf_p "<=" to the position
* of the first EOB in the buffer, since yy_c_buf_p will
* already have been incremented past the NUL character
* (since all states make transitions on EOB to the
* end-of-buffer state). Contrast this with the test
* in input().
*/
if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
{ /* This was really a NUL. */
yy_state_type yy_next_state;
yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text;
yy_current_state = yy_get_previous_state();
/* Okay, we're now positioned to make the NUL
* transition. We couldn't have
* yy_get_previous_state() go ahead and do it
* for us because it doesn't know how to deal
* with the possibility of jamming (and we don't
* want to build jamming into it because then it
* will run more slowly).
*/
yy_next_state = yy_try_NUL_trans( yy_current_state );
yy_bp = yytext_ptr + YY_MORE_ADJ;
if ( yy_next_state )
{
/* Consume the NUL. */
yy_cp = ++yy_c_buf_p;
yy_current_state = yy_next_state;
goto yy_match;
}
else
{
yy_cp = yy_c_buf_p;
goto yy_find_action;
}
}
else switch ( yy_get_next_buffer() )
{
case EOB_ACT_END_OF_FILE:
{
yy_did_buffer_switch_on_eof = 0;
if ( yywrap() )
{
/* Note: because we've taken care in
* yy_get_next_buffer() to have set up
* yytext, we can now set up
* yy_c_buf_p so that if some total
* hoser (like flex itself) wants to
* call the scanner after we return the
* YY_NULL, it'll still work - another
* YY_NULL will get returned.
*/
yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
yy_act = YY_STATE_EOF(YY_START);
goto do_action;
}
else
{
if ( ! yy_did_buffer_switch_on_eof )
YY_NEW_FILE;
}
break;
}
case EOB_ACT_CONTINUE_SCAN:
yy_c_buf_p =
yytext_ptr + yy_amount_of_matched_text;
yy_current_state = yy_get_previous_state();
yy_cp = yy_c_buf_p;
yy_bp = yytext_ptr + YY_MORE_ADJ;
goto yy_match;
case EOB_ACT_LAST_MATCH:
yy_c_buf_p =
&yy_current_buffer->yy_ch_buf[yy_n_chars];
yy_current_state = yy_get_previous_state();
yy_cp = yy_c_buf_p;
yy_bp = yytext_ptr + YY_MORE_ADJ;
goto yy_find_action;
}
break;
}
default:
YY_FATAL_ERROR(
"fatal flex scanner internal error--no action found" );
} /* end of action switch */
} /* end of scanning one token */
} /* end of yylex */
/* yy_get_next_buffer - try to read in a new buffer
*
* Returns a code representing an action:
* EOB_ACT_LAST_MATCH -
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -