13#ifndef LLVM_DEBUGINFO_LOGICALVIEW_READERS_LVREADERHANDLER_H
14#define LLVM_DEBUGINFO_LOGICALVIEW_READERS_LVREADERHANDLER_H
28namespace logicalview {
30using LVReaders = std::vector<std::unique_ptr<LVReader>>;
47 Error createReaders();
49 Error compareReaders();
71 : Objects(Objects), W(W),
OS(W.getOStream()) {
78 return handleFile(Readers,
Filename);
85 return std::move(Err);
86 return std::move(Readers[0]);
91#if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
This file defines the PointerUnion class, which is a discriminated union of pointer types.
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)
Error createReader(StringRef Filename, LVReaders &Readers)
void print(raw_ostream &OS) const
Expected< std::unique_ptr< LVReader > > createReader(StringRef Pathname)
LVReaderHandler & operator=(const LVReaderHandler &)=delete
LVReaderHandler(const LVReaderHandler &)=delete
This class implements an extremely fast bulk output stream that can only output to a stream.
void setOptions(LVOptions *Options)
std::vector< std::string > ArgVector
std::vector< std::unique_ptr< LVReader > > LVReaders
This is an optimization pass for GlobalISel generic memory operations.
raw_ostream & dbgs()
dbgs() - This returns a reference to a raw_ostream for debugging messages.