clang  3.9.0
Public Member Functions | Static Public Member Functions | List of all members
clang::ento::PathDiagnosticEventPiece Class Reference

#include <PathDiagnostic.h>

Inheritance diagram for clang::ento::PathDiagnosticEventPiece:
[legend]
Collaboration diagram for clang::ento::PathDiagnosticEventPiece:
[legend]

Public Member Functions

 PathDiagnosticEventPiece (const PathDiagnosticLocation &pos, StringRef s, bool addPosRange=true, StackHintGenerator *stackHint=nullptr)
 
 ~PathDiagnosticEventPiece () override
 
void setPrunable (bool isPrunable, bool override=false)
 Mark the diagnostic piece as being potentially prunable. More...
 
bool isPrunable () const
 Return true if the diagnostic piece is prunable. More...
 
bool hasCallStackHint ()
 
std::string getCallStackMessage (const ExplodedNode *N)
 Produce the hint for the given node. More...
 
void dump () const override
 
- Public Member Functions inherited from clang::ento::PathDiagnosticSpotPiece
 PathDiagnosticSpotPiece (const PathDiagnosticLocation &pos, StringRef s, PathDiagnosticPiece::Kind k, bool addPosRange=true)
 
PathDiagnosticLocation getLocation () const override
 
void flattenLocations () override
 
void Profile (llvm::FoldingSetNodeID &ID) const override
 
- Public Member Functions inherited from clang::ento::PathDiagnosticPiece
 ~PathDiagnosticPiece () override
 
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 bool classof (const PathDiagnosticPiece *P)
 
- Static Public Member Functions inherited from clang::ento::PathDiagnosticSpotPiece
static bool classof (const PathDiagnosticPiece *P)
 

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 501 of file PathDiagnostic.h.

Constructor & Destructor Documentation

clang::ento::PathDiagnosticEventPiece::PathDiagnosticEventPiece ( const PathDiagnosticLocation pos,
StringRef  s,
bool  addPosRange = true,
StackHintGenerator stackHint = nullptr 
)
inline

Definition at line 511 of file PathDiagnostic.h.

PathDiagnosticEventPiece::~PathDiagnosticEventPiece ( )
override

Definition at line 59 of file PathDiagnostic.cpp.

Member Function Documentation

static bool clang::ento::PathDiagnosticEventPiece::classof ( const PathDiagnosticPiece P)
inlinestatic
LLVM_DUMP_METHOD void PathDiagnosticEventPiece::dump ( ) const
overridevirtual
std::string clang::ento::PathDiagnosticEventPiece::getCallStackMessage ( const ExplodedNode N)
inline

Produce the hint for the given node.

The node contains information about the call for which the diagnostic can be generated.

Definition at line 537 of file PathDiagnostic.h.

bool clang::ento::PathDiagnosticEventPiece::hasCallStackHint ( )
inline

Definition at line 533 of file PathDiagnostic.h.

bool clang::ento::PathDiagnosticEventPiece::isPrunable ( ) const
inline

Return true if the diagnostic piece is prunable.

Definition at line 529 of file PathDiagnostic.h.

Referenced by removeUnneededCalls(), and setPrunable().

void clang::ento::PathDiagnosticEventPiece::setPrunable ( bool  isPrunable,
bool  override = false 
)
inline

Mark the diagnostic piece as being potentially prunable.

This flag may have been previously set, at which point it will not be reset unless one specifies to do so.

Definition at line 522 of file PathDiagnostic.h.

References isPrunable().

Referenced by GenerateAlternateExtensivePathDiagnostic(), GenerateExtensivePathDiagnostic(), and clang::ento::ConditionBRVisitor::VisitTrueTest().


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