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>.
Loading...
Searching...
No Matches
QV4DataCollector Class Reference

#include <qv4datacollector.h>

+ Collaboration diagram for QV4DataCollector:

Public Types

typedef uint Ref
 
typedef QVector< uintRefs
 

Public Member Functions

QVector< QV4::Heap::ExecutionContext::ContextType > getScopeTypes (int frame)
 
QV4::Heap::ExecutionContext * findContext (int frame)
 
QV4::CppStackFramefindFrame (int frame)
 
 QV4DataCollector (QV4::ExecutionEngine *engine)
 
Ref addValueRef (const QV4::ScopedValue &value)
 
bool isValidRef (Ref ref) const
 
QJsonObject lookupRef (Ref ref)
 
bool collectScope (QJsonObject *dict, int frameNr, int scopeNr)
 
QJsonObject buildFrame (const QV4::StackFrame &stackFrame, int frameNr)
 
QV4::ExecutionEngineengine () const
 
void clear ()
 

Static Public Member Functions

static QV4::Heap::ExecutionContext * findScope (QV4::Heap::ExecutionContext *ctxt, int scope)
 
static int encodeScopeType (QV4::Heap::ExecutionContext::ContextType scopeType)
 

Detailed Description

Definition at line 19 of file qv4datacollector.h.

Member Typedef Documentation

◆ Ref

Definition at line 22 of file qv4datacollector.h.

◆ Refs

Definition at line 23 of file qv4datacollector.h.

Constructor & Destructor Documentation

◆ QV4DataCollector()

QV4DataCollector::QV4DataCollector ( QV4::ExecutionEngine * engine)

Definition at line 77 of file qv4datacollector.cpp.

References engine(), QV4::ExecutionEngine::newArrayObject(), and QV4::PersistentValue::set().

+ Here is the call graph for this function:

Member Function Documentation

◆ addValueRef()

QV4DataCollector::Ref QV4DataCollector::addValueRef ( const QV4::ScopedValue & value)

Definition at line 83 of file qv4datacollector.cpp.

Referenced by buildFrame(), collectScope(), and ExpressionEvalJob::handleResult().

+ Here is the caller graph for this function:

◆ buildFrame()

QJsonObject QV4DataCollector::buildFrame ( const QV4::StackFrame & stackFrame,
int frameNr )

Definition at line 217 of file qv4datacollector.cpp.

References addValueRef(), encodeScopeType(), engine(), findContext(), frame, getScopeTypes(), i, o, qAbs(), and toRef().

Referenced by BacktraceJob::run(), and FrameJob::run().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ clear()

void QV4DataCollector::clear ( )

Definition at line 262 of file qv4datacollector.cpp.

References engine(), and QV4::PersistentValue::set().

Referenced by QV4DebuggerAgent::debuggerPaused().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ collectScope()

bool QV4DataCollector::collectScope ( QJsonObject * dict,
int frameNr,
int scopeNr )

Definition at line 174 of file qv4datacollector.cpp.

References addValueRef(), engine(), QV4::Scope::engine, findContext(), findScope(), i, QV4::Heap::InternalClass::keyAt(), lookupRef(), QV4::ExecutionEngine::newString(), QV4::Object::put(), Q_ASSERT, and QV4::Heap::InternalClass::size.

Referenced by ScopeJob::run().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ encodeScopeType()

int QV4DataCollector::encodeScopeType ( QV4::Heap::ExecutionContext::ContextType scopeType)
static

Definition at line 60 of file qv4datacollector.cpp.

Referenced by buildFrame(), and ScopeJob::run().

+ Here is the caller graph for this function:

◆ engine()

QV4::ExecutionEngine * QV4DataCollector::engine ( ) const
inline

Definition at line 42 of file qv4datacollector.h.

Referenced by QV4DataCollector(), buildFrame(), clear(), collectScope(), findFrame(), isValidRef(), lookupRef(), BacktraceJob::run(), FrameJob::run(), and ValueLookupJob::run().

+ Here is the caller graph for this function:

◆ findContext()

QV4::Heap::ExecutionContext * QV4DataCollector::findContext ( int frame)

Definition at line 33 of file qv4datacollector.cpp.

References findFrame(), and frame.

Referenced by buildFrame(), and collectScope().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ findFrame()

QT_BEGIN_NAMESPACE QV4::CppStackFrame * QV4DataCollector::findFrame ( int frame)

Definition at line 23 of file qv4datacollector.cpp.

References QV4::EngineBase::currentStackFrame, engine(), and frame.

Referenced by findContext(), and getScopeTypes().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ findScope()

QV4::Heap::ExecutionContext * QV4DataCollector::findScope ( QV4::Heap::ExecutionContext * ctxt,
int scope )
static

Definition at line 40 of file qv4datacollector.cpp.

Referenced by collectScope().

+ Here is the caller graph for this function:

◆ getScopeTypes()

QVector< QV4::Heap::ExecutionContext::ContextType > QV4DataCollector::getScopeTypes ( int frame)

Definition at line 48 of file qv4datacollector.cpp.

References QV4::CppStackFrame::context(), findFrame(), frame, and it.

Referenced by buildFrame(), and ScopeJob::run().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isValidRef()

bool QV4DataCollector::isValidRef ( QV4DataCollector::Ref ref) const

Definition at line 167 of file qv4datacollector.cpp.

References engine(), and QV4::PersistentValue::value().

Referenced by ValueLookupJob::run().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lookupRef()

QJsonObject QV4DataCollector::lookupRef ( Ref ref)

Definition at line 152 of file qv4datacollector.cpp.

References collectProperty(), engine(), QJsonObject::insert(), and QStringLiteral.

Referenced by collectScope(), ExpressionEvalJob::handleResult(), and ValueLookupJob::run().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

The documentation for this class was generated from the following files: