LLVM: include/llvm/DebugInfo/LogicalView/LVReaderHandler.h Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

13#ifndef LLVM_DEBUGINFO_LOGICALVIEW_READERS_LVREADERHANDLER_H

14#define LLVM_DEBUGINFO_LOGICALVIEW_READERS_LVREADERHANDLER_H

15

25#include

26#include

27

28namespace llvm {

30

31using LVReaders = std::vector<std::unique_ptr>;

32using ArgVector = std::vectorstd::string;

34

35

36

37

38

39

40

41

47

48 Error createReaders();

49 Error printReaders();

50 Error compareReaders();

51

64

67

68public:

72 : Objects(Objects), W(W), OS(W.getOStream()) {

74 }

77

79 return handleFile(Readers, Filename);

80 }

82

86 return std::move(Err);

87 return std::move(Readers[0]);

88 }

89

91

92#if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)

94#endif

95};

96

97}

98}

99

100#endif

This file defines the PointerUnion class, which is a discriminated union of pointer types.

The Input class is used to parse a yaml document into in-memory structs and vectors.

Lightweight error class with error context and mandatory checking.

Tagged union holding either a T or a Error.

A discriminated union of two or more pointer types, with the discriminator in the low bit of the poin...

StringRef - Represent a constant reference to a string, i.e.

LVReaderHandler(ArgVector &Objects, ScopedPrinter &W, LVOptions &ReaderOptions)

Definition LVReaderHandler.h:70

Error createReader(StringRef Filename, LVReaders &Readers)

Definition LVReaderHandler.h:78

LLVM_ABI void print(raw_ostream &OS) const

Expected< std::unique_ptr< LVReader > > createReader(StringRef Pathname)

Definition LVReaderHandler.h:83

LVReaderHandler & operator=(const LVReaderHandler &)=delete

LVReaderHandler(const LVReaderHandler &)=delete

void dump() const

Definition LVReaderHandler.h:93

This class implements an extremely fast bulk output stream that can only output to a stream.

void setOptions(LVOptions *Options)

std::vector< std::unique_ptr< LVReader > > LVReaders

Definition LVReaderHandler.h:31

std::vector< std::string > ArgVector

Definition LVReaderHandler.h:32

PointerUnion< object::ObjectFile *, pdb::PDBFile * > PdbOrObj

Definition LVReaderHandler.h:33

This is an optimization pass for GlobalISel generic memory operations.

LLVM_ABI raw_ostream & dbgs()

dbgs() - This returns a reference to a raw_ostream for debugging messages.