cppdyer.h

来自「这是一个很不错的词法语法分析器! 很适合计算机专业的大学生学习参考」· C头文件 代码 · 共 46 行

H
46
字号
// CppDyer.h: interface for the CppDyer class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_CPPDYER_H__D22E6047944D6CFD4F8B7D8CF361D3DB_B3C567CAD693__INCLUDED_)
#define AFX_CPPDYER_H__D22E6047944D6CFD4F8B7D8CF361D3DB_B3C567CAD693__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#pragma warning(disable:4786)

#include <string>
#include <map>
#include <vector>
#include <set>
#include "CppLex.h"

class CppDyer:public CppParser::Parser
{
	std::map<int,std::string> mPrefix;// 0 for global
	std::map<int,std::string> mSuffix;// 0 for global
	std::set<std::string> mExtraKeywords;
	std::string::size_type mLineNumberChars;
	std::string::size_type mLineNumberIndent;
	int mTabSpaces;
	std::map<std::string,int> mSpecialIdentifiers;
	std::vector<std::string> mSpecialIdentifierPrefix;
	std::vector<std::string> mSpecialIdentifierSuffix;
	void getBaseSettings(std::string iniFileName);
	void getSpecialSettings(std::string iniFileName);
	std::string mConvertingText;
	int mPositionInLine;
	int mLineNumber;
	std::string mLineNumberPrefix;
	std::string mLineNumberSuffix;
public:
	virtual void parse(CppParser::Type t,const std::string& s,const CppParser::Context&);
	CppDyer(std::string iniFileName);
	void processFile(std::string cppFileName);
	virtual ~CppDyer();
};

#endif // !defined(AFX_CPPDYER_H__D22E6047944D6CFD4F8B7D8CF361D3DB_B3C567CAD693__INCLUDED_)

⌨️ 快捷键说明

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