PathDiagnostic - PathDiagnostic objects represent a single path-sensitive diagnostic.
More...
#include "clang/Analysis/PathDiagnostic.h"
|
| PathDiagnostic ()=delete |
|
| PathDiagnostic (StringRef CheckerName, const Decl *DeclWithIssue, StringRef bugtype, StringRef verboseDesc, StringRef shortDesc, StringRef category, PathDiagnosticLocation LocationToUnique, const Decl *DeclToUnique, std::unique_ptr< FilesToLineNumsMap > ExecutedLines) |
|
| ~PathDiagnostic () |
|
PathPieces & | getActivePath () |
| Return the path currently used by builders for constructing the PathDiagnostic. More...
|
|
PathPieces & | getMutablePieces () |
| Return a mutable version of 'path'. More...
|
|
unsigned | full_size () |
| Return the unrolled size of the path. More...
|
|
void | pushActivePath (PathPieces *p) |
|
void | popActivePath () |
|
bool | isWithinCall () const |
|
void | setEndOfPath (PathDiagnosticPieceRef EndPiece) |
|
void | appendToDesc (StringRef S) |
|
StringRef | getVerboseDescription () const |
|
StringRef | getShortDescription () const |
|
StringRef | getCheckerName () const |
|
StringRef | getBugType () const |
|
StringRef | getCategory () const |
|
meta_iterator | meta_begin () const |
|
meta_iterator | meta_end () const |
|
void | addMeta (StringRef s) |
|
const FilesToLineNumsMap & | getExecutedLines () const |
|
FilesToLineNumsMap & | getExecutedLines () |
|
const Decl * | getDeclWithIssue () const |
| Return the semantic context where an issue occurred. More...
|
|
void | setDeclWithIssue (const Decl *D) |
|
PathDiagnosticLocation | getLocation () const |
|
void | setLocation (PathDiagnosticLocation NewLoc) |
|
PathDiagnosticLocation | getUniqueingLoc () const |
| Get the location on which the report should be uniqued. More...
|
|
const Decl * | getUniqueingDecl () const |
| Get the declaration containing the uniqueing location. More...
|
|
void | flattenLocations () |
|
void | Profile (llvm::FoldingSetNodeID &ID) const |
| Profiles the diagnostic, independent of the path it references. More...
|
|
void | FullProfile (llvm::FoldingSetNodeID &ID) const |
| Profiles the diagnostic, including its path. More...
|
|
PathDiagnostic - PathDiagnostic objects represent a single path-sensitive diagnostic.
It represents an ordered-collection of PathDiagnosticPieces, each which represent the pieces of the path.
Definition at line 763 of file PathDiagnostic.h.
◆ meta_iterator
◆ PathDiagnostic() [1/2]
clang::ento::PathDiagnostic::PathDiagnostic |
( |
| ) |
|
|
delete |
◆ PathDiagnostic() [2/2]
PathDiagnostic::PathDiagnostic |
( |
StringRef |
CheckerName, |
|
|
const Decl * |
DeclWithIssue, |
|
|
StringRef |
bugtype, |
|
|
StringRef |
verboseDesc, |
|
|
StringRef |
shortDesc, |
|
|
StringRef |
category, |
|
|
PathDiagnosticLocation |
LocationToUnique, |
|
|
const Decl * |
DeclToUnique, |
|
|
std::unique_ptr< FilesToLineNumsMap > |
ExecutedLines |
|
) |
| |
◆ ~PathDiagnostic()
PathDiagnostic::~PathDiagnostic |
( |
| ) |
|
|
default |
◆ addMeta()
void clang::ento::PathDiagnostic::addMeta |
( |
StringRef |
s | ) |
|
|
inline |
◆ appendToDesc()
void clang::ento::PathDiagnostic::appendToDesc |
( |
StringRef |
S | ) |
|
|
inline |
◆ flattenLocations()
void clang::ento::PathDiagnostic::flattenLocations |
( |
| ) |
|
|
inline |
◆ full_size()
◆ FullProfile()
void PathDiagnostic::FullProfile |
( |
llvm::FoldingSetNodeID & |
ID | ) |
const |
Profiles the diagnostic, including its path.
Two diagnostics with the same issue along different paths will generate different profiles.
Definition at line 1142 of file PathDiagnostic.cpp.
◆ getActivePath()
PathPieces& clang::ento::PathDiagnostic::getActivePath |
( |
| ) |
|
|
inline |
◆ getBugType()
StringRef clang::ento::PathDiagnostic::getBugType |
( |
| ) |
const |
|
inline |
◆ getCategory()
StringRef clang::ento::PathDiagnostic::getCategory |
( |
| ) |
const |
|
inline |
◆ getCheckerName()
StringRef clang::ento::PathDiagnostic::getCheckerName |
( |
| ) |
const |
|
inline |
◆ getDeclWithIssue()
const Decl* clang::ento::PathDiagnostic::getDeclWithIssue |
( |
| ) |
const |
|
inline |
Return the semantic context where an issue occurred.
If the issue occurs along a path, this represents the "central" area where the bug manifests.
Definition at line 858 of file PathDiagnostic.h.
Referenced by compare().
◆ getExecutedLines() [1/2]
◆ getExecutedLines() [2/2]
◆ getLocation()
◆ getMutablePieces()
PathPieces& clang::ento::PathDiagnostic::getMutablePieces |
( |
| ) |
|
|
inline |
◆ getShortDescription()
StringRef clang::ento::PathDiagnostic::getShortDescription |
( |
| ) |
const |
|
inline |
◆ getUniqueingDecl()
const Decl* clang::ento::PathDiagnostic::getUniqueingDecl |
( |
| ) |
const |
|
inline |
◆ getUniqueingLoc()
◆ getVerboseDescription()
StringRef clang::ento::PathDiagnostic::getVerboseDescription |
( |
| ) |
const |
|
inline |
◆ isWithinCall()
bool clang::ento::PathDiagnostic::isWithinCall |
( |
| ) |
const |
|
inline |
◆ meta_begin()
◆ meta_end()
◆ popActivePath()
void clang::ento::PathDiagnostic::popActivePath |
( |
| ) |
|
|
inline |
◆ Profile()
void PathDiagnostic::Profile |
( |
llvm::FoldingSetNodeID & |
ID | ) |
const |
Profiles the diagnostic, independent of the path it references.
This can be used to merge diagnostics that refer to the same issue along different paths.
Definition at line 1134 of file PathDiagnostic.cpp.
References Category.
◆ pushActivePath()
void clang::ento::PathDiagnostic::pushActivePath |
( |
PathPieces * |
p | ) |
|
|
inline |
◆ setDeclWithIssue()
void clang::ento::PathDiagnostic::setDeclWithIssue |
( |
const Decl * |
D | ) |
|
|
inline |
◆ setEndOfPath()
◆ setLocation()
◆ path
const PathPieces& clang::ento::PathDiagnostic::path |
The documentation for this class was generated from the following files: