clang 22.0.0git
|
A mutable set of FunctionEffects and possibly conditions attached to them. More...
#include "clang/AST/TypeBase.h"
Classes | |
struct | Conflict |
Public Types | |
using | iterator = FunctionEffectIterator<FunctionEffectSet> |
using | Conflicts = SmallVector<Conflict> |
Public Member Functions | |
FunctionEffectSet ()=default | |
FunctionEffectSet (const FunctionEffectsRef &FX) | |
bool | empty () const |
size_t | size () const |
iterator | begin () const |
iterator | end () const |
operator FunctionEffectsRef () const | |
void | dump (llvm::raw_ostream &OS) const |
bool | insert (const FunctionEffectWithCondition &NewEC, Conflicts &Errs) |
bool | insert (const FunctionEffectsRef &Set, Conflicts &Errs) |
Static Public Member Functions | |
static FunctionEffectSet | getUnion (FunctionEffectsRef LHS, FunctionEffectsRef RHS, Conflicts &Errs) |
static FunctionEffectSet | getIntersection (FunctionEffectsRef LHS, FunctionEffectsRef RHS) |
Public Attributes | |
friend | iterator |
A mutable set of FunctionEffects and possibly conditions attached to them.
Used to compare and merge effects on declarations.
Has the same invariants as FunctionEffectsRef.
Definition at line 5200 of file TypeBase.h.
Definition at line 5232 of file TypeBase.h.
Definition at line 5213 of file TypeBase.h.
|
default |
Referenced by getIntersection(), and getUnion().
|
inlineexplicit |
Definition at line 5207 of file TypeBase.h.
|
inline |
Definition at line 5215 of file TypeBase.h.
LLVM_DUMP_METHOD void FunctionEffectSet::dump | ( | llvm::raw_ostream & | OS | ) | const |
Definition at line 5712 of file Type.cpp.
References clang::FunctionEffectsRef::dump().
|
inline |
Definition at line 5210 of file TypeBase.h.
|
inline |
Definition at line 5216 of file TypeBase.h.
References size().
|
static |
Definition at line 5641 of file Type.cpp.
References clang::FunctionEffectsRef::begin(), clang::FunctionEffectsRef::end(), FunctionEffectSet(), and clang::Result.
Referenced by clang::ASTContext::mergeFunctionTypes().
|
static |
Definition at line 5679 of file Type.cpp.
References clang::FunctionEffectsRef::empty(), FunctionEffectSet(), and insert().
Referenced by clang::Sema::MergeFunctionDecl(), and clang::ASTContext::mergeFunctionTypes().
bool FunctionEffectSet::insert | ( | const FunctionEffectsRef & | Set, |
Conflicts & | Errs ) |
Definition at line 5635 of file Type.cpp.
References insert(), and clang::Set.
bool FunctionEffectSet::insert | ( | const FunctionEffectWithCondition & | NewEC, |
Conflicts & | Errs ) |
Definition at line 5592 of file Type.cpp.
References clang::FunctionEffectWithCondition::Cond, clang::FunctionEffectWithCondition::Effect, clang::EffectConditionExpr::getCondition(), clang::FunctionEffect::kind(), and clang::FunctionEffect::oppositeKind().
Referenced by clang::Sema::CheckOverridingFunctionAttributes(), getUnion(), handleNonBlockingNonAllocatingTypeAttr(), and insert().
|
inline |
Definition at line 5218 of file TypeBase.h.
|
inline |
Definition at line 5211 of file TypeBase.h.
Referenced by end().
Definition at line 5214 of file TypeBase.h.