clang 22.0.0git
LimitedRegionBindingsRef Class Reference

This class represents the same as RegionBindingsRef, but with a limit on the number of bindings that can be added. More...

Inheritance diagram for LimitedRegionBindingsRef:
[legend]

Public Member Functions

 LimitedRegionBindingsRef (RegionBindingsRef Base, SmallVectorImpl< SVal > &EscapedValuesDuringBind, std::optional< unsigned > BindingsLeft)
bool hasExhaustedBindingLimit () const
LimitedRegionBindingsRef withValuesEscaped (SVal V) const
LimitedRegionBindingsRef withValuesEscaped (nonloc::CompoundVal::iterator Begin, nonloc::CompoundVal::iterator End) const
LimitedRegionBindingsRef addWithoutDecreasingLimit (const MemRegion *BaseRegion, data_type_ref BindingKeyAndValue) const
LimitedRegionBindingsRef removeCluster (const MemRegion *BaseRegion) const
LimitedRegionBindingsRef addBinding (BindingKey K, SVal V) const
LimitedRegionBindingsRef addBinding (const MemRegion *R, BindingKey::Kind k, SVal V) const

Detailed Description

This class represents the same as RegionBindingsRef, but with a limit on the number of bindings that can be added.

Definition at line 333 of file RegionStore.cpp.

Constructor & Destructor Documentation

◆ LimitedRegionBindingsRef()

LimitedRegionBindingsRef::LimitedRegionBindingsRef ( RegionBindingsRef Base,
SmallVectorImpl< SVal > & EscapedValuesDuringBind,
std::optional< unsigned > BindingsLeft )
inline

Member Function Documentation

◆ addBinding() [1/2]

LimitedRegionBindingsRef LimitedRegionBindingsRef::addBinding ( BindingKey K,
SVal V ) const
inline

◆ addBinding() [2/2]

LimitedRegionBindingsRef LimitedRegionBindingsRef::addBinding ( const MemRegion * R,
BindingKey::Kind k,
SVal V ) const
inline

Definition at line 392 of file RegionStore.cpp.

References addBinding(), LimitedRegionBindingsRef(), and V.

◆ addWithoutDecreasingLimit()

LimitedRegionBindingsRef LimitedRegionBindingsRef::addWithoutDecreasingLimit ( const MemRegion * BaseRegion,
data_type_ref BindingKeyAndValue ) const
inline

◆ hasExhaustedBindingLimit()

bool LimitedRegionBindingsRef::hasExhaustedBindingLimit ( ) const
inline

◆ removeCluster()

LimitedRegionBindingsRef LimitedRegionBindingsRef::removeCluster ( const MemRegion * BaseRegion) const
inline

◆ withValuesEscaped() [1/2]

LimitedRegionBindingsRef LimitedRegionBindingsRef::withValuesEscaped ( nonloc::CompoundVal::iterator Begin,
nonloc::CompoundVal::iterator End ) const
inline

Definition at line 352 of file RegionStore.cpp.

References V, and withValuesEscaped().

◆ withValuesEscaped() [2/2]

LimitedRegionBindingsRef LimitedRegionBindingsRef::withValuesEscaped ( SVal V) const
inline

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