?? simplecompiler.h
字號:
// SimpleCompiler.h: interface for the CSimpleCompiler class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_SIMPLECOMPILER_H__BB589991_43A0_4739_BCBD_0F6BE8AED7B7__INCLUDED_)
#define AFX_SIMPLECOMPILER_H__BB589991_43A0_4739_BCBD_0F6BE8AED7B7__INCLUDED_
#include "Morpheme.h"
#include "Parsing.h"
#include "Semantic.h"
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
class CSimpleCompiler
{
public:
CSimpleCompiler();
CSimpleCompiler(CString strSourceFile);
virtual ~CSimpleCompiler();
public:
bool RunMorpheme(); //運行詞法分析,返回成功信息
bool RunParsing(); //運行語法分析,返回成功信息
bool RunSemantic(); //運行語義分析,返回成功信息
void SetSourceFile(CString strSourceFile); //設置源程序文件路徑
void SaveAll(); //保存符號表、token文件、錯誤信息表、四元式用于顯示
public:
PSTable GetSTable(); //返回符號表
PTokenNode GetTokenFile(); //返回token文件
PErrorNode GetErrorCollection(); //返回錯誤信息表
PFSymbol GetFSymbol(); //返回四元式表
private:
static const char *m_pWordCode[KEYWORDCOUNT+1]; //單詞編碼定義
void Dispose(); //釋放: 符號表,字符串表,token串表
char *TypeToString(SType type); //將type轉換成字符串
char *GetOPStr(EOP op); //根據操作類型返回操作符
private:
PSTable m_pSymbolTable; //符號表頭指針
PTokenNode m_pTokenFile; //token串頭指針
PErrorNode m_pErrorCollection; //錯誤信息頭指針
PFSymbol m_pFSymbol; //四元式表指針
/*
private:
CMorpheme *m_pMorpheme; //詞法分析器實例
CParsing *m_pParsing; //語法分析器實例
CSemantic *m_pSemantic; //語義分析器實例
bool m_readyMorpheme; //詞法分析準備完畢
bool m_readyParsing; //語法分析準備完畢
bool m_readySemantic; //語義分析準備完畢
bool m_alreadyMorpheme; //詞法分析分析完畢
bool m_alreadyParsing; //語法分析分析完畢
bool m_alreadySemantic; //語義分析分析完畢
*/
private:
CString m_strSourceFile; //源程序文件路徑
};
#endif // !defined(AFX_SIMPLECOMPILER_H__BB589991_43A0_4739_BCBD_0F6BE8AED7B7__INCLUDED_)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -