#ifndef LLVM_REMARKS_REMARKPARSER_H
#define LLVM_REMARKS_REMARKPARSER_H
#include "llvm/ADT/StringRef.h"
#include "llvm/Remarks/RemarkFormat.h"
#include "llvm/Support/Error.h"
#include <memory>
#include <optional>
namespace llvm {
namespace remarks {
struct Remark;
class EndOfFileError : public ErrorInfo<EndOfFileError> { … };
struct RemarkParser { … };
struct ParsedStringTable { … };
Expected<std::unique_ptr<RemarkParser>> createRemarkParser(Format ParserFormat,
StringRef Buf);
Expected<std::unique_ptr<RemarkParser>>
createRemarkParser(Format ParserFormat, StringRef Buf,
ParsedStringTable StrTab);
Expected<std::unique_ptr<RemarkParser>> createRemarkParserFromMeta(
Format ParserFormat, StringRef Buf,
std::optional<ParsedStringTable> StrTab = std::nullopt,
std::optional<StringRef> ExternalFilePrependPath = std::nullopt);
}
}
#endif