This class wraps a string in an Error.
Synopsis
Declared in <llvm/Support/Error.h>
class StringError
: public ErrorInfo<StringError>
Description
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:
Expected<int> foo() {
return llvm::make_error<PDBError>(pdb_error_code::dia_failed_loading,
"Additional information");
}
Base Classes
Name |
Description |
Base class for user error types. Users should declare their error types like: |
Member Functions
Name |
Description |
|
Constructors |
|
Convert this error to a |
Return the stored error message string. |
|
|
Write this error's message to |
Static Member Functions
Name |
Description |
Return the RTTI class identifier for |
Static Data Members
Name |
Description |
RTTI identifier used by ErrorInfo::classID. |