diff options
author | Ulf Hermann <ulf.hermann@theqtcompany.com> | 2015-10-22 13:07:11 +0200 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@theqtcompany.com> | 2015-10-22 13:07:11 +0200 |
commit | b103f6a6b9cc0ddf3df2788816a6fd98369b1b6d (patch) | |
tree | fc90bc070f0f50a2d8768db8fa1e16611d158f18 /src/qml/jsruntime/qv4debugging_p.h | |
parent | 4867a49618e0d6a476e0549aeca5134b2e3c5892 (diff) | |
parent | 8ee3673e439b4499a8a4a4280637ee0270c4a54a (diff) |
Merge remote-tracking branch 'origin/5.6' into origin/dev
Conflicts:
src/plugins/qmltooling/qmldbg_debugger/qv4datacollector.cpp
src/plugins/qmltooling/qmldbg_debugger/qv4debuggeragent.cpp
src/plugins/qmltooling/qmldbg_debugger/qv4debuggeragent.h
src/plugins/qmltooling/qmldbg_debugger/qv4debugservice.cpp
src/plugins/qmltooling/qmldbg_debugger/qv4debugservice.h
src/qml/debugger/qqmldebugserviceinterfaces.cpp
src/qml/jsruntime/qv4debugging_p.h
Change-Id: I82a4ce1bcd4579181df886558f55ad2b328d1682
Diffstat (limited to 'src/qml/jsruntime/qv4debugging_p.h')
-rw-r--r-- | src/qml/jsruntime/qv4debugging_p.h | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/src/qml/jsruntime/qv4debugging_p.h b/src/qml/jsruntime/qv4debugging_p.h index 14bff238cc..683036882e 100644 --- a/src/qml/jsruntime/qv4debugging_p.h +++ b/src/qml/jsruntime/qv4debugging_p.h @@ -93,6 +93,19 @@ typedef QHash<DebuggerBreakPoint, QString> BreakPoints; class Q_QML_EXPORT Debugger : public QObject { Q_OBJECT + +public: + virtual ~Debugger() {} + virtual bool pauseAtNextOpportunity() const = 0; + virtual void maybeBreakAtInstruction() = 0; + virtual void enteringFunction() = 0; + virtual void leavingFunction(const ReturnedValue &retVal) = 0; + virtual void aboutToThrow() = 0; +}; + +class Q_QML_EXPORT V4Debugger : public Debugger +{ + Q_OBJECT public: class Q_QML_EXPORT Job { @@ -131,7 +144,7 @@ public: NotStepping = FullThrottle }; - Debugger(ExecutionEngine *engine); + V4Debugger(ExecutionEngine *engine); ExecutionEngine *engine() const { return m_engine; } @@ -173,13 +186,13 @@ public: // execution hooks void aboutToThrow(); signals: - void debuggerPaused(QV4::Debugging::Debugger *self, QV4::Debugging::PauseReason reason); + void debuggerPaused(QV4::Debugging::V4Debugger *self, QV4::Debugging::PauseReason reason); private: // requires lock to be held void pauseAndWait(PauseReason reason); bool reallyHitTheBreakPoint(const QString &filename, int linenr); - void runInEngine_havingLock(Debugger::Job *job); + void runInEngine_havingLock(V4Debugger::Job *job); private: QV4::ExecutionEngine *m_engine; |