clang  6.0.0svn
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
clang::ento::PathDiagnosticCallPiece Class Reference

#include "clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h"

Inheritance diagram for clang::ento::PathDiagnosticCallPiece:
Inheritance graph
[legend]
Collaboration diagram for clang::ento::PathDiagnosticCallPiece:
Collaboration graph
[legend]

Public Member Functions

 ~PathDiagnosticCallPiece () override
 
const DeclgetCaller () const
 
const DeclgetCallee () const
 
void setCallee (const CallEnter &CE, const SourceManager &SM)
 
bool hasCallStackMessage ()
 
void setCallStackMessage (StringRef st)
 
PathDiagnosticLocation getLocation () const override
 
std::shared_ptr< PathDiagnosticEventPiecegetCallEnterEvent () const
 
std::shared_ptr< PathDiagnosticEventPiecegetCallEnterWithinCallerEvent () const
 
std::shared_ptr< PathDiagnosticEventPiecegetCallExitEvent () const
 
void flattenLocations () override
 
void dump () const override
 
void Profile (llvm::FoldingSetNodeID &ID) const override
 
- Public Member Functions inherited from clang::ento::PathDiagnosticPiece
virtual ~PathDiagnosticPiece ()
 
StringRef getString () const
 
void setTag (const char *tag)
 Tag this PathDiagnosticPiece with the given C-string. More...
 
const void * getTag () const
 Return the opaque tag (if any) on the PathDiagnosticPiece. More...
 
StringRef getTagStr () const
 Return the string representation of the tag. More...
 
DisplayHint getDisplayHint () const
 getDisplayHint - Return a hint indicating where the diagnostic should be displayed by the PathDiagnosticConsumer. More...
 
Kind getKind () const
 
void addRange (SourceRange R)
 
void addRange (SourceLocation B, SourceLocation E)
 
ArrayRef< SourceRangegetRanges () const
 Return the SourceRanges associated with this PathDiagnosticPiece. More...
 
void setAsLastInMainSourceFile ()
 
bool isLastInMainSourceFile () const
 

Static Public Member Functions

static std::shared_ptr< PathDiagnosticCallPiececonstruct (const ExplodedNode *N, const CallExitEnd &CE, const SourceManager &SM)
 
static PathDiagnosticCallPiececonstruct (PathPieces &pieces, const Decl *caller)
 
static bool classof (const PathDiagnosticPiece *P)
 

Public Attributes

PathDiagnosticLocation callEnter
 
PathDiagnosticLocation callEnterWithin
 
PathDiagnosticLocation callReturn
 
PathPieces path
 

Additional Inherited Members

- Public Types inherited from clang::ento::PathDiagnosticPiece
enum  Kind {
  ControlFlow, Event, Macro, Call,
  Note
}
 
enum  DisplayHint { Above, Below }
 
- Protected Member Functions inherited from clang::ento::PathDiagnosticPiece
 PathDiagnosticPiece (StringRef s, Kind k, DisplayHint hint=Below)
 
 PathDiagnosticPiece (Kind k, DisplayHint hint=Below)
 

Detailed Description

Definition at line 550 of file PathDiagnostic.h.

Constructor & Destructor Documentation

◆ ~PathDiagnosticCallPiece()

PathDiagnosticCallPiece::~PathDiagnosticCallPiece ( )
override

Definition at line 59 of file PathDiagnostic.cpp.

Member Function Documentation

◆ classof()

static bool clang::ento::PathDiagnosticCallPiece::classof ( const PathDiagnosticPiece P)
inlinestatic

Definition at line 622 of file PathDiagnostic.h.

References clang::ento::PathDiagnosticPiece::getKind().

◆ construct() [1/2]

std::shared_ptr< PathDiagnosticCallPiece > PathDiagnosticCallPiece::construct ( const ExplodedNode N,
const CallExitEnd CE,
const SourceManager SM 
)
static

◆ construct() [2/2]

PathDiagnosticCallPiece * PathDiagnosticCallPiece::construct ( PathPieces pieces,
const Decl caller 
)
static

Definition at line 924 of file PathDiagnostic.cpp.

◆ dump()

LLVM_DUMP_METHOD void PathDiagnosticCallPiece::dump ( ) const
overridevirtual

Implements clang::ento::PathDiagnosticPiece.

Definition at line 3623 of file BugReporter.cpp.

References getLocStmt().

◆ flattenLocations()

void clang::ento::PathDiagnosticCallPiece::flattenLocations ( )
inlineoverridevirtual

◆ getCallee()

const Decl* clang::ento::PathDiagnosticCallPiece::getCallee ( ) const
inline

Definition at line 587 of file PathDiagnostic.h.

References SM.

◆ getCallEnterEvent()

std::shared_ptr< PathDiagnosticEventPiece > PathDiagnosticCallPiece::getCallEnterEvent ( ) const

Definition at line 1025 of file PathDiagnostic.cpp.

References describeCodeDecl().

Referenced by ReportCall().

◆ getCallEnterWithinCallerEvent()

std::shared_ptr< PathDiagnosticEventPiece > PathDiagnosticCallPiece::getCallEnterWithinCallerEvent ( ) const

Definition at line 1044 of file PathDiagnostic.cpp.

References describeCodeDecl().

Referenced by ReportCall().

◆ getCaller()

const Decl* clang::ento::PathDiagnosticCallPiece::getCaller ( ) const
inline

Definition at line 585 of file PathDiagnostic.h.

◆ getCallExitEvent()

std::shared_ptr< PathDiagnosticEventPiece > PathDiagnosticCallPiece::getCallExitEvent ( ) const

Definition at line 1063 of file PathDiagnostic.cpp.

References describeCodeDecl().

◆ getLocation()

PathDiagnosticLocation clang::ento::PathDiagnosticCallPiece::getLocation ( ) const
inlineoverridevirtual

◆ hasCallStackMessage()

bool clang::ento::PathDiagnosticCallPiece::hasCallStackMessage ( )
inline

Definition at line 590 of file PathDiagnostic.h.

◆ Profile()

void PathDiagnosticCallPiece::Profile ( llvm::FoldingSetNodeID &  ID) const
overridevirtual

◆ setCallee()

void PathDiagnosticCallPiece::setCallee ( const CallEnter CE,
const SourceManager SM 
)

◆ setCallStackMessage()

void clang::ento::PathDiagnosticCallPiece::setCallStackMessage ( StringRef  st)
inline

Definition at line 591 of file PathDiagnostic.h.

Member Data Documentation

◆ callEnter

PathDiagnosticLocation clang::ento::PathDiagnosticCallPiece::callEnter

Definition at line 578 of file PathDiagnostic.h.

Referenced by compareCall(), and getFirstStackedCallToHeaderFile().

◆ callEnterWithin

PathDiagnosticLocation clang::ento::PathDiagnosticCallPiece::callEnterWithin

Definition at line 579 of file PathDiagnostic.h.

Referenced by compareCall(), and getFirstStackedCallToHeaderFile().

◆ callReturn

PathDiagnosticLocation clang::ento::PathDiagnosticCallPiece::callReturn

Definition at line 580 of file PathDiagnostic.h.

Referenced by compareCall().

◆ path

PathPieces clang::ento::PathDiagnosticCallPiece::path

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