Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
|
#include <qv4compilercontrolflow_p.h>
Public Member Functions | |
ControlFlowCatch (Codegen *cg, QQmlJS::AST::Catch *catchExpression) | |
virtual bool | requiresUnwind () override |
BytecodeGenerator::ExceptionHandler * | unwindHandler () override |
~ControlFlowCatch () | |
Public Member Functions inherited from QV4::Compiler::ControlFlowUnwind | |
ControlFlowUnwind (Codegen *cg, Type type) | |
void | setupUnwindHandler () |
void | emitUnwindHandler () |
Public Member Functions inherited from QV4::Compiler::ControlFlow | |
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 () |
Public Attributes | |
QQmlJS::AST::Catch * | catchExpression |
bool | insideCatch = false |
BytecodeGenerator::ExceptionHandler | exceptionLabel |
Public Attributes inherited from QV4::Compiler::ControlFlowUnwind | |
BytecodeGenerator::ExceptionHandler | unwindLabel |
Public Attributes inherited from QV4::Compiler::ControlFlow | |
Codegen * | cg |
ControlFlow * | parent |
Type | type |
Additional Inherited Members | |
Public Types inherited from QV4::Compiler::ControlFlow | |
enum | Type { Loop , With , Block , Finally , Catch } |
enum | UnwindType { Break , Continue , Return } |
using | Reference = Codegen::Reference |
using | BytecodeGenerator = Moth::BytecodeGenerator |
using | Instruction = Moth::Instruction |
Protected Member Functions inherited from QV4::Compiler::ControlFlow | |
virtual BytecodeGenerator::Label | getUnwindTarget (UnwindType, const QString &=QString()) |
QString | loopLabel () const |
BytecodeGenerator * | generator () const |
Definition at line 278 of file qv4compilercontrolflow_p.h.
|
inline |
Definition at line 284 of file qv4compilercontrolflow_p.h.
References exceptionLabel, QV4::Compiler::ControlFlow::generator(), and QV4::Moth::BytecodeGenerator::setUnwindHandler().
|
inline |
Definition at line 299 of file qv4compilercontrolflow_p.h.
References QQmlJS::AST::PatternElement::bindingIdentifier, catchExpression, QV4::Compiler::ControlFlow::cg, QV4::Compiler::Context::emitBlockFooter(), QV4::Compiler::Context::emitBlockHeader(), QV4::Compiler::ControlFlowUnwind::emitUnwindHandler(), QV4::Compiler::Codegen::enterBlock(), exceptionLabel, QV4::Compiler::Codegen::Reference::fromName(), QV4::Compiler::ControlFlow::generator(), QV4::Compiler::Codegen::initializeAndDestructureBindingElement(), insideCatch, QStringView::isEmpty(), QV4::Moth::BytecodeGenerator::jumpNoException(), QV4::Compiler::Codegen::leaveBlock(), QV4::Moth::BytecodeGenerator::Label::link(), QV4::Compiler::ControlFlow::parentUnwindHandler(), QQmlJS::AST::Catch::patternElement, QStringLiteral, QV4::Moth::BytecodeGenerator::setUnwindHandler(), QV4::Compiler::ControlFlowUnwind::setupUnwindHandler(), QQmlJS::AST::Catch::statement, QV4::Compiler::Codegen::statementList(), QQmlJS::AST::Block::statements, and QV4::Compiler::ControlFlowUnwind::unwindLabel.
|
inlineoverridevirtual |
Reimplemented from QV4::Compiler::ControlFlow.
Definition at line 291 of file qv4compilercontrolflow_p.h.
|
inlineoverridevirtual |
Reimplemented from QV4::Compiler::ControlFlowUnwind.
Definition at line 295 of file qv4compilercontrolflow_p.h.
References exceptionLabel, insideCatch, and QV4::Compiler::ControlFlowUnwind::unwindLabel.
QQmlJS::AST::Catch* QV4::Compiler::ControlFlowCatch::catchExpression |
Definition at line 280 of file qv4compilercontrolflow_p.h.
Referenced by ~ControlFlowCatch().
BytecodeGenerator::ExceptionHandler QV4::Compiler::ControlFlowCatch::exceptionLabel |
Definition at line 282 of file qv4compilercontrolflow_p.h.
Referenced by ControlFlowCatch(), ~ControlFlowCatch(), and unwindHandler().
bool QV4::Compiler::ControlFlowCatch::insideCatch = false |
Definition at line 281 of file qv4compilercontrolflow_p.h.
Referenced by ~ControlFlowCatch(), and unwindHandler().