本文整理汇总了C++中ParserResult::isParseError方法的典型用法代码示例。如果您正苦于以下问题:C++ ParserResult::isParseError方法的具体用法?C++ ParserResult::isParseError怎么用?C++ ParserResult::isParseError使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ParserResult
的用法示例。
在下文中一共展示了ParserResult::isParseError方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: parseType
ParserResult<TypeRepr> Parser::parseTypeIdentifierWithRecovery(
Diag<> MessageID, Diag<TypeLoc> NonIdentifierTypeMessageID) {
ParserResult<TypeRepr> Ty = parseType(MessageID);
if (!Ty.isParseError() && !isa<IdentTypeRepr>(Ty.get()) &&
!isa<ErrorTypeRepr>(Ty.get())) {
diagnose(Ty.get()->getStartLoc(), NonIdentifierTypeMessageID, Ty.get())
.highlight(Ty.get()->getSourceRange());
Ty.setIsParseError();
Ty = makeParserResult(
Ty, new (Context) ErrorTypeRepr(Ty.get()->getSourceRange()));
}
assert(Ty.isNull() ||
isa<IdentTypeRepr>(Ty.get()) ||
isa<ErrorTypeRepr>(Ty.get()));
return Ty;
}