LLVM 22.0.0git
Public Member Functions | Static Public Member Functions | List of all members
llvm::ErrorInfoBase Class Referenceabstract

Base class for error info classes. More...

#include "llvm/Support/Error.h"

Inheritance diagram for llvm::ErrorInfoBase:
[legend]

Public Member Functions

virtual ~ErrorInfoBase ()=default
 
virtual void log (raw_ostream &OS) const =0
 Print an error message to an output stream.
 
virtual std::string message () const
 Return the error message as a string.
 
virtual std::error_code convertToErrorCode () const =0
 Convert this error to a std::error_code.
 
virtual const void * dynamicClassID () const =0
 
virtual bool isA (const void *const ClassID) const
 
template<typename ErrorInfoT >
bool isA () const
 

Static Public Member Functions

static const void * classID ()
 

Detailed Description

Base class for error info classes.

Do not extend this directly: Extend the ErrorInfo template subclass instead.

Definition at line 44 of file Error.h.

Constructor & Destructor Documentation

◆ ~ErrorInfoBase()

virtual llvm::ErrorInfoBase::~ErrorInfoBase ( )
virtualdefault

Member Function Documentation

◆ classID()

static const void * llvm::ErrorInfoBase::classID ( )
inlinestatic

Definition at line 66 of file Error.h.

◆ convertToErrorCode()

virtual std::error_code llvm::ErrorInfoBase::convertToErrorCode ( ) const
pure virtual

Convert this error to a std::error_code.

This is a temporary crutch to enable interaction with code still using std::error_code. It will be removed in the future.

Implemented in llvm::CGDataError, llvm::DWARFDebugNames::SentinelError, llvm::ResolverError, llvm::DWPError, llvm::jitlink::JITLinkError, llvm::orc::ResourceTrackerDefunct, llvm::orc::FailedToMaterialize, llvm::orc::UnsatisfiedSymbolDependencies, llvm::orc::SymbolsNotFound, llvm::orc::SymbolsCouldNotBeRemoved, llvm::orc::MissingSymbolDefinitions, llvm::orc::UnexpectedSymbolDefinitions, llvm::orc::DuplicateDefinition, llvm::orc::JITSymbolNotFound, llvm::RuntimeDyldError, llvm::hlsl::rootsig::RootSignatureValidationError< T >, llvm::hlsl::rootsig::GenericRSMetadataError, llvm::hlsl::rootsig::InvalidRSMetadataFormat, llvm::hlsl::rootsig::InvalidRSMetadataValue, llvm::LLVMRemarkSetupErrorInfo< ThisError >, llvm::LLVMRemarkSetupErrorInfo< LLVMRemarkSetupFileError >, llvm::LLVMRemarkSetupErrorInfo< LLVMRemarkSetupFormatError >, llvm::LLVMRemarkSetupErrorInfo< LLVMRemarkSetupPatternError >, llvm::mca::RecycledInstErr, llvm::mca::InstStreamPause, llvm::mca::InstructionError< T >, llvm::coverage::CoverageMapError, llvm::InstrProfError, llvm::SymbolRemappingParseError, llvm::remarks::EndOfFileError, llvm::BinaryStreamError, llvm::ErrorList, llvm::ECError, llvm::StringError, llvm::FileError, llvm::json::ParseError, llvm::MachO::TextAPIError, llvm::OverflowError, llvm::UndefVarError, llvm::ErrorDiagnostic, llvm::NotFoundError, llvm::ErrorReported, DXNotSupportedError, and llvm::remarks::YAMLParseError.

Referenced by llvm::errorToErrorCodeAndEmitErrors(), and llvm::LLVMRemarkSetupErrorInfo< ThisError >::LLVMRemarkSetupErrorInfo().

◆ dynamicClassID()

virtual const void * llvm::ErrorInfoBase::dynamicClassID ( ) const
pure virtual

