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

📄 scanner.c

📁 这是一个Linux下的集成开发环境
💻 C
📖 第 1 页 / 共 5 页
字号:
      yyErrorMessage (4);}#endif#ifdef xxGetLowerstatic	unsigned char	yyToLower	[] = {'\0', '\1', '\2', '\3', '\4', '\5', '\6', '\7','\10', '\11', '\12', '\13', '\14', '\15', '\16', '\17','\20', '\21', '\22', '\23', '\24', '\25', '\26', '\27','\30', '\31', '\32', '\33', '\34', '\35', '\36', '\37',' ', '!', '"', '#', '$', '%', '&', '\'', '(', ')', '*', '+', ',', '-', '.', '/','0', '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', '>', '?','@', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o','p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '[', '\\', ']', '^', '_','`', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o','p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '{', '|', '}','~','\177','\200', '\201', '\202', '\203', '\204', '\205', '\206', '\207','\210', '\211', '\212', '\213', '\214', '\215', '\216', '\217','\220', '\221', '\222', '\223', '\224', '\225', '\226', '\227','\230', '\231', '\232', '\233', '\234', '\235', '\236', '\237','\240', '\241', '\242', '\243', '\244', '\245', '\246', '\247','\250', '\251', '\252', '\253', '\254', '\255', '\256', '\257','\260', '\261', '\262', '\263', '\264', '\265', '\266', '\267','\270', '\271', '\272', '\273', '\274', '\275', '\276', '\277','\300', '\301', '\302', '\303', '\304', '\305', '\306', '\307','\310', '\311', '\312', '\313', '\314', '\315', '\316', '\317','\320', '\321', '\322', '\323', '\324', '\325', '\326', '\327','\330', '\331', '\332', '\333', '\334', '\335', '\336', '\337','\340', '\341', '\342', '\343', '\344', '\345', '\346', '\347','\350', '\351', '\352', '\353', '\354', '\355', '\356', '\357','\360', '\361', '\362', '\363', '\364', '\365', '\366', '\367','\370', '\371', '\372', '\373', '\374', '\375', '\376', '\377',};#endif#ifdef xxGetUpperstatic	unsigned char	yyToUpper	[] = {'\0', '\1', '\2', '\3', '\4', '\5', '\6', '\7','\10', '\11', '\12', '\13', '\14', '\15', '\16', '\17','\20', '\21', '\22', '\23', '\24', '\25', '\26', '\27','\30', '\31', '\32', '\33', '\34', '\35', '\36', '\37',' ', '!', '"', '#', '$', '%', '&', '\'', '(', ')', '*', '+', ',', '-', '.', '/','0', '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', '>', '?','@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O','P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '[', '\\', ']', '^', '_','`', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O','P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '{', '|', '}','~','\177','\200', '\201', '\202', '\203', '\204', '\205', '\206', '\207','\210', '\211', '\212', '\213', '\214', '\215', '\216', '\217','\220', '\221', '\222', '\223', '\224', '\225', '\226', '\227','\230', '\231', '\232', '\233', '\234', '\235', '\236', '\237','\240', '\241', '\242', '\243', '\244', '\245', '\246', '\247','\250', '\251', '\252', '\253', '\254', '\255', '\256', '\257','\260', '\261', '\262', '\263', '\264', '\265', '\266', '\267','\270', '\271', '\272', '\273', '\274', '\275', '\276', '\277','\300', '\301', '\302', '\303', '\304', '\305', '\306', '\307','\310', '\311', '\312', '\313', '\314', '\315', '\316', '\317','\320', '\321', '\322', '\323', '\324', '\325', '\326', '\327','\330', '\331', '\332', '\333', '\334', '\335', '\336', '\337','\340', '\341', '\342', '\343', '\344', '\345', '\346', '\347','\350', '\351', '\352', '\353', '\354', '\355', '\356', '\357','\360', '\361', '\362', '\363', '\364', '\365', '\366', '\367','\370', '\371', '\372', '\373', '\374', '\375', '\376', '\377',};#endifstatic void yyTab1	ARGS ((int yya));#define yyTab		yyTab1 (0)#define yyTab2(a,b)	yyTab1 (a)/* line 35 "java.rex" */#include <ctype.h>#include "Errors.h"#include "Parser.h"#if HAVE_STDLIB_H | defined _MSC_VER#include <stdlib.h>#endif#include "sn.h"#define HIGHLIGHT if (hl && isalpha (* TokenPtr)) { \	(void) fprintf (hlfp, "%d key %d.%d %d.%d\n", PAF_HIGH, \	Attribute.Position.Line, Attribute.Position.Column - 1, \	Attribute.Position.Line, Attribute.Position.Column + TokenLength - 1); }static	tPosition	StartPosition;void ErrorAttribute#if defined __STDC__ | defined __cplusplus (int Token, tScanAttribute * pAttribute)#else (Token, pAttribute) int Token; tScanAttribute * pAttribute;#endif{ pAttribute->Position = Attribute.Position; switch (Token) { case /* Identifier */ 1:  pAttribute->Identifier.ident = NoIdent		; ; break; case /* IntegerLiteral */ 2:  pAttribute->IntegerLiteral.value = 0			; ; break; case /* LongLiteral */ 3:  pAttribute->LongLiteral.value = 0			; ; break; case /* FloatingPointLiteral */ 4:  pAttribute->FloatingPointLiteral.value = PutString ("", 0)	; ; break; case /* DoubleLiteral */ 5:  pAttribute->DoubleLiteral.value = PutString ("", 0)	; ; break; case /* CharacterLiteral */ 6:  pAttribute->CharacterLiteral.value = PutString ("", 0)	; ; break; case /* StringLiteral */ 7:  pAttribute->StringLiteral.value = PutString ("", 0)	; ; break; }}#ifndef yySetPosition#define yySetPosition Attribute.Position.Line   = yyLineCount; \Attribute.Position.Column = (int) ((unsigned char *) TokenPtr - yyLineStart);#endif#undef yyTab#undef yyTab2#ifndef yyInitBufferSize#define yyInitBufferSize	1024 * 8 + 256#endif#ifndef yyInitFileStackSize#define yyInitFileStackSize	8#endif#ifndef yyTabSpace#define yyTabSpace		8#endifstatic void yyTab1#if defined __STDC__ | defined __cplusplus   (int yya)#else   (yya) int yya;#endif   { yyLineStart -= (yyTabSpace - 1 - ((unsigned char *) TokenPtr -	yyLineStart + yya - 1)) & (yyTabSpace - 1); }#define yyTab		yyLineStart -= (yyTabSpace - 1 - \((unsigned char *) TokenPtr - yyLineStart - 1)) & (yyTabSpace - 1)#define yyTab1(a)	yyLineStart -= (yyTabSpace - 1 - \((unsigned char *) TokenPtr - yyLineStart + (a) - 1)) & (yyTabSpace - 1)#define yyTab2(a,b)	yyLineStart -= (yyTabSpace - 1 - \((unsigned char *) TokenPtr - yyLineStart + (a) - 1)) & (yyTabSpace - 1)CreateArray1 (yyStateStack, yyInitStateStack, yyStateRange, yyInitBufferSize,   {yyDefaultState})static	unsigned long	yyStateStackSize= yyInitBufferSize;CreateArray1a (yyChBufferPtr, yyInitChBuffer, unsigned char, yyInitBufferSize) ={ 0.0, { '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0',	 '\0', '\0', '\0', '\0', '\0', '\0', '\0', yyEolCh, yyEobCh, '\0', }};CreateArray1b (yyChBufferPtr, yyInitChBuffer, unsigned char, yyInitBufferSize)static	unsigned char *	yyChBufferStart	= & yyInitChBuffer.yyArray [16];static	unsigned long	yyChBufferSize	= yyInitBufferSize;static	unsigned char *	yyChBufferIndex	= & yyInitChBuffer.yyArray [16];typedef	struct {	short		yySourceFile	;	rbool		yyEof		;	unsigned char *	yyChBufferPtr	;	unsigned char *	yyChBufferStart	;	unsigned long	yyChBufferSize	;	unsigned char *	yyChBufferIndex	;	long		yyBytesRead	;	long		yyFileOffset	;	unsigned int	yyLineCount	;	unsigned char *	yyLineStart	;	}		yytFileStack	;CreateArray2 (yyFileStack, yyInitFileStack, yytFileStack,   yyInitFileStackSize, {{0}})static	unsigned long	yyFileStackSize	= yyInitFileStackSize;static	yytFileStack *	yyFileStackPtr	= & yyInitFileStack.yyArray [1];int GetToken ARGS ((void)){   register	yyStateRange	yyState;   register	yyStateRange *	yyStatePtr;   register	unsigned char * yyChBufferIndexReg;   register	yyCombType * *	yyBasePtrReg = yyBasePtr;yyBegin:   yyState		= yyStartState;		/* initialize */   yyStatePtr		= & yyStateStack [1];   yyChBufferIndexReg	= yyChBufferIndex;   TokenPtr		= (char *) yyChBufferIndexReg;   /* ASSERT yyChBuffer [yyChBufferIndex] == first character */yyContinue:		/* continue after sentinel or skipping blanks */   for (;;) {		/* execute as many state transitions as possible */			/* determine next state and get next character */      register yyCombType * yyTablePtr =			(yyBasePtrReg [yyState] + * yyChBufferIndexReg ++);      if (yyTablePtr->yyCheck == yyState) {	 yyState = yyTablePtr->yyNext;	 * yyStatePtr ++ = yyState;		/* push state */	 goto yyContinue;      }      yyChBufferIndexReg --;			/* reconsider character */      if ((yyState = yyDefault [yyState]) == yyDNoState) break;   }   for (;;) {				/* search for last final state */      TokenLength =	    (int) (yyChBufferIndexReg - (unsigned char *) TokenPtr);      yyChBufferIndex = yyChBufferIndexReg;switch (* -- yyStatePtr) {case 317:;yySetPosition/* line 131 "java.rex" */{ yyStart (COMMENT); StartPosition = Attribute.Position; } yyy1: goto yyBegin;case 5:;case 21:;case 47:;case 49:;/* line 132 "java.rex" */{} yyy2: goto yyBegin;case 316:;yySetPosition/* line 133 "java.rex" */{ yyPrevious; if (hl) {	(void) fprintf (hlfp, "%d rem %d.%d %d.%d\n", PAF_HIGH,	StartPosition.Line, StartPosition.Column - 1,	Attribute.Position.Line, Attribute.Position.Column + 1); } } yyy3: goto yyBegin;case 17:;yySetPosition/* line 138 "java.rex" */{ if (hl) {	(void) fprintf (hlfp, "%d rem %d.%d %d.%d\n", PAF_HIGH,	Attribute.Position.Line, Attribute.Position.Column - 1,	Attribute.Position.Line, Attribute.Position.Column + TokenLength - 1); } } yyy4: goto yyBegin;case 9:;case 46:;/* line 143 "java.rex" */{} yyy5: goto yyBegin;case 6:;case 22:;case 45:;/* line 145 "java.rex" */{ yyEol (0); } yyy6: goto yyBegin;case 315:;yySetPosition/* line 147 "java.rex" */{  HIGHLIGHT; return 8; } yyy7: goto yyBegin;case 23:;yySetPosition/* line 148 "java.rex" */{  HIGHLIGHT; return 9; } yyy8: goto yyBegin;case 309:;yySetPosition/* line 149 "java.rex" */{  HIGHLIGHT; return 10; } yyy9: goto yyBegin;case 308:;yySetPosition/* line 150 "java.rex" */{  HIGHLIGHT; return 11; } yyy10: goto yyBegin;case 210:;yySetPosition/* line 151 "java.rex" */{  HIGHLIGHT; return 12; } yyy11: goto yyBegin;case 305:;yySetPosition/* line 152 "java.rex" */{  HIGHLIGHT; return 13; } yyy12: goto yyBegin;case 301:;yySetPosition/* line 153 "java.rex" */{  HIGHLIGHT; return 14; } yyy13: goto yyBegin;case 295:;yySetPosition/* line 154 "java.rex" */{  HIGHLIGHT; return 15; } yyy14: goto yyBegin;case 286:;yySetPosition/* line 155 "java.rex" */{  HIGHLIGHT; return 16; } yyy15: goto yyBegin;case 285:;yySetPosition/* line 156 "java.rex" */{  HIGHLIGHT; return 17; } yyy16: goto yyBegin;case 284:;yySetPosition/* line 157 "java.rex" */{  HIGHLIGHT; return 18; } yyy17: goto yyBegin;case 281:;yySetPosition/* line 158 "java.rex" */{  HIGHLIGHT; return 19; } yyy18: goto yyBegin;case 117:;yySetPosition/* line 159 "java.rex" */{  HIGHLIGHT; return 20; } yyy19: goto yyBegin;case 277:;yySetPosition/* line 160 "java.rex" */{  HIGHLIGHT; return 21; } yyy20: goto yyBegin;case 273:;yySetPosition/* line 161 "java.rex" */{  HIGHLIGHT; return 22; } yyy21: goto yyBegin;case 270:;yySetPosition/* line 162 "java.rex" */

⌨️ 快捷键说明

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