@@ -25,7 +25,7 @@ function show_breakpoint(io::IO, bp::BreakpointRef, state::DebuggerState)
25
25
print (io, String (take! (outbuf. io)))
26
26
end
27
27
28
- function execute_command (state:: DebuggerState , v:: Union{Val{:c},Val{:nc},Val{:n},Val{:se},Val{:s},Val{:si},Val{:sg},Val{:so},Val{:u}} , cmd:: AbstractString )
28
+ function execute_command (state:: DebuggerState , v:: Union{Val{:c},Val{:nc},Val{:n},Val{:se},Val{:s},Val{:si},Val{:sg},Val{:so},Val{:u},Val{:sl} } , cmd:: AbstractString )
29
29
# These commands take no arguments
30
30
kwargs = Dict ()
31
31
if v != Val (:u )
@@ -36,7 +36,7 @@ function execute_command(state::DebuggerState, v::Union{Val{:c},Val{:nc},Val{:n}
36
36
cmd = args[1 ]
37
37
if length (args) == 2
38
38
line = tryparse (Int, args[2 ])
39
- line == nothing && return invalid_command (state, cmd)
39
+ line === nothing && return invalid_command (state, cmd)
40
40
kwargs = Dict (:line => line)
41
41
end
42
42
end
@@ -251,6 +251,7 @@ function execute_command(state::DebuggerState, ::Union{Val{:help}, Val{:?}}, cmd
251
251
- `u [i::Int]`: step until line `i` or the next line past the current line\\
252
252
- `s`: step into the next call\\
253
253
- `so`: step out of the current call\\
254
+ - `sl`: step into the last call on the current line (e.g. steps into `f` if the line is `f(g(h(x)))`).
254
255
- `c`: continue execution until a breakpoint is hit\\
255
256
- `f [i::Int]`: go to the `i`-th function in the call stack (stepping is only possible in the function at the top of the call stack)\\
256
257
- `up/down [i::Int]` go up or down one or `i` functions in the call stack\\
0 commit comments