Add restart command to the debugger (#2401)

With this feature the use can restart the actual debug session
(similar to the multiple source context reset) within a client.

JerryScript-DCO-1.0-Signed-off-by: Imre Kiss kissi.szeged@partner.samsung.com
This commit is contained in:
Imre Kiss
2018-06-22 05:18:18 +02:00
committed by yichoi
parent 35ac0e0445
commit e3265883fd
9 changed files with 205 additions and 94 deletions
+4 -4
View File
@@ -4,9 +4,9 @@ Stopped at tests/debugger/do_help.js:15
Documented commands (type help <topic>):
========================================
abort bt display exception list next source
b c dump f memstats quit src
backtrace continue e finish ms s step
break delete eval help n scroll throw
abort bt display exception list next s step
b c dump f memstats quit scroll throw
backtrace continue e finish ms res source
break delete eval help n restart src
(jerry-debugger) quit
+4
View File
@@ -0,0 +1,4 @@
n
n
n
restart
+18
View File
@@ -0,0 +1,18 @@
Connecting to: localhost:5001
Stopped at tests/debugger/do_restart.js:23
(jerry-debugger) n
Stopped at tests/debugger/do_restart.js:24
(jerry-debugger) n
out: foo
Stopped at tests/debugger/do_restart.js:25
(jerry-debugger) n
out: bar
Stopped at tests/debugger/do_restart.js:24
(jerry-debugger) restart
Connecting to: localhost:5001
Stopped at tests/debugger/do_restart.js:23
(jerry-debugger) continue
out: foo
out: bar
out: foo
out: bar
+26
View File
@@ -0,0 +1,26 @@
// Copyright JS Foundation and other contributors, http://js.foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
function foo() {
print("foo");
}
function bar() {
print("bar");
}
for (var i = 0; i < 2; i++) {
foo();
bar();
}