Implemented in llvm::ErrorInfo< ThisErrT, ParentErrT >, llvm::ErrorInfo< DXNotSupportedError >, llvm::ErrorInfo< BinaryStreamError >, llvm::ErrorInfo< CGDataError >, llvm::ErrorInfo< SentinelError >, llvm::ErrorInfo< DWPError >, llvm::ErrorInfo< ECError >, llvm::ErrorInfo< ErrorDiagnostic >, llvm::ErrorInfo< ErrorList >, llvm::ErrorInfo< ErrorReported >, llvm::ErrorInfo< FileError >, llvm::ErrorInfo< HTTPServerError, ECError >, llvm::ErrorInfo< InstrProfError >, llvm::ErrorInfo< ThisError >, llvm::ErrorInfo< LLVMRemarkSetupFileError >, llvm::ErrorInfo< LLVMRemarkSetupFormatError >, llvm::ErrorInfo< LLVMRemarkSetupPatternError >, llvm::ErrorInfo< TextAPIError >, llvm::ErrorInfo< NotFoundError >, llvm::ErrorInfo< OverflowError >, llvm::ErrorInfo< ResolverError >, llvm::ErrorInfo< RuntimeDyldError >, llvm::ErrorInfo< StringError >, llvm::ErrorInfo< SymbolRemappingParseError >, llvm::ErrorInfo< UndefVarError >, llvm::ErrorInfo< CodeViewError, StringError >, llvm::ErrorInfo< CoverageMapError >, llvm::ErrorInfo< GenericRSMetadataError >, llvm::ErrorInfo< InvalidRSMetadataFormat >, llvm::ErrorInfo< InvalidRSMetadataValue >, llvm::ErrorInfo< RootSignatureValidationError< T > >, llvm::ErrorInfo< JITLinkError >, llvm::ErrorInfo< ParseError >, llvm::ErrorInfo< InstStreamPause >, llvm::ErrorInfo< InstructionError< T > >, llvm::ErrorInfo< RecycledInstErr >, llvm::ErrorInfo< MSFError, StringError >, llvm::ErrorInfo< BinaryError, ECError >, llvm::ErrorInfo< DuplicateDefinition >, llvm::ErrorInfo< FailedToMaterialize >, llvm::ErrorInfo< JITSymbolNotFound >, llvm::ErrorInfo< MissingSymbolDefinitions >, llvm::ErrorInfo< ResourceTrackerDefunct >, llvm::ErrorInfo< SymbolsCouldNotBeRemoved >, llvm::ErrorInfo< SymbolsNotFound >, llvm::ErrorInfo< UnexpectedSymbolDefinitions >, llvm::ErrorInfo< UnsatisfiedSymbolDependencies >, llvm::ErrorInfo< DIAError, StringError >, llvm::ErrorInfo< PDBError, StringError >, llvm::ErrorInfo< RawError, StringError >, llvm::ErrorInfo< EndOfFileError >, llvm::ErrorInfo< YAMLParseError >, and llvm::ErrorInfo< WindowsManifestError, ECError >.

◆ isA() [1/2]

template<typename ErrorInfoT >
bool llvm::ErrorInfoBase::isA ( ) const
inline

Definition at line 78 of file Error.h.

◆ isA() [2/2]

virtual bool llvm::ErrorInfoBase::isA ( const void *const  ClassID) const
inlinevirtual

