clang  20.0.0git
Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
clang::FunctionEffectSet Class Reference

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
 

Detailed Description

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 4949 of file Type.h.

Member Typedef Documentation

◆ Conflicts

Definition at line 4981 of file Type.h.

◆ iterator

Definition at line 4962 of file Type.h.

Constructor & Destructor Documentation

◆ FunctionEffectSet() [1/2]

clang::FunctionEffectSet::FunctionEffectSet ( )
default

Referenced by getUnion().

◆ FunctionEffectSet() [2/2]

clang::FunctionEffectSet::FunctionEffectSet ( const FunctionEffectsRef FX)
inlineexplicit

Definition at line 4956 of file Type.h.

Member Function Documentation

◆ begin()

iterator clang::FunctionEffectSet::begin ( ) const
inline

Definition at line 4964 of file Type.h.

◆ dump()

LLVM_DUMP_METHOD void FunctionEffectSet::dump ( llvm::raw_ostream &  OS) const

Definition at line 5330 of file Type.cpp.

References clang::FunctionEffectsRef::dump().

◆ empty()

bool clang::FunctionEffectSet::empty ( ) const
inline

Definition at line 4959 of file Type.h.

◆ end()

iterator clang::FunctionEffectSet::end ( ) const
inline

Definition at line 4965 of file Type.h.

◆ getIntersection()

FunctionEffectSet FunctionEffectSet::getIntersection ( FunctionEffectsRef  LHS,
FunctionEffectsRef  RHS 
)
static

◆ getUnion()

FunctionEffectSet FunctionEffectSet::getUnion ( FunctionEffectsRef  LHS,
FunctionEffectsRef  RHS,
Conflicts Errs 
)
static

◆ insert() [1/2]

bool FunctionEffectSet::insert ( const FunctionEffectsRef Set,
Conflicts Errs 
)

Definition at line 5256 of file Type.cpp.

References insert(), and clang::Set.

◆ insert() [2/2]

bool FunctionEffectSet::insert ( const FunctionEffectWithCondition NewEC,
Conflicts Errs 
)

◆ operator FunctionEffectsRef()

clang::FunctionEffectSet::operator FunctionEffectsRef ( ) const
inline

Definition at line 4967 of file Type.h.

◆ size()

size_t clang::FunctionEffectSet::size ( ) const
inline

Definition at line 4960 of file Type.h.

Member Data Documentation

◆ iterator

Definition at line 4963 of file Type.h.


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