LLVM: llvm::StringError Class Reference (original) (raw)

This class wraps a string in an Error. More...

#include "[llvm/Support/Error.h](llvm%5F2Support%5F2Error%5F8h%5Fsource.html)"

Public Member Functions
StringError (std::string &&S, std::error_code EC, bool PrintMsgOnly)
StringError (std::error_code EC, const Twine &S=Twine())
Prints EC + S and converts to EC.
StringError (const Twine &S, std::error_code EC)
Prints S and converts to EC.
void log (raw_ostream &OS) const override
Print an error message to an output stream.
std::error_code convertToErrorCode () const override
Convert this error to a std::error_code.
const std::string & getMessage () const
Public Member Functions inherited from llvm::ErrorInfo< StringError >
const void * dynamicClassID () const override
bool isA (const void *const ClassID) const override
Public Member Functions inherited from llvm::ErrorInfoBase
virtual ~ErrorInfoBase ()=default
virtual std::string message () const
Return the error message as a string.
template
bool isA () const
Static Public Attributes
static char ID = 0

This class wraps a string in an Error.

StringError is useful in cases where the client is not expected to be able to consume the specific error message programmatically (for example, if the error message is to be presented to the user).

StringError can also be used when additional information is to be printed along with a error_code message. Depending on the constructor called, this class can either display:

  1. the error_code message (ECError behavior)
  2. a string
  3. the error_code message and a string

These behaviors are useful when subtyping is required; for example, when a specific library needs an explicit error type. In the example below, PDBError is derived from StringError:

"Additional information");

}

Tagged union holding either a T or a Error.

Error make_error(ArgTs &&... Args)

Make a Error instance representing failure using the given error info type.

Definition at line 1282 of file Error.h.

llvm::StringError::StringError ( std::string && S,
std::error_code EC,
bool PrintMsgOnly )

StringError() [2/3]

llvm::StringError::StringError ( std::error_code EC,
const Twine & S = Twine() )

Prints EC + S and converts to EC.

Definition at line 140 of file Error.cpp.

StringError() [3/3]

llvm::StringError::StringError ( const Twine & S,
std::error_code EC )

Prints S and converts to EC.

Definition at line 143 of file Error.cpp.

convertToErrorCode()

std::error_code llvm::StringError::convertToErrorCode ( ) const overridevirtual

getMessage()

const std::string & llvm::StringError::getMessage ( ) const inline

log()

void llvm::StringError::log ( raw_ostream & OS) const overridevirtual

ID

char llvm::StringError::ID = 0 static

The documentation for this class was generated from the following files: