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

📄 scanner.h

📁 用于词法分析的词法分析器
💻 H
字号:
/*  $Id: Scanner.h,v 1.4 1997/02/02 01:30:59 matt Exp $  Scanner base class.  (c) Apr 96 Matt Phillips.  */#ifndef _SCANNER_H#define _SCANNER_H#include "BufferedInputStream.h"#include "ErrorMessage.h"class Scanner{public:  enum {SymEOF = -1};  Scanner (BufferedInputStream &i, ErrorMessageList &e)    : input (i), errors (e) {symLine = symCol = 0;}  int eof () const {return symbol == SymEOF;}  void getNext () {}  string getFilename () const {return input.getFilename ();}  int getSymbol () const {return symbol;}  int getSymbolLine () const {return symLine;}  int getSymbolColumn () const {return symCol;}  int getLine () const {return input.getLine ();}  int getColumn () const {return input.getColumn ();}  const string &getText () const {return input.getBuffer ();}  char getText (int pos) const {return input.getBuffer (pos);}  int getTextLen () const {return input.getBufferSize ();}  BufferedInputStream &getInput () {return input;}protected:  int symbol;  int symLine, symCol;  BufferedInputStream &input;  ErrorMessageList &errors;  void error (const char *msg)  {    errors.error (string (msg), input.getFilename (),		  symLine, symCol);  }  void warning (const char *msg)  {    errors.warning (string (msg), input.getFilename (),		    symLine, symCol);  }   };#endif

⌨️ 快捷键说明

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