mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-15 17:33:38 +00:00
browser/declarative_oracle.m:
Optimize table lookups when checking whether a procedure is trusted.
Instead of doing three separate lookups to test
- whether the module in which the procedure is in is trusted,
- whether the Mercury standard library is trusted, and this module
is in the Mercury standard library, and
- whether the predicate or function the procedure is in is trusted,
look up the module the procedure is in just once, then
- replace both of the first two lookups above with testing a single flag
each, and then
- look up the procedure in a map of trusted predicate or function names.
The last test should be faster than its old equivalent, because the map
it searches will be local to the module, whereas it used to be global.
Print the list of trusted entities (which this module calls trusted
"objects") in the same order regardless of whether we are printing
for users or as commands. The order will be the order in which they were
trusted.
Undo an unnecessary capitalization in the list of trusted objects.
browser/declarative_debugger.m:
Improve the style of some related code.
tests/debugger/save.exp:
tests/declarative_debugger/skip.exp:
tests/declarative_debugger/trust.exp:
Expect the changes described above in the list of trusted objects.
112 lines
2.5 KiB
Plaintext
112 lines
2.5 KiB
Plaintext
1: 1 1 CALL pred save.main/2-0 (cc_multi) save.m:19
|
|
mdb> echo on
|
|
Command echo enabled.
|
|
mdb> register --quiet
|
|
mdb> b data
|
|
0: + stop interface pred save.data/1-0 (det)
|
|
mdb> b nodiag
|
|
1: + stop interface pred save.nodiag/3-0 (semidet)
|
|
mdb> condition B = 5
|
|
1: + stop interface pred save.nodiag/3-0 (semidet)
|
|
B = 5
|
|
mdb> context nextline
|
|
Contexts will be printed on the next line.
|
|
mdb> scroll 42
|
|
Scroll window size set to 42.
|
|
mdb> alias x save
|
|
x => save
|
|
mdb> trust save
|
|
Trusting module save
|
|
mdb> save save_file
|
|
Debugger state saved to save_file.
|
|
mdb> continue -n -S
|
|
[1, 3, 5, 2, 4]
|
|
alias ! shell
|
|
alias ? help
|
|
alias EMPTY step
|
|
alias NUMBER step
|
|
alias P print *
|
|
alias b break
|
|
alias c continue
|
|
alias d stack
|
|
alias e exception
|
|
alias excp exception
|
|
alias f finish
|
|
alias g goto
|
|
alias grep source ZZZ/mdb_grep
|
|
alias h help
|
|
alias open source ZZZ/mdb_open
|
|
alias p print
|
|
alias r retry
|
|
alias s step
|
|
alias track source ZZZ/mdb_track
|
|
alias v vars
|
|
alias x save
|
|
printlevel some
|
|
echo on
|
|
scroll on
|
|
scroll 42
|
|
stack_default_limit 0
|
|
context nextline
|
|
goal_paths on
|
|
break pred*save.data/1-0
|
|
break pred*save.nodiag/3-0
|
|
condition B = 5
|
|
scope interface
|
|
format -P flat
|
|
format_param -P -f depth 3
|
|
format_param -P -f size 10
|
|
format_param -P -f width 80
|
|
format_param -P -f lines 25
|
|
format_param -P -r depth 3
|
|
format_param -P -r size 10
|
|
format_param -P -r width 80
|
|
format_param -P -r lines 25
|
|
format_param -P -v depth 3
|
|
format_param -P -v size 10
|
|
format_param -P -v width 80
|
|
format_param -P -v lines 25
|
|
format_param -P -p depth 3
|
|
format_param -P -p size 10
|
|
format_param -P -p width 80
|
|
format_param -P -p lines 25
|
|
format -B flat
|
|
format_param -B -f depth 10
|
|
format_param -B -f size 30
|
|
format_param -B -f width 80
|
|
format_param -B -f lines 25
|
|
format_param -B -r depth 10
|
|
format_param -B -r size 30
|
|
format_param -B -r width 80
|
|
format_param -B -r lines 25
|
|
format_param -B -v depth 10
|
|
format_param -B -v size 30
|
|
format_param -B -v width 80
|
|
format_param -B -v lines 25
|
|
format_param -B -p depth 10
|
|
format_param -B -p size 30
|
|
format_param -B -p width 80
|
|
format_param -B -p lines 25
|
|
format -A flat
|
|
format_param -A -f depth 3
|
|
format_param -A -f size 10
|
|
format_param -A -f width 80
|
|
format_param -A -f lines 2
|
|
format_param -A -r depth 3
|
|
format_param -A -r size 10
|
|
format_param -A -r width 80
|
|
format_param -A -r lines 2
|
|
format_param -A -v depth 3
|
|
format_param -A -v size 10
|
|
format_param -A -v width 80
|
|
format_param -A -v lines 5
|
|
format_param -A -p depth 3
|
|
format_param -A -p size 10
|
|
format_param -A -p width 80
|
|
format_param -A -p lines 2
|
|
max_io_actions 20
|
|
web_browser_cmd ZZZ
|
|
trust std lib
|
|
trust save
|
|
list_context_lines 2
|