当前位置: 首页>>代码示例>>C++>>正文


C++ Scanner::identifier方法代码示例

本文整理汇总了C++中Scanner::identifier方法的典型用法代码示例。如果您正苦于以下问题:C++ Scanner::identifier方法的具体用法?C++ Scanner::identifier怎么用?C++ Scanner::identifier使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Scanner的用法示例。


在下文中一共展示了Scanner::identifier方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: parseIdentifier

void TypeParser::parseIdentifier(Scanner &scanner, QStack<Info *> &stack, QString &array, bool in_array, bool &colon_prefix) {
    if (in_array) {
        array = scanner.identifier();
    } else if (colon_prefix || stack.top()->qualified_name.isEmpty()) {
        stack.top()->qualified_name << scanner.identifier();
        colon_prefix = false;
    } else {
        //stack.top()->qualified_name.last().append(" " + scanner.identifier());
        QString identifier = scanner.identifier();
        QString &name = stack.top()->qualified_name.last();

        bool set = false;
        if (identifier != "int") set = true;

        // TODO: this handles only one case
        if (name != "short" && !name.endsWith(" short")
                && name != "long" && !name.endsWith(" long")) {
            set = true;
        }

        if (set) name.append(" " + identifier);
    }
}
开发者ID:qtjambi,项目名称:qtjambi-community-maven,代码行数:23,代码来源:typeparser.cpp

示例2: main

int main(int argc, char *argv[])
{
	ifstream inFile;
	ofstream outFile;

	bool error;
	string input;
	
	vector<Token>TokenList;

	Scanner analyze;

	inFile.open(argv[1]);
	outFile.open(argv[2]);

	while(getline(inFile,input))
	{
		error=analyze.identifier(input);

		if(error==true)
		{
			analyze.initiateError(outFile);
			return 0;
		}
	}
	TokenList=analyze.tokenify();

	Parser parse(TokenList);

	try
	{
		parse.parse();
	}

	catch(string a)
	{
		Token temp=outputError(parse);
		outFile<<"Failure!"<<endl;
		outFile<<"  "<<"("<<temp.getChar()<<","<<"\""<<temp.getInfo()<<"\""<<","<<temp.fetchLineNum()<<")"<<endl;
		return 0;
	}
	
	parse.outToFile(outFile);
	return 0;
}
开发者ID:kurtiscc,项目名称:Discrete-Structures,代码行数:45,代码来源:Main.cpp


注:本文中的Scanner::identifier方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。