LLVM  10.0.0svn
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
[legend]
Collaboration diagram for llvm::remarks::RemarkSerializer:
Collaboration graph
[legend]

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...
 
raw_ostreamOS
 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 
)
inline

Definition at line 49 of file RemarkSerializer.h.

References llvm::None.

◆ ~RemarkSerializer()

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

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

The serialization mode.

Definition at line 44 of file RemarkSerializer.h.

Referenced by llvm::remarks::YAMLRemarkSerializer::classof(), and llvm::remarks::YAMLStrTabRemarkSerializer::emit().

◆ OS

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

◆ SerializerFormat

Format llvm::remarks::RemarkSerializer::SerializerFormat

◆ StrTab

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

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