scanner.h
来自「用于词法分析的词法分析器」· C头文件 代码 · 共 60 行
H
60 行
/* $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 + =
减小字号Ctrl + -
显示快捷键?