clang 22.0.0git
|
A stack of scopes which respond to exceptions, including cleanups and catch blocks. More...
#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/CIR/CodeGen/EHScopeStack.h"
Classes | |
class | Cleanup |
Information for lazily generating a cleanup. More... | |
class | iterator |
A non-stable pointer into the scope stack. More... | |
class | stable_iterator |
A saved depth on the scope stack. More... |
Public Types | |
enum | { ScopeStackAlignment = 8 } |
Public Member Functions | |
EHScopeStack ()=default | |
~EHScopeStack ()=default | |
template<class T, class... As> | |
void | pushCleanup (CleanupKind kind, As... a) |
Push a lazily-created cleanup on the stack. | |
void | setCGF (CIRGenFunction *inCGF) |
void | popCleanup () |
Pops a cleanup scope off the stack. This is private to CIRGenCleanup.cpp. | |
bool | empty () const |
Determines whether the exception-scopes stack is empty. | |
iterator | begin () const |
Returns an iterator pointing to the innermost EH scope. | |
stable_iterator | stable_begin () const |
Create a stable reference to the top of the EH stack. | |
iterator | find (stable_iterator savePoint) const |
Turn a stable reference to a scope depth into a unstable pointer to the EH stack. |
Static Public Member Functions | |
static stable_iterator | stable_end () |
Create a stable reference to the bottom of the EH stack. |
Friends | |
class | CIRGenFunction |
A stack of scopes which respond to exceptions, including cleanups and catch blocks.
Definition at line 44 of file EHScopeStack.h.
anonymous enum |
Enumerator | |
---|---|
ScopeStackAlignment |
Definition at line 49 of file EHScopeStack.h.
|
default |
|
default |
|
inline |
Returns an iterator pointing to the innermost EH scope.
Definition at line 138 of file CIRGenCleanup.h.
|
inline |
Determines whether the exception-scopes stack is empty.
Definition at line 159 of file EHScopeStack.h.
|
inline |
Turn a stable reference to a scope depth into a unstable pointer to the EH stack.
Definition at line 143 of file CIRGenCleanup.h.
References clang::CIRGen::EHScopeStack::stable_iterator::isValid(), and stable_begin().
void clang::CIRGen::EHScopeStack::popCleanup | ( | ) |
Pops a cleanup scope off the stack. This is private to CIRGenCleanup.cpp.
|
inline |
Push a lazily-created cleanup on the stack.
Definition at line 146 of file EHScopeStack.h.
References ScopeStackAlignment, and clang::T.
|
inline |
Definition at line 153 of file EHScopeStack.h.
References CIRGenFunction.
|
inline |
Create a stable reference to the top of the EH stack.
The returned reference is valid until that scope is popped off the stack.
Definition at line 171 of file EHScopeStack.h.
Referenced by find().
|
inlinestatic |
Create a stable reference to the bottom of the EH stack.
Definition at line 180 of file EHScopeStack.h.
|
friend |
Definition at line 45 of file EHScopeStack.h.
References CIRGenFunction.
Referenced by CIRGenFunction, clang::CIRGen::EHScopeStack::Cleanup::emit(), and setCGF().