LLVM: llvm::remarks::BitstreamMetaParserHelper Class Reference (original) (raw)

Helper to parse a META_BLOCK for a bitstream remark container. More...

#include "[Remarks/BitstreamRemarkParser.h](BitstreamRemarkParser%5F8h%5Fsource.html)"

Inheritance diagram for llvm::remarks::BitstreamMetaParserHelper:

Public Member Functions
BitstreamMetaParserHelper (BitstreamCursor &Stream)
Public Member Functions inherited from llvm::remarks::BitstreamBlockParserHelper< BitstreamMetaParserHelper >
Error parseBlock ()
Enter, parse, and leave this bitstream block.
Public Member Functions inherited from llvm::remarks::BitstreamBlockParserHelperBase
BitstreamBlockParserHelperBase (BitstreamCursor &Stream, unsigned BlockID, StringRef BlockName)
template<typename... Ts>
Error error (char const *Fmt, const Ts &...Vals)
Error expectBlock ()
Public Attributes
std::optional< ContainerInfo > Container
The parsed content: depending on the container type, some fields might be empty.
std::optional< uint64_t > RemarkVersion
std::optional< StringRef > ExternalFilePath
std::optional< StringRef > StrTabBuf
Protected Member Functions
Error parseRecord (unsigned Code)
Protected Member Functions inherited from llvm::remarks::BitstreamBlockParserHelper< BitstreamMetaParserHelper >
BitstreamBlockParserHelperBase (BitstreamCursor &Stream, unsigned BlockID, StringRef BlockName)
BitstreamMetaParserHelper & derived ()
Error parseRecord (unsigned Code)=delete
Parse a record and fill in the fields in the parser.
Error parseSubBlock (unsigned Code)
Parse a subblock and fill in the fields in the parser.
Protected Member Functions inherited from llvm::remarks::BitstreamBlockParserHelperBase
Error enterBlock ()
Error unknownRecord (unsigned AbbrevID)
Error unexpectedRecord (StringRef RecordName)
Error malformedRecord (StringRef RecordName)
Error unexpectedBlock (unsigned Code)

Detailed Description

Helper to parse a META_BLOCK for a bitstream remark container.

Definition at line 113 of file BitstreamRemarkParser.h.

Constructor & Destructor Documentation

llvm::remarks::BitstreamMetaParserHelper::BitstreamMetaParserHelper ( BitstreamCursor & Stream) inline

Member Function Documentation

parseRecord()

Error BitstreamMetaParserHelper::parseRecord ( unsigned Code) protected

Definition at line 83 of file BitstreamRemarkParser.cpp.

References Container, llvm::remarks::CurrentContainerVersion, llvm::remarks::CurrentRemarkVersion, ExternalFilePath, llvm::remarks::BitstreamBlockParserHelperBase::malformedRecord(), llvm::remarks::MetaContainerInfoName(), llvm::remarks::MetaExternalFileName(), llvm::remarks::MetaRemarkVersionName(), llvm::remarks::MetaStrTabName(), llvm::remarks::RECORD_META_CONTAINER_INFO, llvm::remarks::RECORD_META_EXTERNAL_FILE, llvm::remarks::RECORD_META_REMARK_VERSION, llvm::remarks::RECORD_META_STRTAB, RemarkVersion, llvm::remarks::BitstreamBlockParserHelperBase::Stream, StrTabBuf, llvm::Error::success(), llvm::Expected< T >::takeError(), and llvm::remarks::BitstreamBlockParserHelperBase::unknownRecord().

BitstreamBlockParserHelper< BitstreamMetaParserHelper >

Definition at line 83 of file BitstreamRemarkParser.h.

References llvm::remarks::BitstreamBlockParserHelper< Derived >::derived(), E(), llvm::BitstreamEntry::EndBlock, llvm::remarks::BitstreamBlockParserHelperBase::enterBlock(), llvm::BitstreamEntry::Error, error, llvm_unreachable, llvm::Next, llvm::remarks::BitstreamBlockParserHelper< Derived >::parseRecord(), llvm::remarks::BitstreamBlockParserHelper< Derived >::parseSubBlock(), llvm::BitstreamEntry::Record, llvm::remarks::BitstreamBlockParserHelperBase::Stream, llvm::BitstreamEntry::SubBlock, and llvm::Error::success().

Member Data Documentation

Container

std::optional<ContainerInfo> llvm::remarks::BitstreamMetaParserHelper::Container

ExternalFilePath

std::optional<StringRef> llvm::remarks::BitstreamMetaParserHelper::ExternalFilePath

RemarkVersion

std::optional<uint64_t> llvm::remarks::BitstreamMetaParserHelper::RemarkVersion

StrTabBuf

std::optional<StringRef> llvm::remarks::BitstreamMetaParserHelper::StrTabBuf


The documentation for this class was generated from the following files: