14#ifndef LLVM_SUPPORT_VIRTUALOUTPUTERROR_H
15#define LLVM_SUPPORT_VIRTUALOUTPUTERROR_H
39 void anchor()
override;
50 assert(
EC &&
"Cannot create OutputError from success EC");
55 OutputPath(OutputPath.str()) {
56 assert(
EC &&
"Cannot create OutputError from success EC");
60 std::string OutputPath;
74 void anchor()
override;
95 void anchor()
override;
107 TempPath(TempPath.str()) {}
112 TempPath(TempPath.str()) {}
115 std::string TempPath;
121 const Twine &OutputPath,
122 std::error_code EC) {
assert(UImm &&(UImm !=~static_cast< T >(0)) &&"Invalid immediate!")
This file contains the declarations of the OutputConfig class.
Base class for user error types.
Lightweight error class with error context and mandatory checking.
static ErrorSuccess success()
Create a success value.
StringRef - Represent a constant reference to a string, i.e.
Twine - A lightweight data structure for efficiently representing the concatenation of temporary valu...
This class implements an extremely fast bulk output stream that can only output to a stream.
void log(raw_ostream &OS) const override
OutputConfig getConfig() const
OutputConfigError(OutputConfig Config, const Twine &OutputPath)
Error related to an OutputFile.
StringRef getOutputPath() const
void log(raw_ostream &OS) const override
Print an error message to an output stream.
OutputError(const Twine &OutputPath, std::error_code EC)
OutputError(const Twine &OutputPath, OutputErrorCode EV)
void log(raw_ostream &OS) const override
TempFileOutputError(const Twine &TempPath, const Twine &OutputPath, std::error_code EC)
StringRef getTempPath() const
TempFileOutputError(const Twine &TempPath, const Twine &OutputPath, OutputErrorCode EV)
Error convertToOutputError(const Twine &OutputPath, std::error_code EC)
Return Error::success() or use OutputPath to create an OutputError, depending on EC.
std::error_code make_error_code(OutputErrorCode EV)
const std::error_category & output_category()
Error convertToTempFileOutputError(const Twine &TempPath, const Twine &OutputPath, std::error_code EC)
Return Error::success() or use TempPath and OutputPath to create a TempFileOutputError,...
Error make_error(ArgTs &&... Args)
Make a Error instance representing failure using the given error info type.
Full configuration for an output for use by the OutputBackend.