Extend the "frame" command to set the current frame. (#1110)

* Extend the "frame" command to set the current frame.

Command

  frame 3

sets up so that subsequent "print", "set", "whatis" command
will operate on frame 3.

  frame 3 print foo

continues to work.

Added "up", "down". They move the current frame up or down.

Implementation note:

This changes removes "scopePrefix" mode from the terminal/command.go and instead
have the command examine the goroutine/frame value to see if it is invoked in a
scoped context.

* Rename Command.Frame -> Command.frame.
This commit is contained in:
Yasushi Saito
2018-03-22 10:02:15 -07:00
committed by Derek Parker
parent ec8dc3a10d
commit 82aff3f18a
5 changed files with 150 additions and 63 deletions

View File

@ -32,7 +32,7 @@ func TestGoroutineCreationLocation(t *testing.T) {
if filepath.Base(createdLocation.File) != "goroutinestackprog.go" {
t.Fatalf("goroutine creation file incorrect: %s", filepath.Base(createdLocation.File))
}
if createdLocation.Line != 20 {
if createdLocation.Line != 23 {
t.Fatalf("goroutine creation line incorrect: %v", createdLocation.Line)
}
}