本文整理汇总了C++中ArgumentList::clear方法的典型用法代码示例。如果您正苦于以下问题:C++ ArgumentList::clear方法的具体用法?C++ ArgumentList::clear怎么用?C++ ArgumentList::clear使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ArgumentList
的用法示例。
在下文中一共展示了ArgumentList::clear方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ReadFunctionArguments
void ParserThread::ReadFunctionArguments(ArgumentList &args)
{
//TKN_L_PAREN
args.clear();
ConsumeToken();//remove the first TKN_L_PAREN
PushContext();
m_Context.parseType = FunctionParameter;
DoParse();
PopContext();
}
示例2: ParseArgumentList
bool ParserThread::ParseArgumentList(ArgumentList &argumentList)
{
// do nothing on the argumentList, just do the loop
if(PeekToken()->type_id() != TKN_LESS)
return true;
// shoud be a (xxxx) or <xxxxx>
Token * tk = ConsumeToken();
TRACE("ParserThread::ParseArgumentList() Enter...");
int level = 1;
argumentList.clear();
argumentList.push_back(*tk); // push <while(true)
while(true)
{
tk = PeekToken();//
if(tk->type_id() == TKN_LESS)
{
ConsumeToken();
argumentList.push_back(*tk);
level++;
}
else if (tk->type_id() == TKN_GREATER)
{
level--;
ConsumeToken();
argumentList.push_back(*tk);
if(level <= 0)
break;
}
else if(tk->type_id()==TKN_SEMICOLON || tk->type_id()==TKN_R_BRACE)
{
m_Context.EndStatement();
return false;
}
else
{
//std::cout<<*tk<<std::endl;
argumentList.push_back(*tk);
ConsumeToken();
}
}
//cout<<"currentToken"<<*(CurrentToken())<<endl;
TRACE("ParserThread::ParseArgumentList() Leave...");
return true;
}