亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? shell.slex

?? 操作系統開發,vxwork操作系統源代碼
?? SLEX
?? 第 1 頁 / 共 2 頁
字號:
/* shell.slex - small lex description for VxWorks shell *//*modification history--------------------02i,27nov01,pch  Provide floating-point exclusion based on _WRS_NO_TGT_SHELL_FP		 definition instead of testing a specific CPU type.02h,02mar95,yao  make floating point conditional for PPC403.02g,29aug94,ism  added ^M to nl char class so that PC scripts run (SPR#2899)02f,29aug94,ism  added \v and \a ansi escape sequences for strings (SPR#3690)02e,19aug92,jmm  fixed incorrect recognition of DATA symbols as TEXT02d,01aug92,srh  added check to match identifier against mangled C++ symbols.02c,30jul92,wmd  use N_TEXT to compare when checking for TEXT type symbol.02b,13dec91,gae  more ANSI cleanup.02a,19nov91,rrr  shut up some ansi warnings.01z,19nov91,rrr  shut up some warnings.01y,07oct91,rrr  added forward declaration for lexInit() (more forward).01x,10aug90,dnw  added forward declaration for lexInit().01w,08aug90,dnw  changed "%F" to "%lf" for ANSI compatibility.01v,10dec89,jcf  symbol table type now SYM_TYPE.01u,15oct88,dnw  improved support for Ada identifiers.		 made it conditional on sysAdaEnable.01t,09nov88,rdc  modifications to support ada identifiers.01s,30may88,dnw  changed to v4 names.01r,28may88,dnw  changed calls to atoi() and atof() to sscanf().01q,18mar88,gae  allowed '^' to occur in strings.01p,18nov87,gae  added T_UNKNOWN for undefined symbols.		 made shell float types default to double.01o,28oct87,gae  got rid of string type.01n,20oct87,gae  fixed lexScan() bug - used MAX_SHELL_LINE for temp. buffer.		   added scanning of octal chars, eg. '\377'.01m,07aug87,gae  fixed final state of octal.		 changed type specifiers to conventional C type casting.01l,01jun87,gae  added interpretation of bytes, words, floats, doubles.		 added type specifiers a la assembler, .[bwfdls].		 fixed table for "*=".01k,09jan87,gae  fixed '^', and '\^'.01j,24dec86,gae  added '->' back into table accidentally removed in 01h.01i,24nov86,llk  deleted SYSTEM conditional compiles.01h,08oct86,gae  added C assignment operators.01g,04jun86,dnw  changed sstLib calls to symLib.01f,11oct85,dnw  de-linted.01e,19jun85,dnw  added conditional compilation for BSD 4.2 load modules.01d,10sep84,dnw  included routines from lexLib directly in this module.		 fixed bug in automatic parens insertion.01c,29aug84,jlf  changed to treat "_" as a normal alphabetic character.01b,18aug84,dnw  changed to recognize and discard "/ * .... " style comments.		 changed to treat ';' like a NL for automatic insertion of ().01a,02aug84,dnw  written*/IMPORT BOOL sysAdaEnable;	/* TRUE = enable Ada support */IMPORT BOOL sysCplusEnable;	/* TRUE = enable C++ support */typedef enum		/* states for automatic insertion of parens in yylex */    {    FIRST_LEXEME,    NORMAL,    P_OPEN,    P_OPEN_DONE,    P_CLOSE,    P_CLOSE_DONE    } AUTO_STATE;LOCAL AUTO_STATE autoState;		/* state of auto parens mods */LOCAL char *nextChar;			/* ptr to next input char in line */LOCAL char tempStrings [MAX_SHELL_LINE];/* storage for strings while parsing */LOCAL char *nextTempString;		/* ptr to free space in tempStrings *//* forward declaration */static void lexNewLine (char *line);static int yylex (void);static char *addTempString (char *string);static void lexError (char *string, char *errmsg);static int getNum (char *string, char *fmtString, VALUE *pValue);static int getFloat (char *string, VALUE *pValue);static int getString (char *string, int nChars, VALUE *pValue);static int getChar (char *string, int nChars, VALUE *pValue);static int getId (char *string, VALUE *pValue);static int numAdaIdMatches (char *string, SYM_TYPE *pType, int *pValue);static BOOL countAdaIdMatch (char *symbol, int val, SYM_TYPE type, int arg);static BOOL printAdaIdMatch (char *symbol, int val, SYM_TYPE type, int arg);static BOOL adaIdMatch (char *symbol, char *id);static int typeCast (char *string);static int strToChar (char *string, char *pChar);static void lexInit (void);static int lexScan (void);static void lexRetract (void);CHAR CLASSES:			/* generates lexClass[] and lexNclasses *//* name  definition *//* ----  ---------- */    ws   SP \t    1-7  1-7    8-9  8 9    a-f  a-f A-F    xX   x X    g-z  g-w G-W y Y z Z _    eof  ^D EOF    nl	 \n ^M EOS/* char class 0 is always "other" */END#define RETRACT		lexRetract (); string[--nChars] = EOSFINAL STATES: 			/* generates lexActions() *//* name action *//* ---- ---------------------- */    WS	{ RETRACT;	}    O	{ RETRACT;	return (string[0]); }    I	{ 		return (string[0]); }    EN	{ 		lexError(string, "invalid number"); return(LEX_ERROR); }    ES	{		lexError(string, "invalid string"); return(LEX_ERROR); }    EC	{		lexError(string, "invalid char");   return(LEX_ERROR); }    ON	{ RETRACT;	return (getNum (string, "%o", &yylval)); }    XN	{ RETRACT;	return (getNum (&string[2], "%x", &yylval)); }    $N	{ RETRACT;	return (getNum (&string[1], "%x", &yylval)); }    DN	{ RETRACT;	return (getNum (string, "%d", &yylval)); }    FN	{ RETRACT;	return (getFloat (string, &yylval)); }    ID	{ RETRACT;	return (getId (string, &yylval)); }    ST	{		return (getString (string, nChars, &yylval)); }    CH	{		return (getChar (string, nChars, &yylval)); }    ||	{		return (OR); }    &&	{		return (AND); }    ==	{		return (EQ); }    !=	{		return (NE); }    >=	{		return (GE); }    <=	{		return (LE); }    >>	{ RETRACT;	return (ROT_RIGHT); }    <<	{ RETRACT;	return (ROT_LEFT); }    ->	{		return (PTR); }    ++	{		return (INCR); }    --	{		return (DECR); }    +=	{		return (ADDA); }    -=	{		return (SUBA); }    *=	{		return (MULA); }    /=	{		return (DIVA); }    %=	{		return (MODA); }    <A	{		return (SHLA); }    >A	{		return (SHRA); }    &=	{		return (ANDA); }    |=	{		return (ORA); }    ^=	{		return (XORA); }    NL	{		return (NL); }    EOF	{		return (ENDFILE); }ENDSTATE TABLE:			/* generates lexStateTable[] *//*   0   1      2   3   4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 */ other ws  0  1-7 8-9 a-f xX g-z .  \  "  '  $  |  &  =  !  >  <  -  +  /  *  %   ^ nl eof/*  -- -- --- --- --- --- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --  -- -- ---*/ini  I ws  0  dec dec  id id id .D  I  "  '  $  |  &  =  !  >  <  -  +  s  *  %   ^ NL EOFws  WS  .  WS  WS  WS  WS WS WS WS WS WS WS WS WS WS WS WS WS WS WS WS WS WS WS WS WS WS0   DN DN oct oct  EN  EN 0x EN .N DN DN DN DN DN DN DN DN DN DN DN DN DN DN DN DN DN DNoct ON ON  .   .   EN  EN EN EN ON ON ON ON ON ON ON ON ON ON ON ON ON ON ON ON ON ON ON0x  EN EN 0xh 0xh 0xh 0xh EN EN EN EN EN EN EN EN EN EN EN EN EN EN EN EN EN EN EN EN EN0xh XN XN  .   .   .   .  EN EN EN XN XN XN XN XN XN XN XN XN XN XN XN XN XN XN XN XN XN$   EN EN  $h  $h  $h  $h EN EN EN EN EN EN EN EN EN EN EN EN EN EN EN EN EN EN EN EN EN$h  $N $N  .   .   .   .  EN EN EN $N $N $N $N $N $N $N $N $N $N $N $N $N $N $N $N $N $Ndec DN DN  .   .   .   EN EN EN .N DN DN DN DN DN DN DN DN DN DN DN DN DN DN DN DN DN DN.D FN  FN  .N  .N  .N  EN EN EN EN FN FN FN FN FN FN FN FN FN FN FN FN FN FN FN FN FN FN.N  FN FN  .   .   .   EN EN EN EN FN FN FN FN FN FN FN FN FN FN FN FN FN FN FN FN FN FNid  ID ID  .   .   .   .   .  . ID ID ID ID ID ID ID ID ID ID ID ID ID ID ID ID ID ID ID"    .  .  .   .   .   .   .  .  . "\ ST  .  .  .  .  .  .  .  .  .  .  .  .  .  . ES ES"\   "  "  "   "   "   "   "  "  "  "  "  "  "  "  "  "  "  "  "  "  "  "  "  "  . ES ES'    .  .  .   .   .   .   .  .  . '\  . CH  .  .  .  .  .  .  .  .  .  .  .  .  . EC EC'\   '  '  '   '   '   '   '  '  '  '  '  '  '  '  '  '  '  '  '  '  '  '  '  '  ' EC ECs    O  O  O   O   O   O   O  O  O  O  O  O  O  O  O /=  O  O  O  O  O  O s*  O  O  O  Os*   .  .  .   .   .   .   .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . s+  .  .  .  .s+  s* s* s*  s*  s* s* s* s* s* s* s* s* s* s* s* s* s* s* s* s* s* ini s* s* s* s* s*|    O  O  O   O   O  O   O  O  O  O  O  O  O ||  O |=  O  O  O  O  O  O  O  O  O  O  O&    O  O  O   O   O  O   O  O  O  O  O  O  O  O && &=  O  O  O  O  O  O  O  O  O  O  O=    O  O  O   O   O  O   O  O  O  O  O  O  O  O  O ==  O  O  O  O  O  O  O  O  O  O  O!    O  O  O   O   O  O   O  O  O  O  O  O  O  O  O !=  O  O  O  O  O  O  O  O  O  O  O>    O  O  O   O   O  O   O  O  O  O  O  O  O  O  O >=  O >X  O  O  O  O  O  O  O  O  O<    O  O  O   O   O  O   O  O  O  O  O  O  O  O  O <=  O  O <X  O  O  O  O  O  O  O  O-    O  O  O   O   O  O   O  O  O  O  O  O  O  O  O -=  O ->  O --  O  O  O  O  O  O  O+    O  O  O   O   O  O   O  O  O  O  O  O  O  O  O +=  O  O  O  O ++  O  O  O  O  O  O*    O  O  O   O   O  O   O  O  O  O  O  O  O  O  O *=  O  O  O  O  O  O  O  O  O  O  O%    O  O  O   O   O  O   O  O  O  O  O  O  O  O  O %=  O  O  O  O  O  O  O  O  O  O  O^    O  O  O   O   O  O   O  O  O  O  O  O  O  O  O ^=  O  O  O  O  O  O  O  O  O  O  O>X  >> >> >>  >>  >> >>  >> >> >> >> >> >> >> >> >> >A >> >> >> >> >> >> >> >> >> >> >><X  << << <<  <<  << <<  << << << << << << << << << <A << << << << << << << << << << <<ENDEJECT:END/********************************************************************************* lexNewLine - initialize for lexical scan of new line** RETURNS: N/A*/LOCAL void lexNewLine    (    char *line    )    {    lexInit ();    nextChar = line;    nextTempString = tempStrings;    autoState = FIRST_LEXEME;    }/********************************************************************************* yylex - get next lexeme for yacc** This routine is called by yacc to get the next input lexeme.* In addition to simply calling lexScan to do the scan, this routine* also handles the automatic insertion of parens around the arguements* of a "top-level" routine call.  If the first lexeme scanned from a new* line is a T_SYMBOL (text id) and the second lexeme is NOT a '(',* then the second lexeme is withheld and a '(' returned instead.* The withheld lexeme is returned next.  Scanning then proceeds normally* until a NL (newline) lexeme is scanned.  The NL is withheld and a* ')' is returned instead, with the NL being returned next.** RETURNS: next lexeme.*/LOCAL int yylex (void)    {    static int heldCode;    FAST int code;    switch (autoState)	{        case FIRST_LEXEME:		/* first lex scan of new line */	    code = lexScan ();	    autoState = (code == T_SYMBOL) ? P_OPEN : NORMAL;	    break;	case NORMAL:			/* parens not required to be inserted */	    code = lexScan ();	    if (code == ';')		autoState = FIRST_LEXEME;	    break;	case P_OPEN:			/* looking for '(' */	    code = lexScan ();	    if (code == '(')		autoState = NORMAL;	    else		{		heldCode = code;		code = '(';		autoState = P_OPEN_DONE;		}	    break;	case P_OPEN_DONE:		/* artificial '(' has been returned */	    if ((heldCode == NL) || (heldCode == ';'))		{		code = ')';		autoState = P_CLOSE_DONE;		}	    else		{		code = heldCode;		autoState = P_CLOSE;		}	    break;	case P_CLOSE:			/* looking for NL or ';' */	    code = lexScan ();	    if ((code == NL) || (code == ';'))		{		heldCode = code;		code = ')';		autoState = P_CLOSE_DONE;		}	    break;	case P_CLOSE_DONE:		/* artificial ')' has been returned */	    code = heldCode;	    autoState = FIRST_LEXEME;	    break;	default:	    printf ("yylex: invalid state %#x\n", autoState);	    code = 0;	/* invalid? */	    break;	}    return (code);    }/********************************************************************************* addTempString - add string to temporary storage** This routine adds the specified string to the during-parse temporary* string storage.** RETURNS: pointer to new string appended to temporary area.*/LOCAL char *addTempString    (    char *string    )    {    char *newString = nextTempString;    while (*string != EOS)	string += strToChar (string, nextTempString++);    *(nextTempString++) = EOS;    return (newString);    }/********************************************************************************* lexError - report error in lex scan** RETURNS: N/A*/LOCAL void lexError    (    char *string,    char *errmsg    )    {    printf ("%s: %s\n", errmsg, string);    }/********************************************************************************* getNum - interpret scanned string as integer** RETURNS: NUMBER*/LOCAL int getNum    (    char *string,    char *fmtString,    VALUE *pValue    )    {    pValue->side = RHS;    pValue->type = T_INT;    sscanf (string, fmtString, &pValue->value.rv);    return (NUMBER);    }/********************************************************************************* getFloat - interpret scanned string as float** RETURNS: FLOAT*/LOCAL int getFloat    (    char *string,    VALUE *pValue    )    {#ifndef	_WRS_NO_TGT_SHELL_FP    pValue->side = RHS;    pValue->type = T_DOUBLE;    sscanf (string, "%lf", &pValue->value.dp);#endif	/* _WRS_NO_TGT_SHELL_FP */    return (FLOAT);    }/********************************************************************************* getString - interpret scanned string as quoted string** RETURNS: STRING*/LOCAL int getString    (    char *string,    int nChars,    VALUE *pValue    )    {    pValue->side = RHS;    pValue->type = T_INT;    string [nChars - 1] = EOS;    pValue->value.rv = (int)addTempString (&string[1]);    return (STRING);    }/********************************************************************************* getChar - interpret scanned string as quoted character** RETURNS: CHAR*/LOCAL int getChar    (    char *string,    int nChars,    VALUE *pValue    )    {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
26uuu精品一区二区三区四区在线| 91官网在线观看| 一级精品视频在线观看宜春院 | 久久久国产一区二区三区四区小说 | 国产精品一区二区在线观看不卡 | 亚洲精品一区二区三区香蕉| 色中色一区二区| 色诱亚洲精品久久久久久| 色诱亚洲精品久久久久久| 欧美色综合天天久久综合精品| 男女男精品网站| 国内外成人在线| 丁香天五香天堂综合| jlzzjlzz亚洲日本少妇| 欧美中文字幕一区二区三区亚洲| 天堂久久一区二区三区| 午夜日韩在线观看| 美女性感视频久久| 成a人片国产精品| 在线亚洲欧美专区二区| 日韩精品中午字幕| 中文成人综合网| 午夜精品一区在线观看| 久久爱www久久做| 99视频精品免费视频| 欧美人狂配大交3d怪物一区| 久久久久久久精| 玉足女爽爽91| 精品一区二区三区不卡| 99久久精品一区| 日韩亚洲欧美在线| 亚洲男同性恋视频| 久久av中文字幕片| 91国偷自产一区二区开放时间 | 国产精品理伦片| 亚洲精品日韩综合观看成人91| 精品国产一区二区精华| 一区在线播放视频| 久久精品99国产精品日本| 成人黄色在线网站| 日韩一级片在线观看| 亚洲日本免费电影| 久草在线在线精品观看| 在线一区二区视频| 欧美国产日韩亚洲一区| 免费欧美日韩国产三级电影| 色综合视频一区二区三区高清| 成人精品一区二区三区四区 | 欧美在线观看视频在线| 国产亚洲精品精华液| 亚洲mv大片欧洲mv大片精品| 成人中文字幕合集| 欧美一区二区三区在线观看视频| 欧美中文字幕一区二区三区| 中文字幕第一区综合| 精品一区二区免费在线观看| 色噜噜夜夜夜综合网| 久久综合999| 美女视频网站久久| 欧美日韩国产另类一区| 亚洲精品欧美综合四区| 99国产精品久| 亚洲少妇最新在线视频| 国产成人精品综合在线观看| 精品国产一区二区三区忘忧草| 精品国产成人系列| 日韩在线播放一区二区| 在线视频一区二区三| 一区二区三区在线免费视频| 91色九色蝌蚪| 亚洲精品中文在线观看| 99精品视频在线观看| 国产精品美女久久福利网站| 成人精品国产一区二区4080| 国产精品久久久久久久久晋中| 亚洲视频免费在线观看| 99精品桃花视频在线观看| 国产欧美综合在线观看第十页| 亚洲区小说区图片区qvod| 99re成人在线| 国产精品国产精品国产专区不蜜| 亚洲在线免费播放| 国产福利精品导航| 久久女同性恋中文字幕| 国模无码大尺度一区二区三区| 风间由美一区二区av101| 国产日韩欧美激情| kk眼镜猥琐国模调教系列一区二区| 在线视频你懂得一区二区三区| 色婷婷av一区二区三区gif| 亚洲欧美色一区| 欧美日韩免费电影| 日韩福利电影在线观看| 精品处破学生在线二十三| 国产成人久久精品77777最新版本| 99re成人精品视频| 视频一区在线播放| 久久精品一区二区| 成人18视频在线播放| 亚洲国产cao| 精品卡一卡二卡三卡四在线| 国产传媒一区在线| 亚洲伊人色欲综合网| 久久久久久免费网| 91久久免费观看| 麻豆91在线播放免费| 国产欧美日韩精品在线| 欧美日韩不卡在线| 丁香六月综合激情| 视频在线观看一区| 中文字幕视频一区二区三区久| 三级久久三级久久久| 国产日韩欧美一区二区三区乱码| 亚洲国产成人高清精品| 国产午夜精品理论片a级大结局| 视频一区在线播放| 中文字幕在线观看一区| 欧美色综合天天久久综合精品| 国产精品剧情在线亚洲| 777午夜精品视频在线播放| 成人免费高清在线| 日本aⅴ精品一区二区三区| 中文字幕亚洲电影| 久久久久一区二区三区四区| 欧美另类z0zxhd电影| 成人激情开心网| 精品亚洲porn| 三级欧美韩日大片在线看| 亚洲欧美日韩中文字幕一区二区三区 | 午夜视频一区二区| 中文字幕一区二区三区不卡在线 | 亚洲色图欧美激情| 久久青草国产手机看片福利盒子| 午夜激情一区二区| 亚洲人成精品久久久久久| 日韩一区二区电影在线| 欧美日韩一区不卡| 色老汉一区二区三区| thepron国产精品| 高清视频一区二区| 国产精选一区二区三区| 韩国女主播成人在线| 老司机午夜精品99久久| 日韩精品亚洲一区| 亚洲妇熟xx妇色黄| 香蕉影视欧美成人| 五月激情六月综合| 午夜视频在线观看一区二区三区 | 亚洲成a天堂v人片| ...xxx性欧美| 亚洲欧洲日韩在线| 国产精品乱人伦中文| 欧美国产国产综合| 精品国产乱码久久久久久闺蜜| 国产99一区视频免费| 国产在线精品一区二区三区不卡| 久久久不卡网国产精品二区| 91精品国产品国语在线不卡| 欧美一区二区视频免费观看| 欧美一区二区三区爱爱| 日韩精品专区在线影院观看 | 一区二区三区在线不卡| 亚洲男女毛片无遮挡| 一区二区三区电影在线播| 自拍偷拍欧美精品| 亚洲精品国产a| 亚洲午夜电影在线| 日韩和欧美的一区| 国产精品白丝jk白祙喷水网站| 夜夜操天天操亚洲| 亚洲大型综合色站| 久久99久久99小草精品免视看| 中文字幕中文字幕一区二区 | 美女在线观看视频一区二区| 另类欧美日韩国产在线| 久久国产精品露脸对白| 国内精品国产成人| 91视频精品在这里| 欧美日韩精品欧美日韩精品一综合 | 一区二区三区在线视频播放| 亚洲免费av在线| 天堂影院一区二区| 国产不卡在线播放| 91电影在线观看| 日韩欧美不卡在线观看视频| 国产欧美精品区一区二区三区| 欧美一区欧美二区| 久久久精品tv| 一区二区三区四区乱视频| 免费成人性网站| 97aⅴ精品视频一二三区| 日韩一区和二区| 亚洲人精品一区| 国产在线精品一区二区| 欧美无砖专区一中文字| 中文乱码免费一区二区| 日韩黄色片在线观看| 色综合久久久久久久久久久| 日韩精品一区二区在线| 一卡二卡三卡日韩欧美|