📄 yylex.c
字号:
22, 26, 22, 27, 22, 22, 22, 22, 28, 29, 22, 30, 22, 22, 18, 31, 32, 34, 35, 38, 18, 18, 18, 18, 31, 32, 37, 41, 39, 18, 18, 18, 33, 40, 33, 42, 37, 33, 34, 35, 33, 38, 33, 40, 39, 41, 33, 33, 33, 36, 33, 42, 34, 35, 50, 45, 33, 67, 163, 33, 33, 33, 33, 18, 31, 32, 33, 18, 18, 44, 18, 18, 46, 47, 48, 53, 51, 162, 52, 60, 33, 33, 33, 33, 49, 61, 62, 68, 65, 160, 33, 66, 33, 33, 33, 69, 33, 158, 33, 33, 18, 54, 55, 71, 72, 153, 18, 18, 18, 18, 57, 19, 33, 73, 74, 59, 18, 18, 18, 48, 32, 75, 64, 18, 44, 18, 18, 54, 55, 76, 77, 86, 70, 18, 54, 55, 33, 146, 33, 18, 18, 18, 18, 57, 19, 83, 33, 33, 18, 18, 18, 143, 84, 85, 33, 18, 78, 79, 89, 71, 72, 18, 18, 18, 19, 93, 76, 77, 78, 79, 33, 81, 81, 94, 95, 19, 81, 33, 141, 81, 96, 19, 136, 33, 81, 82, 18, 68, 32, 134, 88, 88, 44, 18, 18, 18, 90, 19, 84, 85, 131, 92, 18, 18, 18, 73, 74, 97, 18, 18, 44, 18, 18, 18, 78, 79, 106, 107, 98, 18, 18, 18, 33, 33, 18, 99, 100, 102, 103, 115, 18, 18, 18, 18, 102, 103, 108, 109, 129, 18, 18, 18, 18, 89, 32, 126, 105, 105, 44, 18, 18, 18, 90, 19, 33, 110, 123, 18, 18, 18, 111, 33, 18, 95, 19, 130, 18, 18, 18, 18, 18, 18, 96, 19, 121, 18, 18, 18, 18, 18, 114, 99, 100, 106, 107, 33, 70, 18, 99, 100, 33, 119, 120, 18, 18, 18, 18, 116, 117, 148, 149, 105, 18, 18, 18, 18, 119, 120, 138, 139, 118, 18, 18, 18, 18, 108, 109, 113, 18, 18, 122, 18, 18, 18, 110, 19, 148, 149, 112, 18, 18, 18, 18, 124, 125, 150, 19, 104, 18, 18, 18, 18, 127, 128, 154, 19, 88, 18, 18, 18, 18, 115, 32, 101, 18, 18, 44, 18, 18, 116, 117, 164, 165, 91, 70, 18, 116, 117, 164, 165, 87, 18, 18, 18, 18, 132, 133, 166, 167, 80, 18, 18, 18, 18, 135, 19, 168, 169, 63, 137, 18, 18, 18, 138, 139, 58, 124, 125, 18, 18, 18, 140, 18, 124, 125, 56, 43, 33, 18, 18, 18, 18, 127, 128, 18, 18, 18, 142, 18, 18, 18, 127, 128, 4, 110, 33, 18, 18, 18, 18, 130, 32, 33, 18, 18, 44, 18, 18, 18, 144, 145, 19, 132, 133, 18, 18, 18, 147, 18, 132, 133, 19, 170, 5, 18, 18, 18, 18, 135, 19, 170, 150, 19, 18, 18, 18, 151, 18, 152, 128, 170, 154, 19, 18, 18, 18, 155, 18, 156, 157, 170, 144, 145, 18, 18, 18, 70, 18, 144, 145, 170, 170, 170, 18, 18, 18, 18, 159, 19, 170, 170, 170, 161, 18, 18, 18, 150, 19, 170, 152, 128, 18, 18, 18, 142, 18, 152, 128, 170, 170, 170, 18, 18, 18, 18, 154, 19, 170, 156, 157, 18, 18, 18, 70, 18, 156, 157, 170, 170, 170, 18, 18, 18, 18, 159, 19, 170, 170, 170, 18, 18, 18, 18, 166, 167, 170, 170, 170, 18, 18, 18, 18, 168, 169, 170, 170, 170, 18, 18, 18, 3, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170 } ;static const short int yy_chk[639] = { 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 9, 9, 9, 10, 10, 13, 9, 9, 9, 11, 11, 11, 12, 16, 14, 11, 11, 11, 14, 15, 13, 17, 25, 12, 23, 23, 15, 26, 16, 28, 27, 29, 17, 25, 27, 11, 28, 30, 34, 34, 40, 36, 26, 51, 202, 51, 29, 40, 30, 31, 31, 31, 36, 31, 31, 31, 31, 31, 37, 38, 39, 42, 41, 201, 41, 45, 37, 41, 45, 38, 39, 46, 47, 52, 49, 200, 42, 50, 47, 49, 50, 53, 53, 199, 46, 39, 43, 43, 43, 58, 58, 198, 43, 43, 43, 44, 44, 44, 52, 60, 60, 44, 44, 44, 48, 48, 48, 61, 48, 48, 48, 48, 48, 54, 54, 62, 62, 67, 54, 56, 56, 56, 61, 197, 60, 56, 56, 56, 57, 57, 57, 65, 67, 65, 57, 57, 57, 196, 66, 66, 62, 63, 63, 63, 69, 71, 71, 63, 63, 63, 64, 75, 76, 76, 78, 78, 75, 64, 64, 78, 81, 81, 64, 66, 195, 64, 82, 82, 194, 69, 64, 64, 68, 68, 68, 193, 68, 68, 68, 68, 68, 70, 70, 70, 84, 84, 192, 70, 70, 70, 73, 73, 73, 83, 73, 73, 73, 73, 73, 80, 80, 80, 91, 91, 86, 80, 80, 80, 83, 86, 87, 87, 87, 102, 102, 98, 87, 87, 87, 88, 88, 88, 93, 93, 191, 88, 88, 88, 89, 89, 89, 190, 89, 89, 89, 89, 89, 90, 90, 90, 98, 94, 189, 90, 90, 90, 94, 93, 95, 95, 95, 114, 95, 95, 95, 95, 95, 96, 96, 96, 188, 96, 96, 96, 96, 96, 97, 99, 99, 106, 106, 97, 99, 101, 101, 101, 114, 119, 119, 101, 101, 101, 104, 104, 104, 136, 136, 187, 104, 104, 104, 105, 105, 105, 138, 138, 186, 105, 105, 105, 108, 108, 108, 185, 108, 108, 108, 108, 108, 110, 110, 110, 148, 148, 184, 110, 110, 110, 112, 112, 112, 151, 151, 183, 112, 112, 112, 113, 113, 113, 155, 155, 182, 113, 113, 113, 115, 115, 115, 181, 115, 115, 115, 115, 115, 116, 116, 160, 160, 180, 116, 118, 118, 118, 164, 164, 179, 118, 118, 118, 121, 121, 121, 166, 166, 178, 121, 121, 121, 122, 122, 122, 168, 168, 177, 122, 122, 122, 123, 123, 123, 176, 124, 124, 123, 123, 123, 124, 126, 126, 126, 175, 174, 173, 126, 126, 126, 127, 127, 127, 172, 127, 127, 127, 127, 127, 129, 129, 129, 171, 111, 33, 129, 129, 129, 130, 130, 130, 22, 130, 130, 130, 130, 130, 131, 131, 131, 18, 132, 132, 131, 131, 131, 132, 134, 134, 134, 6, 3, 1, 134, 134, 134, 135, 135, 135, 0, 140, 140, 135, 135, 135, 140, 141, 141, 141, 0, 142, 142, 141, 141, 141, 142, 143, 143, 143, 0, 144, 144, 143, 143, 143, 144, 146, 146, 146, 0, 0, 0, 146, 146, 146, 147, 147, 147, 0, 0, 0, 147, 147, 147, 150, 150, 150, 0, 152, 152, 150, 150, 150, 152, 153, 153, 153, 0, 0, 0, 153, 153, 153, 154, 154, 154, 0, 156, 156, 154, 154, 154, 156, 158, 158, 158, 0, 0, 0, 158, 158, 158, 159, 159, 159, 0, 0, 0, 159, 159, 159, 162, 162, 162, 0, 0, 0, 162, 162, 162, 163, 163, 163, 0, 0, 0, 163, 163, 163, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170 } ;static yy_state_type yy_last_accepting_state;static YY_CHAR *yy_last_accepting_cpos;static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr;static YY_CHAR *yy_full_match;static int yy_lp;static int yy_looking_for_trail_begin = 0;static int yy_full_lp;static int *yy_full_state;#define YY_TRAILING_MASK 0x2000#define YY_TRAILING_HEAD_MASK 0x4000#define REJECT \{ \*yy_cp = yy_hold_char; /* undo effects of setting up yytext */ \yy_cp = yy_full_match; /* restore poss. backed-over text */ \yy_lp = yy_full_lp; /* restore orig. accepting pos. */ \yy_state_ptr = yy_full_state; /* restore orig. state */ \yy_current_state = *yy_state_ptr; /* restore curr. state */ \++yy_lp; \goto find_rule; \}#define yymore() yymore_used_but_not_detected#define YY_MORE_ADJ 0/* these variables are all declared out here so that section 3 code can * manipulate them *//* points to current character in buffer */static YY_CHAR *yy_c_buf_p = (YY_CHAR *) 0;static int yy_init = 1; /* whether we need to initialize */static int yy_start = 0; /* start state number *//* flag which is used to allow yywrap()'s to do buffer switches * instead of setting up a fresh yyin. A bit of a hack ... */static int yy_did_buffer_switch_on_eof;static yy_state_type yy_get_previous_state YY_PROTO(( void ));static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));static int yy_get_next_buffer YY_PROTO(( void ));static void yyunput YY_PROTO(( YY_CHAR c, YY_CHAR *buf_ptr ));void yyrestart YY_PROTO(( FILE *input_file ));void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));void yy_load_buffer_state YY_PROTO(( void ));YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));#define yy_new_buffer yy_create_buffer#ifdef __cplusplusstatic int yyinput YY_PROTO(( void ));#elsestatic int input YY_PROTO(( void ));#endifYY_DECL { register yy_state_type yy_current_state; register YY_CHAR *yy_cp, *yy_bp; register int yy_act; if ( yy_init ) { YY_USER_INIT; if ( ! yy_start ) yy_start = 1; /* first start state */ if ( ! yyin ) yyin = stdin; if ( ! yyout ) yyout = stdout; if ( yy_current_buffer ) yy_init_buffer( yy_current_buffer, yyin ); else yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); yy_load_buffer_state(); yy_init = 0; } while ( 1 ) /* loops until end-of-file is reached */ { yy_cp = yy_c_buf_p; /* support of yytext */ *yy_cp = yy_hold_char; /* yy_bp points to the position in yy_ch_buf of the start of the * current run. */ yy_bp = yy_cp; yy_current_state = yy_start; if ( yy_bp[-1] == '\n' ) ++yy_current_state; yy_state_ptr = yy_state_buf; *yy_state_ptr++ = yy_current_state;yy_match: do { register YY_CHAR yy_c = yy_ec[*yy_cp]; while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = yy_def[yy_current_state]; if ( yy_current_state >= 171 ) yy_c = yy_meta[yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; *yy_state_ptr++ = yy_current_state; ++yy_cp; } while ( yy_base[yy_current_state] != 611 );yy_find_action: yy_current_state = *--yy_state_ptr; yy_lp = yy_accept[yy_current_state];find_rule: /* we branch to this label when backtracking */ for ( ; ; ) /* until we find what rule we matched */ { if ( yy_lp && yy_lp < yy_accept[yy_current_state + 1] ) { yy_act = yy_acclist[yy_lp]; if ( yy_act & YY_TRAILING_HEAD_MASK || yy_looking_for_trail_begin ) { if ( yy_act == yy_looking_for_trail_begin ) { yy_looking_for_trail_begin = 0; yy_act &= ~YY_TRAILING_HEAD_MASK; break; } } else if ( yy_act & YY_TRAILING_MASK ) { yy_looking_for_trail_begin = yy_act & ~YY_TRAILING_MASK; yy_looking_for_trail_begin |= YY_TRAILING_HEAD_MASK; } else { yy_full_match = yy_cp; yy_full_state = yy_state_ptr; yy_full_lp = yy_lp; break; } ++yy_lp; goto find_rule; } --yy_cp; yy_current_state = *--yy_state_ptr; yy_lp = yy_accept[yy_current_state]; } YY_DO_BEFORE_ACTION; YY_USER_ACTION;do_action: /* this label is used only to access EOF actions */ switch ( yy_act ) { int nt_was_set = FALSE;case 1:# line 108 "commands.l"{ /* * 0 == use current server to find * the new one. * 1 == use original server to find * the new one. */ SetDefaultServer(yytext, 0); return(1); } YY_BREAKcase 2:# line 118 "commands.l"{ SetDefaultServer(yytext, 1); return(1); } YY_BREAKcase 3:# line 122 "commands.l"{ return(0); } YY_BREAKcase 4:# line 125 "commands.l"{ SetDefaultServer(rootServerName, 1); return(1); } YY_BREAKcase 5:# line 129 "commands.l"{ /* * 2nd arg. * 0 == output to stdout * 1 == output to file */ Finger(yytext, 1); return(1); } YY_BREAKcase 6:# line 138 "commands.l"{ Finger(yytext, 0); return(1); } YY_BREAKcase 7:# line 142 "commands.l"{ ViewList(yytext); return(1); } YY_BREAKcase 8:# line 146 "commands.l"{ /* * 2nd arg. * 0 == output to stdout * 1 == output to file */ ListHosts(yytext, 1); return(1); } YY_BREAKcase 9:# line 155 "commands.l"{ ListHosts(yytext, 0); return(1); } YY_BREAKcase 10:# line 159 "commands.l"{ /* * 2nd arg. * 0 == output to stdout * 1 == output to file */ ListHostsByType(yytext, 1); return(1); } YY_BREAKcase 11:# line 168 "commands.l"{ ListHostsByType(yytext, 0); return(1); } YY_BREAKcase 12:# line 172 "commands.l"{ SetOption(yytext); nt_was_set = TRUE; return(1); } YY_BREAKcase 13:# line 176 "commands.l"{ PrintHelp(); return(1); } YY_BREAKcase 14:# line 180 "commands.l"{ extern void PrintHelp(); PrintHelp(); return(1); } YY_BREAKcase 15:# line 186 "commands.l"{ /* * 0 == output to stdout * 1 == output to file */ LookupHost(yytext, 1); return(1); } YY_BREAKcase 16:# line 194 "commands.l"{ LookupHost(yytext, 0); return(1); } YY_BREAKcase 17:# line 198 "commands.l"{ /* * 0 == output to stdout * 1 == output to file */ LookupHostWithServer(yytext, 1); return(1); } YY_BREAKcase 18:# line 206 "commands.l"{ LookupHostWithServer(yytext, 0); return(1); } YY_BREAKcase 19:# line 210 "commands.l"{ return(1); } YY_BREAKcase 20:# line 213 "commands.l"{ printf("Unrecognized command: %s", yytext); return(1); } YY_BREAKcase 21:# line 218 "commands.l"{ ; } YY_BREAKcase 22:# line 219 "commands.l"ECHO; YY_BREAK case YY_STATE_EOF(INITIAL): yyterminate(); case YY_END_OF_BUFFER: { /* amount of text matched not including the EOB char */ int yy_amount_of_matched_text = yy_cp - yytext - 1; /* undo the effects of YY_DO_BEFORE_ACTION */ *yy_cp = yy_hold_char; /* 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 yyinput(). */ if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -