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 5202 of file TypeBase.h.
Definition at line 5234 of file TypeBase.h.
Definition at line 5215 of file TypeBase.h.
|
default |
Referenced by getIntersection(), and getUnion().
|
inlineexplicit |
Definition at line 5209 of file TypeBase.h.
|
inline |
Definition at line 5217 of file TypeBase.h.
LLVM_DUMP_METHOD void FunctionEffectSet::dump | ( | llvm::raw_ostream & | OS | ) | const |
Definition at line 5706 of file Type.cpp.
References clang::FunctionEffectsRef::dump().
|
inline |
Definition at line 5212 of file TypeBase.h.
|
inline |
Definition at line 5218 of file TypeBase.h.
References size().
|
static |
Definition at line 5635 of file Type.cpp.
References clang::FunctionEffectsRef::begin(), clang::FunctionEffectsRef::end(), FunctionEffectSet(), and clang::Result.
Referenced by clang::ASTContext::mergeFunctionTypes().
|
static |
Definition at line 5673 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 5629 of file Type.cpp.
References insert(), and clang::Set.
bool FunctionEffectSet::insert | ( | const FunctionEffectWithCondition & | NewEC, |
Conflicts & | Errs ) |
Definition at line 5586 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 5220 of file TypeBase.h.
|
inline |
Definition at line 5213 of file TypeBase.h.
Referenced by end().
Definition at line 5216 of file TypeBase.h.