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

📄 pro__.g

📁 使用antlr实现c和pascal的转换
💻 G
字号:
lexer grammar PRO;@header {package test;}T45 : '(' ;T46 : ')' ;T47 : '.' ;T48 : ':' ;T49 : ';' ;T50 : ',' ;T51 : '[' ;T52 : '..' ;T53 : ']' ;T54 : 'OF' ;// $ANTLR src "PRO.g" 167PROGRAM	:	'program'|'Program'|'PROGRAM';
// $ANTLR src "PRO.g" 168VAR	:	'var'|'VAR'|'Var';
// $ANTLR src "PRO.g" 169ARRAY	:	'array'|'ARRAY'|'Array';
// $ANTLR src "PRO.g" 170OF	:	'of'|'OF'|'Of';
// $ANTLR src "PRO.g" 171FUNCTION:	'function'|'FUNCTON'|'Funtion';
// $ANTLR src "PRO.g" 172PROCEDURE
	:	'procedure'|'PROCEDURE'|'Procedure';	
// $ANTLR src "PRO.g" 174BEGIN	:	('BEGIN'|'Begin'|'begin');
// $ANTLR src "PRO.g" 175END	:	('END'|'End'|'end');
// $ANTLR src "PRO.g" 176IF	:	'IF'|'If'|'if';
// $ANTLR src "PRO.g" 177THEN	:	'THEN'|'Then'|'then';
// $ANTLR src "PRO.g" 178ELSE	:	'ELSE'|'Else'|'else';
// $ANTLR src "PRO.g" 179WHILE	:	'WHILE'|'While'|'while';
// $ANTLR src "PRO.g" 180DO	:	'DO'|'Do'|'do';
// $ANTLR src "PRO.g" 181NOT	:	'NOT'|'Not'|'not';
// $ANTLR src "PRO.g" 182EQUAL	:	'=';
// $ANTLR src "PRO.g" 183NEQ	:	'<>';
// $ANTLR src "PRO.g" 184SMALL	:	'<';
// $ANTLR src "PRO.g" 185GRAT	:	'>';
// $ANTLR src "PRO.g" 186NB	:	'<=';
// $ANTLR src "PRO.g" 187NS	:	'>=';
// $ANTLR src "PRO.g" 188ADDOPA	:	'+';
// $ANTLR src "PRO.g" 189ADDOPB	:	'-';
// $ANTLR src "PRO.g" 190OR	:	'OR'|'Or'|'or';
// $ANTLR src "PRO.g" 191MULOPA	:	'*';
// $ANTLR src "PRO.g" 192MULOPB	:	'/';
// $ANTLR src "PRO.g" 193DIV	:	'DIV'|'Div'|'div';
// $ANTLR src "PRO.g" 194MOD	:	'mod'|'MOD'|'Mod';
// $ANTLR src "PRO.g" 195AND	:	'AND'|'And'|'and';
// $ANTLR src "PRO.g" 196ASSIGNOP:	':=';
// $ANTLR src "PRO.g" 197INTEGER	:	'INTEGER'|'Integer'|'integer';
// $ANTLR src "PRO.g" 198REAL	:	'REAL'|'Real'|'real';
// $ANTLR src "PRO.g" 199SEPARATOR
	:	(' '|'\t'|NEWLINE)+;
// $ANTLR src "PRO.g" 201NEWLINE	:	'\r'? '\n' ;
// $ANTLR src "PRO.g" 202NUM	:	DIGITS OPTIONAL_FRACTION OPTIONAL_EXPONENT;
// $ANTLR src "PRO.g" 203OPTIONAL_FRACTION
	:	'.'DIGITS|;
// $ANTLR src "PRO.g" 205OPTIONAL_EXPONENT
	:	('E' ('+'|'-'|)DIGITS)|;
// $ANTLR src "PRO.g" 207ID	:	LETTER(LETTER|DIGIT)*;	
// $ANTLR src "PRO.g" 208DIGITS	:	DIGIT DIGIT*;
// $ANTLR src "PRO.g" 209LETTER	:	('a'..'z'|'A'..'Z') ;
// $ANTLR src "PRO.g" 210DIGIT	:	'0'..'9';
// $ANTLR src "PRO.g" 211WS
  : ( ' '
    | '\t'
    | '\f'

    // handle newlines
    | ( '\r\n'  // DOS/Windows
      | '\r'    // Macintosh
      | '\n'    // Unix
      )
      // increment the line count in the scanner
      //{ newline(); }
    )
    { skip(); }
  ;

⌨️ 快捷键说明

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