LLVM  12.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"

Collaboration diagram for llvm::remarks::BitstreamMetaParserHelper:
Collaboration graph
[legend]

Public Member Functions

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

Public Attributes

BitstreamCursorStream
 The Bitstream reader. More...
 
BitstreamBlockInfoBlockInfo
 Reference to the storage for the block info. More...
 
Optional< uint64_t > ContainerVersion
 The parsed content: depending on the container type, some fields might be empty. More...
 
Optional< uint8_t > ContainerType
 
Optional< StringRefStrTabBuf
 
Optional< StringRefExternalFilePath
 
Optional< uint64_t > RemarkVersion
 

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 37 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 201 of file BitstreamRemarkParser.cpp.

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

Referenced by llvm::remarks::BitstreamRemarkParser::parseMeta(), and processRemarkVersion().

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

Optional<uint8_t> llvm::remarks::BitstreamMetaParserHelper::ContainerType

◆ ContainerVersion

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 llvm::remarks::BitstreamRemarkParser::parseMeta(), and parseRecord().

◆ ExternalFilePath

Optional<StringRef> llvm::remarks::BitstreamMetaParserHelper::ExternalFilePath

Definition at line 39 of file BitstreamRemarkParser.h.

Referenced by parseRecord(), and processRemarkVersion().

◆ RemarkVersion

Optional<uint64_t> llvm::remarks::BitstreamMetaParserHelper::RemarkVersion

Definition at line 40 of file BitstreamRemarkParser.h.

Referenced by parseRecord(), and processRemarkVersion().

◆ Stream

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

The Bitstream reader.

Definition at line 31 of file BitstreamRemarkParser.h.

Referenced by parseRecord().

◆ StrTabBuf

Optional<StringRef> llvm::remarks::BitstreamMetaParserHelper::StrTabBuf

Definition at line 38 of file BitstreamRemarkParser.h.

Referenced by parseRecord(), and processRemarkVersion().


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