clang 20.0.0git
Public Member Functions | Static Public Member Functions | List of all members
clang::CodeGen::EHFilterScope Class Reference

An exceptions scope which filters exceptions thrown through it. More...

#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/CodeGen/CGCleanup.h"

Inheritance diagram for clang::CodeGen::EHFilterScope:
Inheritance graph
[legend]

Public Member Functions

 EHFilterScope (unsigned numFilters)
 
unsigned getNumFilters () const
 
void setFilter (unsigned i, llvm::Value *filterValue)
 
llvm::Value * getFilter (unsigned i) const
 
- Public Member Functions inherited from clang::CodeGen::EHScope
 EHScope (Kind kind, EHScopeStack::stable_iterator enclosingEHScope)
 
Kind getKind () const
 
llvm::BasicBlock * getCachedLandingPad () const
 
void setCachedLandingPad (llvm::BasicBlock *block)
 
llvm::BasicBlock * getCachedEHDispatchBlock () const
 
void setCachedEHDispatchBlock (llvm::BasicBlock *block)
 
bool hasEHBranches () const
 
EHScopeStack::stable_iterator getEnclosingEHScope () const
 

Static Public Member Functions

static size_t getSizeForNumFilters (unsigned numFilters)
 
static bool classof (const EHScope *scope)
 

Additional Inherited Members

- Public Types inherited from clang::CodeGen::EHScope
enum  Kind { Cleanup , Catch , Terminate , Filter }
 
- Protected Attributes inherited from clang::CodeGen::EHScope
union {
   CommonBitFields   CommonBits
 
   CatchBitFields   CatchBits
 
   CleanupBitFields   CleanupBits
 
   FilterBitFields   FilterBits
 
}; 
 

Detailed Description

An exceptions scope which filters exceptions thrown through it.

Only exceptions matching the filter types will be permitted to be thrown.

This is used to implement C++ exception specifications.

Definition at line 501 of file CGCleanup.h.

Constructor & Destructor Documentation

◆ EHFilterScope()

clang::CodeGen::EHFilterScope::EHFilterScope ( unsigned  numFilters)
inline

Definition at line 514 of file CGCleanup.h.

References clang::CodeGen::EHScope::FilterBits.

Member Function Documentation

◆ classof()

static bool clang::CodeGen::EHFilterScope::classof ( const EHScope scope)
inlinestatic

◆ getFilter()

llvm::Value * clang::CodeGen::EHFilterScope::getFilter ( unsigned  i) const
inline

Definition at line 531 of file CGCleanup.h.

References getNumFilters().

◆ getNumFilters()

unsigned clang::CodeGen::EHFilterScope::getNumFilters ( ) const
inline

◆ getSizeForNumFilters()

static size_t clang::CodeGen::EHFilterScope::getSizeForNumFilters ( unsigned  numFilters)
inlinestatic

◆ setFilter()

void clang::CodeGen::EHFilterScope::setFilter ( unsigned  i,
llvm::Value *  filterValue 
)
inline

Definition at line 526 of file CGCleanup.h.

References getNumFilters().


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