Reimplemented in llvm::ErrorInfo< ThisErrT, ParentErrT >, llvm::ErrorInfo< DXNotSupportedError >, llvm::ErrorInfo< BinaryStreamError >, llvm::ErrorInfo< CGDataError >, llvm::ErrorInfo< SentinelError >, llvm::ErrorInfo< DWPError >, llvm::ErrorInfo< ECError >, llvm::ErrorInfo< ErrorDiagnostic >, llvm::ErrorInfo< ErrorList >, llvm::ErrorInfo< ErrorReported >, llvm::ErrorInfo< FileError >, llvm::ErrorInfo< HTTPServerError, ECError >, llvm::ErrorInfo< InstrProfError >, llvm::ErrorInfo< ThisError >, llvm::ErrorInfo< LLVMRemarkSetupFileError >, llvm::ErrorInfo< LLVMRemarkSetupFormatError >, llvm::ErrorInfo< LLVMRemarkSetupPatternError >, llvm::ErrorInfo< TextAPIError >, llvm::ErrorInfo< NotFoundError >, llvm::ErrorInfo< OverflowError >, llvm::ErrorInfo< ResolverError >, llvm::ErrorInfo< RuntimeDyldError >, llvm::ErrorInfo< StringError >, llvm::ErrorInfo< SymbolRemappingParseError >, llvm::ErrorInfo< UndefVarError >, llvm::ErrorInfo< CodeViewError, StringError >, llvm::ErrorInfo< CoverageMapError >, llvm::ErrorInfo< GenericRSMetadataError >, llvm::ErrorInfo< InvalidRSMetadataFormat >, llvm::ErrorInfo< InvalidRSMetadataValue >, llvm::ErrorInfo< RootSignatureValidationError< T > >, llvm::ErrorInfo< JITLinkError >, llvm::ErrorInfo< ParseError >, llvm::ErrorInfo< InstStreamPause >, llvm::ErrorInfo< InstructionError< T > >, llvm::ErrorInfo< RecycledInstErr >, llvm::ErrorInfo< MSFError, StringError >, llvm::ErrorInfo< BinaryError, ECError >, llvm::ErrorInfo< DuplicateDefinition >, llvm::ErrorInfo< FailedToMaterialize >, llvm::ErrorInfo< JITSymbolNotFound >, llvm::ErrorInfo< MissingSymbolDefinitions >, llvm::ErrorInfo< ResourceTrackerDefunct >, llvm::ErrorInfo< SymbolsCouldNotBeRemoved >, llvm::ErrorInfo< SymbolsNotFound >, llvm::ErrorInfo< UnexpectedSymbolDefinitions >, llvm::ErrorInfo< UnsatisfiedSymbolDependencies >, llvm::ErrorInfo< DIAError, StringError >, llvm::ErrorInfo< PDBError, StringError >, llvm::ErrorInfo< RawError, StringError >, llvm::ErrorInfo< EndOfFileError >, llvm::ErrorInfo< YAMLParseError >, and llvm::ErrorInfo< WindowsManifestError, ECError >.

Definition at line 73 of file Error.h.

◆ log()

virtual void llvm::ErrorInfoBase::log ( raw_ostream OS) const
pure virtual

Print an error message to an output stream.

Implemented in llvm::SymbolRemappingParseError, llvm::json::ParseError, llvm::CGDataError, llvm::DWARFDebugNames::SentinelError, llvm::ResolverError, llvm::HTTPServerError, llvm::DWPError, llvm::jitlink::JITLinkError, llvm::orc::ResourceTrackerDefunct, llvm::orc::FailedToMaterialize, llvm::orc::UnsatisfiedSymbolDependencies, llvm::orc::SymbolsNotFound, llvm::orc::SymbolsCouldNotBeRemoved, llvm::orc::MissingSymbolDefinitions, llvm::orc::UnexpectedSymbolDefinitions, llvm::orc::DuplicateDefinition, llvm::orc::JITSymbolNotFound, llvm::RuntimeDyldError, llvm::hlsl::rootsig::RootSignatureValidationError< T >, llvm::hlsl::rootsig::GenericRSMetadataError, llvm::hlsl::rootsig::InvalidRSMetadataFormat, llvm::hlsl::rootsig::InvalidRSMetadataValue, llvm::LLVMRemarkSetupErrorInfo< ThisError >, llvm::LLVMRemarkSetupErrorInfo< LLVMRemarkSetupFileError >, llvm::LLVMRemarkSetupErrorInfo< LLVMRemarkSetupFormatError >, llvm::LLVMRemarkSetupErrorInfo< LLVMRemarkSetupPatternError >, llvm::mca::RecycledInstErr, llvm::mca::InstStreamPause, llvm::mca::InstructionError< T >, llvm::coverage::CoverageMapError, llvm::InstrProfError, llvm::remarks::EndOfFileError, llvm::BinaryStreamError, llvm::ErrorList, llvm::ECError, llvm::StringError, llvm::FileError, llvm::MachO::TextAPIError, llvm::windows_manifest::WindowsManifestError, llvm::OverflowError, llvm::UndefVarError, llvm::ErrorDiagnostic, llvm::NotFoundError, llvm::ErrorReported, DXNotSupportedError, and llvm::remarks::YAMLParseError.

◆ message()

virtual std::string llvm::ErrorInfoBase::message ( ) const
inlinevirtual

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