LLVM 19.0.0git
Public Member Functions | Public Attributes | List of all members
llvm::remarks::BitstreamMetaParserHelper Struct Reference

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

#include "llvm/Remarks/BitstreamRemarkParser.h"

Public Member Functions

 BitstreamMetaParserHelper (BitstreamCursor &Stream, BitstreamBlockInfo &BlockInfo)
 Continue parsing with Stream.
 
Error parse ()
 Parse the META_BLOCK and fill the available entries.
 

Public Attributes

BitstreamCursorStream
 The Bitstream reader.
 
BitstreamBlockInfoBlockInfo
 Reference to the storage for the block info.
 
std::optional< uint64_tContainerVersion
 The parsed content: depending on the container type, some fields might be empty.
 
std::optional< uint8_t > ContainerType
 
std::optional< StringRefStrTabBuf
 
std::optional< StringRefExternalFilePath
 
std::optional< uint64_tRemarkVersion
 

Detailed Description

Helper to parse a META_BLOCK for a bitstream remark container.

Definition at line 29 of file BitstreamRemarkParser.h.

Constructor & Destructor Documentation

◆ BitstreamMetaParserHelper()

BitstreamMetaParserHelper::BitstreamMetaParserHelper ( BitstreamCursor Stream,
BitstreamBlockInfo BlockInfo 
)

Continue parsing with Stream.

Stream is expected to contain a ENTER_SUBBLOCK to the META_BLOCK at the current position. Stream is expected to have a BLOCKINFO_BLOCK set.

Definition at line 38 of file BitstreamRemarkParser.cpp.

Member Function Documentation

◆ parse()

Error BitstreamMetaParserHelper::parse ( )

Parse the META_BLOCK and fill the available entries.

This helper does not check for the validity of the fields.

Definition at line 202 of file BitstreamRemarkParser.cpp.

References llvm::remarks::META_BLOCK_ID, and parseBlock().

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

Member Data Documentation

◆ BlockInfo

BitstreamBlockInfo& llvm::remarks::BitstreamMetaParserHelper::BlockInfo

Reference to the storage for the block info.

Definition at line 33 of file BitstreamRemarkParser.h.

◆ ContainerType

std::optional<uint8_t> llvm::remarks::BitstreamMetaParserHelper::ContainerType

Definition at line 37 of file BitstreamRemarkParser.h.

Referenced by parseRecord().

◆ ContainerVersion

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

The parsed content: depending on the container type, some fields might be empty.

Definition at line 36 of file BitstreamRemarkParser.h.

Referenced by parseRecord().

◆ ExternalFilePath

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

Definition at line 39 of file BitstreamRemarkParser.h.

Referenced by parseRecord().

◆ RemarkVersion

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

Definition at line 40 of file BitstreamRemarkParser.h.

Referenced by parseRecord().

◆ Stream

BitstreamCursor& llvm::remarks::BitstreamMetaParserHelper::Stream

The Bitstream reader.

Definition at line 31 of file BitstreamRemarkParser.h.

Referenced by parseRecord().

◆ StrTabBuf

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

Definition at line 38 of file BitstreamRemarkParser.h.

Referenced by parseRecord().


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