Remote Debugging Protocol: Difference between revisions

Jump to navigation Jump to search
8630d68 Let 'pop' specify an arbitrary completion value, not just a return value. Clarify 'forceCompletion'.
m (Minor: use StudlyCaps, not hyphenated-names. 32d4b7d)
(8630d68 Let 'pop' specify an arbitrary completion value, not just a return value. Clarify 'forceCompletion'.)
Line 645: Line 645:
   { "to":<i>thread</i>, "type":"resume", "forceCompletion":<i>completion</i> }
   { "to":<i>thread</i>, "type":"resume", "forceCompletion":<i>completion</i> }


where <i>completion</i> is a [[#Completion_Values|completion value]] indicating whether the frame should return a value, throw an exception, or be terminated.
where <i>completion</i> is a [[#Completion_Values|completion value]] indicating whether the frame should return a value, throw an exception, or be terminated. Execution resumes in the current frame's caller, in the manner appropriate for <i>completion</i>.


A <tt>"resume"</tt> packet may not include both a <tt>"resumeLimit"</tt> property and a <tt>"forceCompletion"</tt> property.
A <tt>"resume"</tt> packet may not include both a <tt>"resumeLimit"</tt> property and a <tt>"forceCompletion"</tt> property.
Line 800: Line 800:
The client can remove frames from the stack by sending a request of the form:
The client can remove frames from the stack by sending a request of the form:


   { "to":<i>frameActor</i>, "type":"pop", "value":<i>value</i> }
   { "to":<i>frameActor</i>, "type":"pop", "completionValue":<i>completion</i> }


where <i>frameActor</i> is the actor representing the stack frame to pop, and <i>value</i> is a grip on the value that should be returned as the value of the frame. All younger stack frames are also popped. The frame actor will reply:
where <i>frameActor</i> is the actor representing the stack frame to pop, and <i>completion</i> is a [[#Completion_Values|completion value]] describing how the frame should appear to have finished execution. All younger stack frames are also popped. The thread remains paused. The frame actor will reply:


   { "from":<i>frameActor</i>, "watches":[<i>watchActor</i> ...] }
   { "from":<i>frameActor</i>, "watches":[<i>watchActor</i> ...] }
Confirmed users
497

edits

Navigation menu