clang  14.0.0git
Public Member Functions | Static Public Member Functions | List of all members
clang::ConstructionContextLayer Class Reference

Construction context can be seen as a linked list of multiple layers. More...

#include "clang/Analysis/ConstructionContext.h"

Public Member Functions

const ConstructionContextItemgetItem () const
 
const ConstructionContextLayergetParent () 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. More...
 

Static Public Member Functions

static const ConstructionContextLayercreate (BumpVectorContext &C, const ConstructionContextItem &Item, const ConstructionContextLayer *Parent=nullptr)
 

Detailed Description

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 206 of file ConstructionContext.h.

Member Function Documentation

◆ create()

const ConstructionContextLayer * ConstructionContextLayer::create ( BumpVectorContext C,
const ConstructionContextItem Item,
const ConstructionContextLayer Parent = nullptr 
)
static

Definition at line 22 of file ConstructionContext.cpp.

References Parent.

◆ getItem()

const ConstructionContextItem& clang::ConstructionContextLayer::getItem ( ) const
inline

Definition at line 219 of file ConstructionContext.h.

Referenced by clang::ConstructionContext::createFromLayers().

◆ getParent()

const ConstructionContextLayer* clang::ConstructionContextLayer::getParent ( ) const
inline

◆ isLast()

bool clang::ConstructionContextLayer::isLast ( ) const
inline

Definition at line 221 of file ConstructionContext.h.

References Parent.

Referenced by clang::ConstructionContext::createFromLayers().

◆ isStrictlyMoreSpecificThan()

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 getParent().


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