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
QV4::CppStackFrame Struct Reference

#include <qv4stackframe_p.h>

+ Inheritance diagram for QV4::CppStackFrame:
+ Collaboration diagram for QV4::CppStackFrame:

Public Member Functions

void init (Function *v4Function, int argc, Kind kind)
 
bool isJSTypesFrame () const
 
bool isMetaTypesFrame () const
 
QString source () const
 
QString function () const
 
int lineNumber () const
 
int statementNumber () const
 
int missingLineNumber () const
 
CppStackFrameparentFrame () const
 
void setParentFrame (CppStackFrame *parentFrame)
 
int argc () const
 
ExecutionContextcontext () const
 
Heap::CallContext * callContext () const
 
ReturnedValue thisObject () const
 

Public Attributes

int instructionPointer
 
Functionv4Function
 

Protected Member Functions

 CppStackFrame ()=default
 
void push (EngineBase *engine)
 
void pop (EngineBase *engine)
 
Heap::CallContext * callContext (Heap::ExecutionContext *ctx) const
 

Additional Inherited Members

- Protected Types inherited from QV4::CppStackFrameBase
enum class  Kind : quint8 { JS , Meta }
 
- Protected Attributes inherited from QV4::CppStackFrameBase
CppStackFrameparent
 
Functionv4Function
 
int originalArgumentsCount
 
int instructionPointer
 
union { 
 
   struct { 
 
      Value *   savedStackTop 
 
      CallData *   jsFrame 
 
      const Value *   originalArguments 
 
      const char *   yield 
 
      const char *   unwindHandler 
 
      const char *   unwindLabel 
 
      int   unwindLevel 
 
      bool   yieldIsIterator 
 
      bool   callerCanHandleTailCall 
 
      bool   pendingTailCall 
 
      bool   isTailCalling 
 
   }  
 
   struct { 
 
      ExecutionContext *   context 
 
      QObject *   thisObject 
 
      const QMetaType *   metaTypes 
 
      void **   returnAndArgs 
 
      bool   returnValueIsUndefined 
 
   }  
 
};  
 
QT_WARNING_POP Kind kind
 

Detailed Description

Definition at line 68 of file qv4stackframe_p.h.

Constructor & Destructor Documentation

◆ CppStackFrame()

QV4::CppStackFrame::CppStackFrame ( )
protecteddefault

Member Function Documentation

◆ argc()

int QV4::CppStackFrame::argc ( ) const
inline

Definition at line 95 of file qv4stackframe_p.h.

◆ callContext() [1/2]

Heap::CallContext * QV4::CppStackFrame::callContext ( ) const
inline

Definition at line 99 of file qv4stackframe_p.h.

References callContext(), context, and d.

Referenced by callContext().

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

◆ callContext() [2/2]

Heap::CallContext * QV4::CppStackFrame::callContext ( Heap::ExecutionContext * ctx) const
inlineprotected

Definition at line 117 of file qv4stackframe_p.h.

◆ context()

ExecutionContext * QV4::CppStackFrame::context ( ) const
inline

Definition at line 288 of file qv4stackframe_p.h.

References context(), isJSTypesFrame(), isMetaTypesFrame(), and Q_ASSERT.

Referenced by context(), and QV4DataCollector::getScopeTypes().

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

◆ function()

QString CppStackFrame::function ( ) const

Definition at line 15 of file qv4stackframe.cpp.

References QV4::Function::name(), QV4::Heap::String::toQString(), and v4Function.

+ Here is the call graph for this function:

◆ init()

void QV4::CppStackFrame::init ( Function * v4Function,
int argc,
Kind kind )
inline

Definition at line 75 of file qv4stackframe_p.h.

◆ isJSTypesFrame()

bool QV4::CppStackFrame::isJSTypesFrame ( ) const
inline

Definition at line 82 of file qv4stackframe_p.h.

Referenced by QV4::Runtime::LoadSuperProperty::call(), QV4::Runtime::StoreSuperProperty::call(), context(), and QV4::getSuperBase().

+ Here is the caller graph for this function:

◆ isMetaTypesFrame()

bool QV4::CppStackFrame::isMetaTypesFrame ( ) const
inline

Definition at line 83 of file qv4stackframe_p.h.

Referenced by QV4::Runtime::LoadSuperProperty::call(), QV4::Runtime::StoreSuperProperty::call(), context(), and QV4::getSuperBase().

+ Here is the caller graph for this function:

◆ lineNumber()

int CppStackFrame::lineNumber ( ) const

Definition at line 39 of file qv4stackframe.cpp.

References line, lineAndStatement(), and missingLineNumber().

Referenced by QV4Debugger::currentExecutionState(), QV4Debugger::maybeBreakAtInstruction(), and NativeDebugger::maybeBreakAtInstruction().

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

◆ missingLineNumber()

int CppStackFrame::missingLineNumber ( ) const

Definition at line 53 of file qv4stackframe.cpp.

References Q_ASSERT.

Referenced by lineNumber().

+ Here is the caller graph for this function:

◆ parentFrame()

CppStackFrame * QV4::CppStackFrame::parentFrame ( ) const
inline

Definition at line 92 of file qv4stackframe_p.h.

Referenced by QV4Debugger::leavingFunction(), and NativeDebugger::leavingFunction().

+ Here is the caller graph for this function:

◆ pop()

void QV4::CppStackFrame::pop ( EngineBase * engine)
inlineprotected

Definition at line 112 of file qv4stackframe_p.h.

References engine.

◆ push()

void QV4::CppStackFrame::push ( EngineBase * engine)
inlineprotected

Definition at line 105 of file qv4stackframe_p.h.

References engine, and Q_ASSERT.

◆ setParentFrame()

void QV4::CppStackFrame::setParentFrame ( CppStackFrame * parentFrame)
inline

Definition at line 93 of file qv4stackframe_p.h.

◆ source()

QString CppStackFrame::source ( ) const

Definition at line 10 of file qv4stackframe.cpp.

References QV4::Function::sourceFile(), and v4Function.

+ Here is the call graph for this function:

◆ statementNumber()

int CppStackFrame::statementNumber ( ) const

Definition at line 46 of file qv4stackframe.cpp.

References lineAndStatement().

+ Here is the call graph for this function:

◆ thisObject()

ReturnedValue QV4::CppStackFrame::thisObject ( ) const

Definition at line 62 of file qv4stackframe.cpp.

References Q_ASSERT, and QV4::QObjectWrapper::wrap().

+ Here is the call graph for this function:

Member Data Documentation

◆ instructionPointer

int QV4::CppStackFrameBase::instructionPointer

Definition at line 37 of file qv4stackframe_p.h.

Referenced by QV4::ScopedStackFrame::ScopedStackFrame().

◆ v4Function


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