本文整理汇总了C++中NxsToken::ProcessAsCommand方法的典型用法代码示例。如果您正苦于以下问题:C++ NxsToken::ProcessAsCommand方法的具体用法?C++ NxsToken::ProcessAsCommand怎么用?C++ NxsToken::ProcessAsCommand使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NxsToken
的用法示例。
在下文中一共展示了NxsToken::ProcessAsCommand方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: SkipCommand
void NxsBlock::SkipCommand(NxsToken & token)
{
if (nexusReader)
{
errormsg = "Skipping command: ";
errormsg << token.GetTokenReference();
nexusReader->NexusWarnToken(errormsg, NxsReader::SKIPPING_CONTENT_WARNING, token);
errormsg.clear();
}
if (!token.Equals(";"))
SkippingCommand(token.GetToken());
if (storeSkippedCommands)
{
ProcessedNxsCommand pnc;
token.ProcessAsCommand(&pnc);
skippedCommands.push_back(pnc);
}
else
token.ProcessAsCommand(NULL);
}
示例2: ReadUntilEndblock
/*! Used internally to skip until teh END; or ENDBLOCK; command. */
bool NxsReader::ReadUntilEndblock(NxsToken &token, const std::string & )
{
for (;; )
{
token.GetNextToken();
if (token.Equals("END") || token.Equals("ENDBLOCK"))
{
token.GetNextToken();
if (!token.Equals(";"))
{
std::string errormsg = "Expecting ';' after END or ENDBLOCK command, but found ";
errormsg += token.GetToken();
errormsg += " instead";
NexusError(NxsString(errormsg.c_str()), token.GetFilePosition(), token.GetFileLine(), token.GetFileColumn());
return false;
}
return true;
}
else
{
token.ProcessAsCommand(NULL);
}
}
}