class EHCatchScope
Declaration
class EHCatchScope : public EHScope { /* full declaration omitted */ };
Description
A scope which attempts to handle some, possibly all, types of exceptions. Objective C @ finally blocks are represented using a cleanup scope after the catch scope.
Declared at: clang/lib/CodeGen/CGCleanup.h:146
Inherits from: EHScope
Member Variables
Inherited from EHScope:
Method Overview
- public EHCatchScope(unsigned int numHandlers, EHScopeStack::stable_iterator enclosingEHScope)
- public clang::CodeGen::EHCatchScope::iterator begin() const
- public static bool classof(const clang::CodeGen::EHScope * Scope)
- public void clearHandlerBlocks()
- public clang::CodeGen::EHCatchScope::iterator end() const
- public const clang::CodeGen::EHCatchScope::Handler & getHandler(unsigned int I) const
- private clang::CodeGen::EHCatchScope::Handler * getHandlers()
- private const clang::CodeGen::EHCatchScope::Handler * getHandlers() const
- public unsigned int getNumHandlers() const
- public static size_t getSizeForNumHandlers(unsigned int N)
- public void setCatchAllHandler(unsigned int I, llvm::BasicBlock * Block)
- public void setHandler(unsigned int I, llvm::Constant * Type, llvm::BasicBlock * Block)
- public void setHandler(unsigned int I, clang::CodeGen::CatchTypeInfo Type, llvm::BasicBlock * Block)
Inherited from EHScope:
- public getCachedEHDispatchBlock
- public getCachedLandingPad
- public getEnclosingEHScope
- public getKind
- public hasEHBranches
- public setCachedEHDispatchBlock
- public setCachedLandingPad
Methods
¶EHCatchScope(unsigned int numHandlers,
EHScopeStack::stable_iterator
enclosingEHScope)
EHCatchScope(unsigned int numHandlers,
EHScopeStack::stable_iterator
enclosingEHScope)
Declared at: clang/lib/CodeGen/CGCleanup.h:180
Parameters
- unsigned int numHandlers
- EHScopeStack::stable_iterator enclosingEHScope
¶clang::CodeGen::EHCatchScope::iterator begin()
const
clang::CodeGen::EHCatchScope::iterator begin()
const
Declared at: clang/lib/CodeGen/CGCleanup.h:222
¶static bool classof(
const clang::CodeGen::EHScope* Scope)
static bool classof(
const clang::CodeGen::EHScope* Scope)
Declared at: clang/lib/CodeGen/CGCleanup.h:225
Parameters
- const clang::CodeGen::EHScope* Scope
¶void clearHandlerBlocks()
void clearHandlerBlocks()
Declared at: clang/lib/CodeGen/CGCleanup.h:216
¶clang::CodeGen::EHCatchScope::iterator end() const
clang::CodeGen::EHCatchScope::iterator end() const
Declared at: clang/lib/CodeGen/CGCleanup.h:223
¶const clang::CodeGen::EHCatchScope::Handler&
getHandler(unsigned int I) const
const clang::CodeGen::EHCatchScope::Handler&
getHandler(unsigned int I) const
Declared at: clang/lib/CodeGen/CGCleanup.h:207
Parameters
- unsigned int I
¶clang::CodeGen::EHCatchScope::Handler*
getHandlers()
clang::CodeGen::EHCatchScope::Handler*
getHandlers()
Declared at: clang/lib/CodeGen/CGCleanup.h:167
¶const clang::CodeGen::EHCatchScope::Handler*
getHandlers() const
const clang::CodeGen::EHCatchScope::Handler*
getHandlers() const
Declared at: clang/lib/CodeGen/CGCleanup.h:171
¶unsigned int getNumHandlers() const
unsigned int getNumHandlers() const
Declared at: clang/lib/CodeGen/CGCleanup.h:187
¶static size_t getSizeForNumHandlers(
unsigned int N)
static size_t getSizeForNumHandlers(
unsigned int N)
Declared at: clang/lib/CodeGen/CGCleanup.h:176
Parameters
- unsigned int N
¶void setCatchAllHandler(unsigned int I,
llvm::BasicBlock* Block)
void setCatchAllHandler(unsigned int I,
llvm::BasicBlock* Block)
Declared at: clang/lib/CodeGen/CGCleanup.h:191
Parameters
- unsigned int I
- llvm::BasicBlock* Block
¶void setHandler(unsigned int I,
llvm::Constant* Type,
llvm::BasicBlock* Block)
void setHandler(unsigned int I,
llvm::Constant* Type,
llvm::BasicBlock* Block)
Declared at: clang/lib/CodeGen/CGCleanup.h:195
Parameters
- unsigned int I
- llvm::Constant* Type
- llvm::BasicBlock* Block
¶void setHandler(
unsigned int I,
clang::CodeGen::CatchTypeInfo Type,
llvm::BasicBlock* Block)
void setHandler(
unsigned int I,
clang::CodeGen::CatchTypeInfo Type,
llvm::BasicBlock* Block)
Declared at: clang/lib/CodeGen/CGCleanup.h:201
Parameters
- unsigned int I
- clang::CodeGen::CatchTypeInfo Type
- llvm::BasicBlock* Block