27 #include "interpreter.h"
36 struct AttachedInterpreter
41 AttachedInterpreter *
next;
48 rep =
new DebuggerImp();
55 detach(rep->interps->interp);
62 if (interp->imp()->debugger() !=
this)
63 interp->imp()->setDebugger(
this);
67 rep->interps =
new AttachedInterpreter(interp);
69 AttachedInterpreter *ai = rep->interps;
71 if (ai->interp == interp)
75 ai->next =
new AttachedInterpreter(interp);
81 if (interp->imp()->debugger() ==
this)
82 interp->imp()->setDebugger(0L);
87 if (rep->interps->interp == interp) {
88 AttachedInterpreter *old = rep->interps;
89 rep->interps = rep->interps->next;
93 AttachedInterpreter *ai = rep->interps;
96 while (ai->next && ai->next->interp != interp)
99 AttachedInterpreter *old = ai->next;
100 ai->next = ai->next->next;
105 bool Debugger::sourceParsed(
ExecState * ,
int ,
111 bool Debugger::sourceUnused(
ExecState * ,
int )
127 bool Debugger::enterContext(
ExecState * )
Value objects are act as wrappers ("smart pointers") around ValueImp objects and their descendents...
Interpreter objects can be used to evaluate ECMAScript code.
Completion objects are used to convey the return status and value from functions. ...
Represents the current state of script execution.