📄 lex_cis.c
字号:
459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 0, 459, 459, 459, 459, 459 } ;static yyconst short int yy_nxt[576] = { 0, 6, 7, 8, 9, 10, 11, 6, 12, 13, 13, 13, 13, 13, 6, 6, 14, 15, 16, 6, 17, 6, 6, 18, 6, 6, 19, 20, 6, 21, 22, 6, 6, 6, 23, 24, 25, 26, 6, 27, 6, 6, 28, 6, 6, 29, 30, 31, 6, 32, 6, 33, 34, 35, 6, 36, 37, 6, 6, 39, 39, 39, 40, 43, 41, 58, 61, 68, 83, 62, 90, 168, 169, 59, 86, 91, 87, 69, 70, 84, 71, 63, 92, 88, 64, 93, 212, 213, 94, 44, 46, 47, 47, 47, 47, 47, 47, 48, 100, 96, 104, 107, 105, 97, 98, 108, 43, 39, 101, 39, 121, 39, 49, 40, 42, 41, 111, 43, 50, 99, 142, 126, 151, 43, 129, 122, 152, 51, 143, 52, 53, 123, 44, 458, 176, 54, 127, 55, 154, 177, 56, 72, 112, 44, 155, 73, 156, 157, 124, 44, 158, 159, 184, 457, 42, 456, 111, 321, 192, 128, 196, 160, 455, 322, 454, 453, 74, 75, 452, 76, 185, 451, 450, 193, 449, 197, 448, 77, 78, 447, 446, 79, 112, 80, 81, 445, 444, 443, 82, 113, 113, 113, 113, 113, 113, 114, 194, 442, 198, 441, 440, 439, 438, 437, 436, 435, 434, 433, 432, 431, 115, 430, 429, 428, 427, 426, 425, 424, 423, 422, 421, 420, 419, 418, 417, 416, 415, 116, 117, 414, 413, 412, 411, 118, 410, 119, 38, 38, 38, 42, 42, 42, 45, 409, 45, 110, 110, 110, 408, 407, 406, 405, 404, 403, 402, 401, 400, 399, 398, 397, 396, 395, 394, 393, 392, 391, 390, 389, 388, 387, 386, 385, 384, 383, 382, 381, 380, 379, 378, 377, 376, 375, 374, 373, 372, 371, 370, 369, 368, 367, 366, 365, 364, 363, 362, 361, 360, 359, 358, 357, 356, 355, 354, 353, 352, 351, 350, 349, 348, 347, 346, 345, 344, 343, 342, 341, 340, 339, 338, 337, 336, 335, 334, 333, 332, 331, 330, 329, 328, 327, 326, 325, 324, 323, 320, 319, 318, 317, 316, 315, 314, 313, 312, 311, 310, 309, 308, 307, 306, 305, 304, 303, 302, 301, 300, 299, 298, 297, 296, 295, 294, 293, 292, 291, 290, 289, 288, 287, 286, 285, 284, 283, 282, 281, 280, 279, 278, 277, 276, 275, 274, 273, 272, 271, 270, 269, 268, 267, 266, 265, 264, 263, 262, 261, 260, 259, 258, 257, 256, 255, 254, 253, 252, 251, 250, 249, 248, 247, 246, 245, 244, 243, 242, 241, 240, 239, 238, 237, 236, 235, 234, 233, 232, 231, 230, 229, 228, 227, 226, 225, 224, 223, 222, 221, 220, 219, 218, 217, 216, 215, 214, 211, 210, 209, 208, 207, 206, 205, 204, 203, 202, 201, 200, 199, 195, 191, 190, 189, 188, 187, 186, 183, 182, 181, 180, 179, 178, 175, 174, 173, 172, 171, 170, 167, 166, 165, 164, 163, 162, 161, 153, 150, 149, 148, 147, 146, 145, 144, 141, 140, 139, 138, 137, 136, 135, 134, 133, 132, 131, 130, 125, 120, 459, 109, 106, 103, 102, 95, 89, 85, 67, 66, 65, 60, 57, 459, 459, 5, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459 } ;static yyconst short int yy_chk[576] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 7, 9, 7, 9, 10, 9, 15, 17, 21, 23, 17, 27, 88, 88, 15, 25, 27, 25, 21, 21, 23, 21, 17, 27, 25, 17, 28, 145, 145, 28, 10, 12, 12, 12, 12, 12, 12, 12, 12, 31, 30, 34, 36, 34, 30, 30, 36, 42, 39, 31, 39, 52, 40, 12, 40, 44, 40, 44, 110, 12, 30, 69, 55, 77, 111, 464, 52, 77, 12, 69, 12, 12, 52, 42, 457, 96, 12, 55, 12, 79, 96, 12, 22, 44, 110, 79, 22, 79, 80, 52, 111, 80, 80, 103, 453, 112, 452, 112, 281, 116, 55, 119, 80, 449, 281, 447, 446, 22, 22, 445, 22, 103, 443, 442, 116, 441, 119, 439, 22, 22, 438, 437, 22, 112, 22, 22, 436, 433, 432, 22, 46, 46, 46, 46, 46, 46, 46, 116, 431, 119, 430, 429, 428, 427, 426, 425, 424, 422, 420, 419, 417, 46, 415, 414, 413, 412, 411, 410, 409, 408, 407, 406, 405, 404, 403, 402, 400, 397, 46, 46, 396, 395, 393, 392, 46, 391, 46, 460, 460, 460, 461, 461, 461, 462, 390, 462, 463, 463, 463, 389, 388, 387, 385, 383, 382, 381, 380, 378, 376, 375, 374, 373, 372, 371, 370, 368, 367, 366, 365, 364, 363, 362, 361, 360, 359, 358, 357, 356, 355, 354, 353, 351, 347, 343, 340, 339, 338, 337, 336, 335, 334, 333, 331, 329, 328, 327, 325, 324, 323, 322, 321, 320, 319, 318, 317, 316, 315, 314, 312, 310, 309, 308, 306, 305, 303, 302, 301, 300, 299, 298, 296, 295, 294, 293, 292, 291, 290, 289, 288, 287, 286, 285, 284, 283, 282, 280, 279, 277, 276, 275, 274, 273, 272, 271, 270, 269, 268, 266, 265, 264, 263, 258, 256, 255, 254, 253, 252, 251, 250, 249, 248, 247, 246, 245, 243, 242, 241, 240, 239, 238, 237, 236, 235, 234, 232, 231, 229, 228, 227, 226, 225, 224, 223, 222, 221, 220, 219, 218, 217, 216, 215, 214, 206, 205, 204, 202, 201, 200, 191, 190, 189, 188, 187, 186, 185, 184, 183, 182, 181, 180, 178, 177, 176, 175, 173, 172, 171, 170, 169, 168, 167, 166, 165, 164, 163, 162, 161, 160, 159, 158, 157, 156, 155, 154, 153, 152, 151, 150, 149, 148, 147, 146, 144, 143, 142, 140, 138, 137, 136, 135, 134, 133, 132, 131, 130, 117, 109, 108, 107, 106, 105, 104, 102, 101, 100, 99, 98, 97, 95, 94, 92, 91, 90, 89, 87, 86, 85, 84, 83, 82, 81, 78, 76, 75, 74, 73, 72, 71, 70, 68, 67, 66, 65, 64, 63, 62, 61, 60, 59, 58, 57, 53, 51, 47, 37, 35, 33, 32, 29, 26, 24, 20, 19, 18, 16, 14, 13, 5, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459 } ;static yy_state_type yy_last_accepting_state;static char *yy_last_accepting_cpos;/* The intent behind this definition is that it'll catch * any uses of REJECT which flex missed. */#define REJECT reject_used_but_not_detected#define yymore() yymore_used_but_not_detected#define YY_MORE_ADJ 0#define YY_RESTORE_YY_MORE_OFFSETchar *yytext;#line 1 "lex_cis.l"#define INITIAL 0/* Special state for handling include files */#define src 1#line 5 "lex_cis.l"/* * lex_cis.l 1.15 2001/08/24 12:21:41 * * The contents of this file are subject to the Mozilla Public License * Version 1.1 (the "License"); you may not use this file except in * compliance with the License. You may obtain a copy of the License * at http://www.mozilla.org/MPL/ * * Software distributed under the License is distributed on an "AS IS" * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See * the License for the specific language governing rights and * limitations under the License. * * The initial developer of the original code is David A. Hinds * <dahinds@users.sourceforge.net>. Portions created by David A. Hinds * are Copyright (C) 1999 David A. Hinds. All Rights Reserved. * * Alternatively, the contents of this file may be used under the * terms of the GNU General Public License version 2 (the "GPL"), in * which case the provisions of the GPL are applicable instead of the * above. If you wish to allow the use of your version of this file * only under the terms of the GPL and not to allow others to use * your version of this file under the MPL, indicate your decision by * deleting the provisions above and replace them with the notice and * other provisions required by the GPL. If you do not delete the * provisions above, a recipient may use your version of this file * under either the MPL or the GPL. */#undef src#include <stdlib.h>#include <unistd.h>#include <string.h>#include <syslog.h>#define src 1#include <pcmcia/cs_types.h>#include <pcmcia/cistpl.h>#include "pack_cis.h"#include "yacc_cis.h"/* For assembling nice error messages */int current_lineno;static int lex_number(char *);static int lex_units(char *, int, int);static int lex_float(char *);static int lex_string(char *);/* Macros after this point can all be overridden by user definitions in * section 1. */#ifndef YY_SKIP_YYWRAP#ifdef __cplusplusextern "C" int yywrap YY_PROTO(( void ));#elseextern int yywrap YY_PROTO(( void ));#endif#endif#ifndef YY_NO_UNPUTstatic void yyunput YY_PROTO(( int c, char *buf_ptr ));#endif#ifndef yytext_ptrstatic void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));#endif#ifdef YY_NEED_STRLENstatic int yy_flex_strlen YY_PROTO(( yyconst char * ));#endif#ifndef YY_NO_INPUT#ifdef __cplusplusstatic int yyinput YY_PROTO(( void ));#elsestatic int input YY_PROTO(( void ));#endif#endif#if YY_STACK_USEDstatic int yy_start_stack_ptr = 0;static int yy_start_stack_depth = 0;static int *yy_start_stack = 0;#ifndef YY_NO_PUSH_STATEstatic void yy_push_state YY_PROTO(( int new_state ));#endif#ifndef YY_NO_POP_STATEstatic void yy_pop_state YY_PROTO(( void ));#endif#ifndef YY_NO_TOP_STATEstatic int yy_top_state YY_PROTO(( void ));#endif#else#define YY_NO_PUSH_STATE 1#define YY_NO_POP_STATE 1#define YY_NO_TOP_STATE 1#endif#ifdef YY_MALLOC_DECLYY_MALLOC_DECL#else#if __STDC__#ifndef __cplusplus#include <stdlib.h>#endif#else/* Just try to get by without declaring the routines. This will fail * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int) * or sizeof(void*) != sizeof(int). */#endif#endif/* Amount of stuff to slurp up with each read. */#ifndef YY_READ_BUF_SIZE#define YY_READ_BUF_SIZE 8192#endif/* Copy whatever the last rule matched to the standard output. */#ifndef ECHO/* This used to be an fputs(), but since the string might contain NUL's, * we now use fwrite(). */#define ECHO (void) fwrite( yytext, yyleng, 1, yyout )#endif/* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, * is returned in "result". */#ifndef YY_INPUT#define YY_INPUT(buf,result,max_size) \ if ( yy_current_buffer->yy_is_interactive ) \ { \ int c = '*', n; \ for ( n = 0; n < max_size && \ (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ buf[n] = (char) c; \ if ( c == '\n' ) \ buf[n++] = (char) c; \ if ( c == EOF && ferror( yyin ) ) \ YY_FATAL_ERROR( "input in flex scanner failed" ); \ result = n; \ } \ else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \ && ferror( yyin ) ) \ YY_FATAL_ERROR( "input in flex scanner failed" );#endif/* No semi-colon after return; correct usage is to write "yyterminate();" - * we don't want an extra ';' after the "return" because that will cause * some compilers to complain about unreachable statements. */#ifndef yyterminate#define yyterminate() return YY_NULL#endif/* Number of entries by which start-condition stack grows. */#ifndef YY_START_STACK_INCR#define YY_START_STACK_INCR 25#endif/* Report a fatal error. */#ifndef YY_FATAL_ERROR#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )#endif/* Default declaration of generated scanner - a define so the user can * easily add parameters. */#ifndef YY_DECL#define YY_DECL int yylex YY_PROTO(( void ))#endif/* Code executed at the beginning of each rule, after yytext and yyleng * have been set up. */#ifndef YY_USER_ACTION#define YY_USER_ACTION#endif/* Code executed at the end of each rule. */#ifndef YY_BREAK#define YY_BREAK break;#endif#define YY_RULE_SETUP \ YY_USER_ACTIONYY_DECL { register yy_state_type yy_current_state; register char *yy_cp = NULL, *yy_bp = NULL; register int yy_act;#line 62 "lex_cis.l" if ( yy_init ) { yy_init = 0;#ifdef YY_USER_INIT YY_USER_INIT;#endif if ( ! yy_start ) yy_start = 1; /* first start state */ if ( ! yyin ) yyin = stdin; if ( ! yyout ) yyout = stdout; if ( ! yy_current_buffer ) yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); yy_load_buffer_state(); } 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;yy_match: do { register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)]; if ( yy_accept[yy_current_state] ) { yy_last_accepting_state = yy_current_state; yy_last_accepting_cpos = yy_cp; } while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; if ( yy_current_state >= 460 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; ++yy_cp; } while ( yy_base[yy_current_state] != 517 );yy_find_action: yy_act = yy_accept[yy_current_state]; if ( yy_act == 0 ) { /* have to back up */ yy_cp = yy_last_accepting_cpos; yy_current_state = yy_last_accepting_state; yy_act = yy_accept[yy_current_state]; } YY_DO_BEFORE_ACTION;do_action: /* This label is used only to access EOF actions. */ switch ( yy_act ) { /* beginning of action switch */ case 0: /* must back up */ /* undo the effects of YY_DO_BEFORE_ACTION */ *yy_cp = yy_hold_char; yy_cp = yy_last_accepting_cpos; yy_current_state = yy_last_accepting_state; goto yy_find_action;case 1:YY_RULE_SETUP#line 64 "lex_cis.l"current_lineno++; YY_BREAKcase 2:YY_RULE_SETUP#line 65 "lex_cis.l"/* skip */ ; YY_BREAKcase 3:YY_RULE_SETUP#line 66 "lex_cis.l"/* skip */ ; YY_BREAKcase 4:YY_RULE_SETUP#line 68 "lex_cis.l"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -