clang 20.0.0git
|
Construction context can be seen as a linked list of multiple layers. More...
#include "clang/Analysis/ConstructionContext.h"
Public Member Functions | |
const ConstructionContextItem & | getItem () const |
const ConstructionContextLayer * | getParent () const |
bool | isLast () const |
bool | isStrictlyMoreSpecificThan (const ConstructionContextLayer *Other) const |
See if Other is a proper initial segment of this construction context in terms of the parent chain - i.e. | |
Static Public Member Functions | |
static const ConstructionContextLayer * | create (BumpVectorContext &C, const ConstructionContextItem &Item, const ConstructionContextLayer *Parent=nullptr) |
Construction context can be seen as a linked list of multiple layers.
Sometimes a single trigger is not enough to describe the construction site. That's what causing us to have a chain of "partial" construction context layers. Some examples:
Definition at line 213 of file ConstructionContext.h.
|
static |
Definition at line 22 of file ConstructionContext.cpp.
|
inline |
Definition at line 226 of file ConstructionContext.h.
Referenced by clang::ConstructionContext::createFromLayers().
|
inline |
Definition at line 227 of file ConstructionContext.h.
References Parent.
Referenced by clang::ConstructionContext::createFromLayers().
|
inline |
Definition at line 228 of file ConstructionContext.h.
References Parent.
Referenced by clang::ConstructionContext::createFromLayers().
bool ConstructionContextLayer::isStrictlyMoreSpecificThan | ( | const ConstructionContextLayer * | Other | ) | const |
See if Other is a proper initial segment of this construction context in terms of the parent chain - i.e.
a few first parents coincide and then the other context terminates but our context goes further - i.e., we are providing the same context that the other context provides, and a bit more above that.
Definition at line 30 of file ConstructionContext.cpp.
References clang::Other, and clang::Self.