![]() |
Qt 6.x
The Qt SDK
|
#include <qv4compilercontrolflow_p.h>
Public Member Functions | |
ControlFlowUnwind (Codegen *cg, Type type) | |
void | setupUnwindHandler () |
void | emitUnwindHandler () |
virtual BytecodeGenerator::ExceptionHandler * | unwindHandler () override |
![]() | |
ControlFlow (Codegen *cg, Type type) | |
virtual | ~ControlFlow () |
UnwindTarget | unwindTarget (UnwindType type, const QString &label=QString()) |
virtual QString | label () const |
bool | hasLoop () const |
BytecodeGenerator::ExceptionHandler * | parentUnwindHandler () |
virtual BytecodeGenerator::ExceptionHandler * | unwindHandler () |
Public Attributes | |
BytecodeGenerator::ExceptionHandler | unwindLabel |
![]() | |
Codegen * | cg |
ControlFlow * | parent |
Type | type |
Additional Inherited Members | |
![]() | |
enum | Type { Loop , With , Block , Finally , Catch } |
enum | UnwindType { Break , Continue , Return } |
using | Reference = Codegen::Reference |
using | BytecodeGenerator = Moth::BytecodeGenerator |
using | Instruction = Moth::Instruction |
![]() | |
virtual BytecodeGenerator::Label | getUnwindTarget (UnwindType, const QString &=QString()) |
virtual bool | requiresUnwind () |
QString | loopLabel () const |
BytecodeGenerator * | generator () const |
Definition at line 127 of file qv4compilercontrolflow_p.h.
Definition at line 131 of file qv4compilercontrolflow_p.h.
|
inline |
Definition at line 141 of file qv4compilercontrolflow_p.h.
References QV4::Moth::BytecodeGenerator::addInstruction(), QV4::Compiler::ControlFlow::generator(), Q_ASSERT, and QV4::Compiler::ControlFlow::requiresUnwind().
Referenced by QV4::Compiler::ControlFlowBlock::~ControlFlowBlock(), QV4::Compiler::ControlFlowCatch::~ControlFlowCatch(), QV4::Compiler::ControlFlowFinally::~ControlFlowFinally(), QV4::Compiler::ControlFlowUnwindCleanup::~ControlFlowUnwindCleanup(), and QV4::Compiler::ControlFlowWith::~ControlFlowWith().
|
inline |
Definition at line 136 of file qv4compilercontrolflow_p.h.
References QV4::Compiler::ControlFlow::generator(), QV4::Moth::BytecodeGenerator::newExceptionHandler(), and unwindLabel.
Referenced by QV4::Compiler::ControlFlowBlock::ControlFlowBlock(), QV4::Compiler::ControlFlowFinally::ControlFlowFinally(), QV4::Compiler::ControlFlowUnwindCleanup::ControlFlowUnwindCleanup(), QV4::Compiler::ControlFlowWith::ControlFlowWith(), and QV4::Compiler::ControlFlowCatch::~ControlFlowCatch().
|
inlineoverridevirtual |
Reimplemented from QV4::Compiler::ControlFlow.
Reimplemented in QV4::Compiler::ControlFlowCatch, and QV4::Compiler::ControlFlowFinally.
Definition at line 149 of file qv4compilercontrolflow_p.h.
References QV4::Moth::BytecodeGenerator::ExceptionHandler::isValid(), QV4::Compiler::ControlFlow::parentUnwindHandler(), and unwindLabel.
Referenced by QV4::Compiler::ControlFlowFinally::unwindHandler().
BytecodeGenerator::ExceptionHandler QV4::Compiler::ControlFlowUnwind::unwindLabel |
Definition at line 129 of file qv4compilercontrolflow_p.h.
Referenced by QV4::Compiler::ControlFlowBlock::ControlFlowBlock(), QV4::Compiler::ControlFlowFinally::ControlFlowFinally(), QV4::Compiler::ControlFlowUnwindCleanup::ControlFlowUnwindCleanup(), QV4::Compiler::ControlFlowWith::ControlFlowWith(), QV4::Compiler::ControlFlowBlock::~ControlFlowBlock(), QV4::Compiler::ControlFlowCatch::~ControlFlowCatch(), QV4::Compiler::ControlFlowFinally::~ControlFlowFinally(), QV4::Compiler::ControlFlowUnwindCleanup::~ControlFlowUnwindCleanup(), QV4::Compiler::ControlFlowWith::~ControlFlowWith(), setupUnwindHandler(), unwindHandler(), and QV4::Compiler::ControlFlowCatch::unwindHandler().