⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lex.zconf.c_shipped

📁 busybox最新版的源码:学习和应用的好东东,多的不说了,大家看后再说吧
💻 C_SHIPPED
📖 第 1 页 / 共 4 页
字号:
    {       11,  -46,   46,   47,  -46,  -46,  -46,  -46,  -46,  -46,      -46,  -46,  -46,  -46,  -46,  -46,  -46    },    {       11,   48,  -47,  -47,   48,   48,   48,   48,   48,   48,       48,   48,   48,   48,   48,   48,   48    },    {       11,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,      -48,  -48,  -48,  -48,  -48,  -48,  -48    },    {       11,   49,   49,   50,   49,  -49,   49,   49,  -49,   49,       49,   49,   49,   49,   49,  -49,   49    },    {       11,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,      -50,  -50,  -50,  -50,  -50,  -50,  -50    },    {       11,  -51,  -51,   52,  -51,  -51,  -51,  -51,  -51,  -51,      -51,  -51,  -51,  -51,  -51,  -51,  -51    },    {       11,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,      -52,  -52,  -52,  -52,  -52,  -52,  -52    },    {       11,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,      -53,  -53,  -53,  -53,  -53,  -53,  -53    },    {       11,   54,   54,  -54,   54,   54,   54,   54,   54,   54,       54,   54,   54,   54,   54,   54,   54    },    {       11,  -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,      -55,  -55,  -55,  -55,  -55,  -55,  -55    },    {       11,  -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,      -56,   60,   57,   57,  -56,  -56,  -56    },    {       11,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,      -57,   57,   57,   57,  -57,  -57,  -57    },    {       11,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,      -58,  -58,  -58,  -58,  -58,  -58,  -58    },    {       11,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,      -59,  -59,  -59,  -59,  -59,  -59,  -59    },    {       11,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,      -60,   57,   57,   57,  -60,  -60,  -60    },    } ;static yy_state_type yy_get_previous_state (void );static yy_state_type yy_try_NUL_trans (yy_state_type current_state  );static int yy_get_next_buffer (void );static void yy_fatal_error (yyconst char msg[]  );/* Done after the current pattern has been matched and before the * corresponding action - sets up zconftext. */#define YY_DO_BEFORE_ACTION \	(yytext_ptr) = yy_bp; \	zconfleng = (size_t) (yy_cp - yy_bp); \	(yy_hold_char) = *yy_cp; \	*yy_cp = '\0'; \	(yy_c_buf_p) = yy_cp;#define YY_NUM_RULES 33#define YY_END_OF_BUFFER 34/* This struct is not used in this scanner,   but its presence is necessary. */struct yy_trans_info	{	flex_int32_t yy_verify;	flex_int32_t yy_nxt;	};static yyconst flex_int16_t yy_accept[61] =    {   0,        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,       34,    5,    4,    2,    3,    7,    8,    6,   32,   29,       31,   24,   28,   27,   26,   22,   17,   13,   16,   20,       22,   11,   12,   19,   19,   14,   22,   22,    4,    2,        3,    3,    1,    6,   32,   29,   31,   30,   24,   23,       26,   25,   15,   20,    9,   19,   19,   21,   10,   18    } ;static yyconst flex_int32_t yy_ec[256] =    {   0,        1,    1,    1,    1,    1,    1,    1,    1,    2,    3,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    2,    4,    5,    6,    1,    1,    7,    8,    9,       10,    1,    1,    1,   11,   12,   12,   13,   13,   13,       13,   13,   13,   13,   13,   13,   13,    1,    1,    1,       14,    1,    1,    1,   13,   13,   13,   13,   13,   13,       13,   13,   13,   13,   13,   13,   13,   13,   13,   13,       13,   13,   13,   13,   13,   13,   13,   13,   13,   13,        1,   15,    1,    1,   13,    1,   13,   13,   13,   13,       13,   13,   13,   13,   13,   13,   13,   13,   13,   13,       13,   13,   13,   13,   13,   13,   13,   13,   13,   13,       13,   13,    1,   16,    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,    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,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1    } ;extern int zconf_flex_debug;int zconf_flex_debug = 0;/* 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 *zconftext;/* * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> * Released under the terms of the GNU GPL v2.0. */#include <limits.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <unistd.h>#define LKC_DIRECT_LINK#include "lkc.h"#define START_STRSIZE	16static struct {	struct file *file;	int lineno;} current_pos;static char *text;static int text_size, text_asize;struct buffer {        struct buffer *parent;        YY_BUFFER_STATE state;};struct buffer *current_buf;static int last_ts, first_ts;static void zconf_endhelp(void);static void zconf_endfile(void);void new_string(void){	text = malloc(START_STRSIZE);	text_asize = START_STRSIZE;	text_size = 0;	*text = 0;}void append_string(const char *str, int size){	int new_size = text_size + size + 1;	if (new_size > text_asize) {		new_size += START_STRSIZE - 1;		new_size &= -START_STRSIZE;		text = realloc(text, new_size);		text_asize = new_size;	}	memcpy(text + text_size, str, size);	text_size += size;	text[text_size] = 0;}void alloc_string(const char *str, int size){	text = malloc(size + 1);	memcpy(text, str, size);	text[size] = 0;}#define INITIAL 0#define COMMAND 1#define HELP 2#define STRING 3#define PARAM 4#ifndef YY_NO_UNISTD_H/* Special case for "unistd.h", since it is non-ANSI. We include it way * down here because we want the user's section 1 to have been scanned first. * The user has a chance to override it with an option. */#include <unistd.h>#endif#ifndef YY_EXTRA_TYPE#define YY_EXTRA_TYPE void *#endif/* Macros after this point can all be overridden by user definitions in * section 1. */#ifndef YY_SKIP_YYWRAP#ifdef __cplusplusextern "C" int zconfwrap (void );#elseextern int zconfwrap (void );#endif#endif    static void yyunput (int c,char *buf_ptr  );#ifndef yytext_ptrstatic void yy_flex_strncpy (char *,yyconst char *,int );#endif#ifdef YY_NEED_STRLENstatic int yy_flex_strlen (yyconst char * );#endif#ifndef YY_NO_INPUT#ifdef __cplusplusstatic int yyinput (void );#elsestatic int input (void );#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( zconftext, zconfleng, 1, zconfout )#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) \	errno=0; \	while ( (result = read( fileno(zconfin), (char *) buf, max_size )) < 0 ) \	{ \		if( errno != EINTR) \		{ \			YY_FATAL_ERROR( "input in flex scanner failed" ); \			break; \		} \		errno=0; \		clearerr(zconfin); \	}\\#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/* end tables serialization structures and prototypes *//* Default declaration of generated scanner - a define so the user can * easily add parameters. */#ifndef YY_DECL#define YY_DECL_IS_OURS 1extern int zconflex (void);#define YY_DECL int zconflex (void)#endif /* !YY_DECL *//* Code executed at the beginning of each rule, after zconftext and zconfleng * 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_ACTION/** The main scanner function which does all the work. */YY_DECL{	register yy_state_type yy_current_state;	register char *yy_cp, *yy_bp;	register int yy_act;	int str = 0;	int ts, i;	if ( (yy_init) )		{		(yy_init) = 0;#ifdef YY_USER_INIT		YY_USER_INIT;#endif		if ( ! (yy_start) )			(yy_start) = 1;	/* first start state */		if ( ! zconfin )			zconfin = stdin;		if ( ! zconfout )			zconfout = stdout;		if ( ! YY_CURRENT_BUFFER ) {			zconfensure_buffer_stack ();			YY_CURRENT_BUFFER_LVALUE =				zconf_create_buffer(zconfin,YY_BUF_SIZE );		}		zconf_load_buffer_state( );		}	while ( 1 )		/* loops until end-of-file is reached */		{		yy_cp = (yy_c_buf_p);		/* Support of zconftext. */		*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:		while ( (yy_current_state = yy_nxt[yy_current_state][ yy_ec[YY_SC_TO_UI(*yy_cp)]  ]) > 0 )			++yy_cp;		yy_current_state = -yy_current_state;yy_find_action:		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 1:/* rule 1 can match eol */case 2:/* rule 2 can match eol */YY_RULE_SETUP{	current_file->lineno++;	return T_EOL;}	YY_BREAKcase 3:YY_RULE_SETUP	YY_BREAKcase 4:YY_RULE_SETUP{	BEGIN(COMMAND);}	YY_BREAKcase 5:YY_RULE_SETUP{	unput(zconftext[0]);	BEGIN(COMMAND);}	YY_BREAKcase 6:YY_RULE_SETUP{		struct kconf_id *id = kconf_id_lookup(zconftext, zconfleng);		BEGIN(PARAM);		current_pos.file = current_file;		current_pos.lineno = current_file->lineno;		if (id && id->flags & TF_COMMAND) {			zconflval.id = id;			return id->token;		}		alloc_string(zconftext, zconfleng);		zconflval.string = text;		return T_WORD;	}	YY_BREAKcase 7:YY_RULE_SETUP	YY_BREAKcase 8:/* rule 8 can match eol */YY_RULE_SETUP{		BEGIN(INITIAL);		current_file->lineno++;		return T_EOL;	}	YY_BREAKcase 9:YY_RULE_SETUPreturn T_AND;	YY_BREAKcase 10:YY_RULE_SETUPreturn T_OR;	YY_BREAKcase 11:YY_RULE_SETUPreturn T_OPEN_PAREN;	YY_BREAKcase 12:YY_RULE_SETUPreturn T_CLOSE_PAREN;	YY_BREAKcase 13:YY_RULE_SETUPreturn T_NOT;	YY_BREAKcase 14:YY_RULE_SETUPreturn T_EQUAL;	YY_BREAKcase 15:YY_RULE_SETUPreturn T_UNEQUAL;	YY_BREAKcase 16:YY_RULE_SETUP{		str = zconftext[0];		new_string();		BEGIN(STRING);	}	YY_BREAKcase 17:/* rule 17 can match eol */YY_RULE_SETUPBEGIN(INITIAL); current_file->lineno++; return T_EOL;	YY_BREAKcase 18:YY_RULE_SETUP/* ignore */	YY_BREAKcase 19:YY_RULE_SETUP{		struct kconf_id *id = kconf_id_lookup(zconftext, zconfleng);		if (id && id->flags & TF_PARAM) {			zconflval.id = id;			return id->token;		}		alloc_string(zconftext, zconfleng);		zconflval.string = text;		return T_WORD;	}	YY_BREAKcase 20:YY_RULE_SETUP/* comment */	YY_BREAKcase 21:/* rule 21 can match eol */YY_RULE_SETUPcurrent_file->lineno++;	YY_BREAKcase 22:YY_RULE_SETUP	YY_BREAKcase YY_STATE_EOF(PARAM):{		BEGIN(INITIAL);	}	YY_BREAKcase 23:/* rule 23 can match eol */*yy_cp = (yy_hold_char); /* undo effects of setting up zconftext */(yy_c_buf_p) = yy_cp -= 1;YY_DO_BEFORE_ACTION; /* set up zconftext again */YY_RULE_SETUP{		append_string(zconftext, zconfleng);		zconflval.string = text;		return T_WORD_QUOTE;	}	YY_BREAKcase 24:YY_RULE_SETUP{		append_string(zconftext, zconfleng);	}	YY_BREAKcase 25:/* rule 25 can match eol */*yy_cp = (yy_hold_char); /* undo effects of setting up zconftext */(yy_c_buf_p) = yy_cp -= 1;YY_DO_BEFORE_ACTION; /* set up zconftext again */YY_RULE_SETUP{		append_string(zconftext + 1, zconfleng - 1);		zconflval.string = text;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -