LLVM  14.0.0git
Public Member Functions | Public Attributes | List of all members
llvm::remarks::RemarkSerializer Struct Referenceabstract

This is the base class for a remark serializer. More...

#include "llvm/Remarks/RemarkSerializer.h"

Inheritance diagram for llvm::remarks::RemarkSerializer:
Inheritance graph
Collaboration diagram for llvm::remarks::RemarkSerializer:
Collaboration graph

Public Member Functions

 RemarkSerializer (Format SerializerFormat, raw_ostream &OS, SerializerMode Mode)
virtual ~RemarkSerializer ()=default
 This is just an interface. More...
virtual void emit (const Remark &Remark)=0
 Emit a remark to the stream. More...
virtual std::unique_ptr< MetaSerializermetaSerializer (raw_ostream &OS, Optional< StringRef > ExternalFilename=None)=0
 Return the corresponding metadata serializer. More...

Public Attributes

Format SerializerFormat
 The format of the serializer. More...
 The open raw_ostream that the remark diagnostics are emitted to. More...
SerializerMode Mode
 The serialization mode. More...
Optional< StringTableStrTab
 The string table containing all the unique strings used in the output. More...

Detailed Description

This is the base class for a remark serializer.

It includes support for using a string table while emitting.

Definition at line 38 of file RemarkSerializer.h.

Constructor & Destructor Documentation

◆ RemarkSerializer()

llvm::remarks::RemarkSerializer::RemarkSerializer ( Format  SerializerFormat,
raw_ostream OS,
SerializerMode  Mode 

Definition at line 49 of file RemarkSerializer.h.

◆ ~RemarkSerializer()

virtual llvm::remarks::RemarkSerializer::~RemarkSerializer ( )

This is just an interface.

Member Function Documentation

◆ emit()

virtual void llvm::remarks::RemarkSerializer::emit ( const Remark Remark)
pure virtual

◆ metaSerializer()

virtual std::unique_ptr<MetaSerializer> llvm::remarks::RemarkSerializer::metaSerializer ( raw_ostream OS,
Optional< StringRef ExternalFilename = None 
pure virtual

Member Data Documentation

◆ Mode

SerializerMode llvm::remarks::RemarkSerializer::Mode

◆ OS

raw_ostream& llvm::remarks::RemarkSerializer::OS

◆ SerializerFormat

Format llvm::remarks::RemarkSerializer::SerializerFormat

The format of the serializer.

Definition at line 40 of file RemarkSerializer.h.

Referenced by llvm::remarks::RemarkStreamer::needsSection().

◆ StrTab

Optional<StringTable> llvm::remarks::RemarkSerializer::StrTab

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