Loading...
Searching...
No Matches
QoreStackLocation Class Referenceabstract

Stack location element abstract class. More...

`#include <ExceptionSink.h>`

Inheritance diagram for QoreStackLocation:
[legend]
Collaboration diagram for QoreStackLocation:
[legend]

## Public Member Functions

DLLLOCAL | QoreStackLocation ()
| constructor
DLLLOCAL | QoreStackLocation (const QoreStackLocation &)=default
| copy ctor
DLLLOCAL | QoreStackLocation (QoreStackLocation &&)=default
| move ctor
virtual DLLLOCAL | ~QoreStackLocation ()=default
| virtual destructor
virtual DLLLOCAL const std::string & | getCallName () const =0
| returns the name of the function or method call
virtual DLLLOCAL qore_call_t | getCallType () const =0
| returns the call type
virtual DLLLOCAL const QoreProgramLocation & | getLocation () const =0
| returns the source location of the element
virtual DLLLOCAL const QoreStackLocation * | getNext () const
| returns the next location in the stack or nullptr if there is none
virtual DLLLOCAL QoreProgram * | getProgram () const =0
| returns the QoreProgram container
virtual DLLLOCAL const AbstractStatement * | getStatement () const =0
| returns the statement for the call for internal Qore code
DLLLOCAL QoreStackLocation & | operator= (const QoreStackLocation &)=default
| default assignment operator
DLLLOCAL QoreStackLocation & | operator= (QoreStackLocation &&)=default
| default move assignment operator
DLLLOCAL void | setNext (const QoreStackLocation *next)
| called when pushed on the stack to set the next location More...

## Detailed Description

Stack location element abstract class.

Since
  Qore 0.9

## Member Function Documentation

## setNext()

DLLLOCAL void QoreStackLocation::setNext | ( | const QoreStackLocation * | next | ) |

inline

called when pushed on the stack to set the next location

Parameters

  next | a pointer to the existing next stack element that must exist and must stay on the stack while this object exists or nullptr in case this is the first element on the stack

Note
  it is an error and will cause a segfault if the next object is destroyed before this object is destroyed. Under no circumstances, and under the very real threat of at least 700 lashings with a wet noodle, should the next object be deleted before this object.

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

- include/qore/ExceptionSink.h