clang
8.0.0
|
Represents a field chain. More...
Public Types | |
using | FieldChain = llvm::ImmutableList< const FieldNode & > |
Public Member Functions | |
FieldChainInfo ()=delete | |
FieldChainInfo (FieldChain::Factory &F) | |
FieldChainInfo (const FieldChainInfo &Other)=default | |
template<class FieldNodeT > | |
FieldChainInfo | add (const FieldNodeT &FN) |
Constructs a new FieldChainInfo object with FN appended. More... | |
template<class FieldNodeT > | |
FieldChainInfo | replaceHead (const FieldNodeT &FN) |
Constructs a new FieldChainInfo object with FN as the new head of the list. More... | |
bool | contains (const FieldRegion *FR) const |
bool | isEmpty () const |
const FieldNode & | getHead () const |
const FieldRegion * | getUninitRegion () const |
void | printNoteMsg (llvm::raw_ostream &Out) const |
Represents a field chain.
A field chain is a list of fields where the first element of the chain is the object under checking (not stored), and every other element is a field, and the element that precedes it is the object that contains it.
Note that this class is immutable (essentially a wrapper around an ImmutableList), new FieldChainInfo objects may be created by member functions such as add() and replaceHead().
Definition at line 153 of file UninitializedObject.h.
using clang::ento::FieldChainInfo::FieldChain = llvm::ImmutableList<const FieldNode &> |
Definition at line 155 of file UninitializedObject.h.
|
delete |
|
inline |
Definition at line 168 of file UninitializedObject.h.
|
default |
|
inline |
Constructs a new FieldChainInfo object with FN
appended.
Definition at line 330 of file UninitializedObject.h.
Referenced by DereferenceInfo::DereferenceInfo(), clang::ento::FindUninitializedFields::FindUninitializedFields(), and replaceHead().
bool FieldChainInfo::contains | ( | const FieldRegion * | FR | ) | const |
Definition at line 380 of file UninitializedObjectChecker.cpp.
References printTail().
Referenced by clang::ento::FindUninitializedFields::FindUninitializedFields().
|
inline |
Definition at line 181 of file UninitializedObject.h.
Referenced by clang::ento::FindUninitializedFields::FindUninitializedFields().
|
inline |
Definition at line 182 of file UninitializedObject.h.
Referenced by clang::ento::FindUninitializedFields::FindUninitializedFields().
|
inline |
Definition at line 179 of file UninitializedObject.h.
Referenced by clang::ento::FindUninitializedFields::FindUninitializedFields(), and printNoteMsg().
void FieldChainInfo::printNoteMsg | ( | llvm::raw_ostream & | Out | ) | const |
Definition at line 408 of file UninitializedObjectChecker.cpp.
References isEmpty(), clang::ento::FieldNode::printNode(), clang::ento::FieldNode::printNoteMsg(), and printTail().
Referenced by clang::ento::FindUninitializedFields::FindUninitializedFields().
|
inline |
Constructs a new FieldChainInfo object with FN
as the new head of the list.
Definition at line 341 of file UninitializedObject.h.
References add().
Referenced by clang::ento::FindUninitializedFields::FindUninitializedFields().