📄 parser.h
字号:
#pragma once
#include "scanner.h"
#define MYSPC_BEGIN namespace my_space{
#define MYSPC_END }
MYSPC_BEGIN
enum PSTATE{SUCCESS,MAERROR,DBZ};
class Parser{
public:
Parser(Scanner &sc):_scPtr(&sc){ _curTok=(_scPtr->_ts).front(); }
void Rebind(Scanner &sc){_scPtr=≻ _curTok=(_scPtr->_ts).front();}
PSTATE Parse();
double GetRe(){return _re;}
private:
Scanner *_scPtr;
double _re;
DSTATE _curTok;
void _Match(DSTATE expTok);
double _Exp();
double _Term();
double _Factor();
};
MYSPC_END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -