LLVM  10.0.0svn
Public Member Functions | Public Attributes | List of all members
llvm::remarks::RemarkParser Struct Referenceabstract

Parser used to parse a raw buffer to remarks::Remark objects. More...

#include "llvm/Remarks/RemarkParser.h"

Inheritance diagram for llvm::remarks::RemarkParser:
Inheritance graph
[legend]
Collaboration diagram for llvm::remarks::RemarkParser:
Collaboration graph
[legend]

Public Member Functions

 RemarkParser (Format ParserFormat)
 
virtual Expected< std::unique_ptr< Remark > > next ()=0
 If no error occurs, this returns a valid Remark object. More...
 
virtual ~RemarkParser ()=default
 

Public Attributes

Format ParserFormat
 The format of the parser. More...
 
std::string ExternalFilePrependPath
 Path to prepend when opening an external remark file. More...
 

Detailed Description

Parser used to parse a raw buffer to remarks::Remark objects.

Definition at line 39 of file RemarkParser.h.

Constructor & Destructor Documentation

◆ RemarkParser()

llvm::remarks::RemarkParser::RemarkParser ( Format  ParserFormat)
inline

Definition at line 45 of file RemarkParser.h.

◆ ~RemarkParser()

virtual llvm::remarks::RemarkParser::~RemarkParser ( )
virtualdefault

Member Function Documentation

◆ next()

virtual Expected<std::unique_ptr<Remark> > llvm::remarks::RemarkParser::next ( )
pure virtual

If no error occurs, this returns a valid Remark object.

If an error of type EndOfFileError occurs, it is safe to recover from it by stopping the parsing. If any other error occurs, it should be propagated to the user. The pointer should never be null.

Implemented in llvm::remarks::YAMLRemarkParser, and llvm::remarks::BitstreamRemarkParser.

Referenced by LLVMRemarkParserGetNext().

Member Data Documentation

◆ ExternalFilePrependPath

std::string llvm::remarks::RemarkParser::ExternalFilePrependPath

Path to prepend when opening an external remark file.

Definition at line 43 of file RemarkParser.h.

Referenced by llvm::remarks::BitstreamRemarkParser::classof().

◆ ParserFormat

Format llvm::remarks::RemarkParser::ParserFormat

The documentation for this struct was generated from the following file: