LLVM  8.0.1
Public Member Functions | List of all members
llvm::DiagnosticInfoWithLocationBase Class Reference

Common features for diagnostics with an associated location. More...

#include "llvm/IR/DiagnosticInfo.h"

Inheritance diagram for llvm::DiagnosticInfoWithLocationBase:
Inheritance graph
[legend]
Collaboration diagram for llvm::DiagnosticInfoWithLocationBase:
Collaboration graph
[legend]

Public Member Functions

 DiagnosticInfoWithLocationBase (enum DiagnosticKind Kind, enum DiagnosticSeverity Severity, const Function &Fn, const DiagnosticLocation &Loc)
 Fn is the function where the diagnostic is being emitted. More...
 
bool isLocationAvailable () const
 Return true if location information is available for this diagnostic. More...
 
const std::string getLocationStr () const
 Return a string with the location information for this diagnostic in the format "file:line:col". More...
 
void getLocation (StringRef &RelativePath, unsigned &Line, unsigned &Column) const
 Return location information for this diagnostic in three parts: the relative source file path, line number and column. More...
 
std::string getAbsolutePath () const
 Return the absolute path tot the file. More...
 
const FunctiongetFunction () const
 
DiagnosticLocation getLocation () const
 
- Public Member Functions inherited from llvm::DiagnosticInfo
 DiagnosticInfo (int Kind, DiagnosticSeverity Severity)
 
virtual ~DiagnosticInfo ()=default
 
int getKind () const
 
DiagnosticSeverity getSeverity () const
 
virtual void print (DiagnosticPrinter &DP) const =0
 Print using the given DP a user-friendly message. More...
 

Detailed Description

Common features for diagnostics with an associated location.

Definition at line 364 of file DiagnosticInfo.h.

Constructor & Destructor Documentation

◆ DiagnosticInfoWithLocationBase()

llvm::DiagnosticInfoWithLocationBase::DiagnosticInfoWithLocationBase ( enum DiagnosticKind  Kind,
enum DiagnosticSeverity  Severity,
const Function Fn,
const DiagnosticLocation Loc 
)
inline

Fn is the function where the diagnostic is being emitted.

Loc is the location information to use in the diagnostic.

Definition at line 369 of file DiagnosticInfo.h.

Member Function Documentation

◆ getAbsolutePath()

std::string DiagnosticInfoWithLocationBase::getAbsolutePath ( ) const

Return the absolute path tot the file.

Definition at line 143 of file DiagnosticInfo.cpp.

◆ getFunction()

const Function& llvm::DiagnosticInfoWithLocationBase::getFunction ( ) const
inline

◆ getLocation() [1/2]

void DiagnosticInfoWithLocationBase::getLocation ( StringRef RelativePath,
unsigned Line,
unsigned Column 
) const

Return location information for this diagnostic in three parts: the relative source file path, line number and column.

Definition at line 147 of file DiagnosticInfo.cpp.

Referenced by llvm::DiagnosticInfoOptimizationBase::getMsg(), reportFastISelFailure(), and llvm::reportGISelFailure().

◆ getLocation() [2/2]

DiagnosticLocation llvm::DiagnosticInfoWithLocationBase::getLocation ( ) const
inline

Definition at line 392 of file DiagnosticInfo.h.

◆ getLocationStr()

const std::string DiagnosticInfoWithLocationBase::getLocationStr ( ) const

Return a string with the location information for this diagnostic in the format "file:line:col".

If location information is not available, it returns "<unknown>:0:0".

Definition at line 155 of file DiagnosticInfo.cpp.

References getLocation().

Referenced by llvm::DiagnosticInfoOptimizationBase::print(), and llvm::DiagnosticInfoUnsupported::print().

◆ isLocationAvailable()

bool llvm::DiagnosticInfoWithLocationBase::isLocationAvailable ( ) const
inline

Return true if location information is available for this diagnostic.

Definition at line 376 of file DiagnosticInfo.h.

References getLocation().


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