next up previous contents index
Next: Scenario ``collect'' Up: Morphine - Reference Manual Previous: Scenario ``display''

Subsections

     
Scenario ``step_by_step''

Scenario which provides standard step by step tracing facilities. The tracing commands of this scenario are different from those of the ``kernel'' scenario. User can use a more simple execution model by setting the ``traced_ports'' parameter which filters out some of the traced events.

Commands

next {n}    
Command which moves forward to the next trace event according to the ``traced_ports'' parameter. This is the same command as step/0 (``next'' is the name used in the Prolog version of Opium, ``step'' is the name used in the internal Mercury debugger).
type of command : trace

step    
See next/0.
type of command : trace

det_next    
Command which does the same thing as step/0, but it is not backtrackable.
type of command : trace

det_step    
See det_next/0.
type of command : trace

next(N) {n}    
Command which prints the N next trace events according to the ``traced_ports'' parameter.
N : integer
type of command : opium

step(N)    
See next/1.
N : integer
type of command : opium

finish {f}    
Command which makes the execution continuing until it reaches a final port (exit or fail) of the goal to which the current event refers. If the current port is already final, it acts like a step/0. It is the same command as skip/0 (``skip'' is the name used in the Prolog version of Opium, ``finish'' is the name used in the internal Mercury debugger).
type of command : trace

skip {sk}    
See finish/0.
type of command : trace

Primitives

next_np {n_np}    
Primitive which does the same as command next except printing a trace line.

step_np    
Primitive which does the same as command step except printing a trace line.

det_next_np    
Primitive which does the same as command det_next except printing a trace line.

det_step_np    
Primitive which does the same as command det_step except printing a trace line.

finish_np {f_np}    
Primitive which does the same as command finish except printing a trace line.

skip_np {sk_np}    
Primitive which does the same as command skip except printing a trace line.

Parameters

traced_ports(PortList)    
Parameter which tells which events (w.r.t. ports) are to be traced by commands ``next'' and ``step''.
PortList : is_list_of_ports
default value : traced_ports([call, exit, fail, redo, then, else, switch, disj, first, later])
type of parameter : single


next up previous contents index
Next: Scenario ``collect'' Up: Morphine - Reference Manual Previous: Scenario ``display''
jahier@irisa.fr