Add finish debugger command. (#2240)

With this command the engine continue running just after the function
in the current stack frame returns.

JerryScript-DCO-1.0-Signed-off-by: Imre Kiss kissi.szeged@partner.samsung.com
This commit is contained in:
Imre Kiss
2018-03-12 14:42:48 +01:00
committed by László Langó
parent 685af74a10
commit a79c217aa0
9 changed files with 117 additions and 18 deletions
+6
View File
@@ -0,0 +1,6 @@
finish
finish
finish
step
finish
continue
+20
View File
@@ -0,0 +1,20 @@
Connecting to: localhost:5001
Stopped at tests/debugger/do_finish.js:15
(jerry-debugger) finish
out: finish-test
Stopped at tests/debugger/do_finish.js:26
(jerry-debugger) finish
Stopped at tests/debugger/do_finish.js:18 (in foo() at line:17, col:1)
(jerry-debugger) finish
out: foo
out: bar
Stopped at tests/debugger/do_finish.js:42
(jerry-debugger) step
Stopped at tests/debugger/do_finish.js:29 (in dog() at line:28, col:1)
(jerry-debugger) finish
out: *bark*
out: *sit*
out: *bark*
Stopped at tests/debugger/do_finish.js:44
(jerry-debugger) continue
out: END: finish-test
+44
View File
@@ -0,0 +1,44 @@
// 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.
print("finish-test");
function foo() {
print("foo");
return bar();
}
function bar() {
return "bar";
}
print(foo());
function dog() {
bark();
sit();
bark();
}
function bark() {
print("*bark*");
}
function sit() {
print("*sit*");
}
dog();
print("END: finish-test");
+3 -3
View File
@@ -4,8 +4,8 @@ Stopped at tests/debugger/do_help.js:15
Documented commands (type help <topic>):
========================================
b bt delete e help ms quit source
backtrace c display eval list n s src
break continue dump exception memstats next scroll step
b bt delete e f list n s src
backtrace c display eval finish memstats next scroll step
break continue dump exception help ms quit source
(jerry-debugger) quit