clang 20.0.0git
|
A mutable set of FunctionEffects and possibly conditions attached to them. More...
#include "clang/AST/Type.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.
|
default |
Referenced by getUnion().
|
inlineexplicit |
LLVM_DUMP_METHOD void FunctionEffectSet::dump | ( | llvm::raw_ostream & | OS | ) | const |
Definition at line 5319 of file Type.cpp.
References clang::FunctionEffectsRef::dump().
|
static |
Definition at line 5251 of file Type.cpp.
References clang::FunctionEffectsRef::begin(), clang::FunctionEffectsRef::end(), and clang::Result.
Referenced by clang::ASTContext::mergeFunctionTypes().
|
static |
Definition at line 5289 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 5245 of file Type.cpp.
References insert(), and clang::Set.
bool FunctionEffectSet::insert | ( | const FunctionEffectWithCondition & | NewEC, |
Conflicts & | Errs | ||
) |
Definition at line 5202 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 |