clang  9.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
Collaboration diagram for clang::ento::PathDiagnosticCallPiece:
Collaboration graph

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
 PathDiagnosticPiece ()=delete
 PathDiagnosticPiece (const PathDiagnosticPiece &)=delete
PathDiagnosticPieceoperator= (const PathDiagnosticPiece &)=delete
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 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,
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 579 of file PathDiagnostic.h.

Constructor & Destructor Documentation

◆ ~PathDiagnosticCallPiece()

PathDiagnosticCallPiece::~PathDiagnosticCallPiece ( )

Referenced by StripTrailingDots().

Member Function Documentation

◆ classof()

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

Definition at line 644 of file PathDiagnostic.h.

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

◆ construct() [1/2]

std::shared_ptr< PathDiagnosticCallPiece > PathDiagnosticCallPiece::construct ( const CallExitEnd CE,
const SourceManager SM 

◆ construct() [2/2]

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

◆ dump()

LLVM_DUMP_METHOD void PathDiagnosticCallPiece::dump ( ) const

◆ flattenLocations()

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

◆ getCallee()

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

Definition at line 613 of file PathDiagnostic.h.

References SM.

◆ getCallEnterEvent()

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

Definition at line 1135 of file PathDiagnostic.cpp.

References describeCodeDecl().

◆ getCallEnterWithinCallerEvent()

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

Definition at line 1154 of file PathDiagnostic.cpp.

References describeCodeDecl().

◆ getCaller()

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

Definition at line 611 of file PathDiagnostic.h.

◆ getCallExitEvent()

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

Definition at line 1173 of file PathDiagnostic.cpp.

References describeCodeDecl().

◆ getLocation()

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

Implements clang::ento::PathDiagnosticPiece.

Definition at line 619 of file PathDiagnostic.h.

◆ hasCallStackMessage()

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

Definition at line 616 of file PathDiagnostic.h.

◆ Profile()

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

Reimplemented from clang::ento::PathDiagnosticPiece.

Definition at line 1236 of file PathDiagnostic.cpp.

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

◆ setCallee()

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

◆ setCallStackMessage()

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

Definition at line 617 of file PathDiagnostic.h.

Member Data Documentation

◆ callEnter

PathDiagnosticLocation clang::ento::PathDiagnosticCallPiece::callEnter

Definition at line 604 of file PathDiagnostic.h.

◆ callEnterWithin

PathDiagnosticLocation clang::ento::PathDiagnosticCallPiece::callEnterWithin

Definition at line 605 of file PathDiagnostic.h.

◆ callReturn

PathDiagnosticLocation clang::ento::PathDiagnosticCallPiece::callReturn

Definition at line 606 of file PathDiagnostic.h.

◆ path

PathPieces clang::ento::PathDiagnosticCallPiece::path

Definition at line 607 of file PathDiagnostic.h.

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