protocol
debuggerp
¶
Debugger protocol.
static
(no dependencies on other entities)
Public interface¶
reset/0
¶
Resets all debugging settings, including spy points and leashed ports, and turns off debugging.
static
reset
- one
debug/0
¶
Starts debugging for all defined spy points.
static
debug
- one
nodebug/0
¶
Stops debugging for all defined spy points.
static
nodebug
- one
debugging/0
¶
Reports current debugging settings, including spy points.
static
debugging
- one
debugging/1
¶
Enumerates, by backtracking, all entities compiled in debug mode.
static
debugging(Entity)
debugging(?entity_identifier)
- zero_or_more
trace/0
¶
Starts tracing all calls compiled in debug mode.
static
trace
- one
notrace/0
¶
Stops tracing of calls compiled in debug mode.
static
notrace
- one
spy/1
¶
Sets a line number spy point or a predicate spy point or a list of spy points.
static
spy(SpyPoint)
spy(@spy_point)
- one
spy(@list(spy_point))
- one
spying/1
¶
Enumerates, by backtracking, all defined line number and predicate spy points.
static
spying(SpyPoint)
spying(?spy_point)
- zero_or_more
spy/4
¶
Sets a context spy point.
static
spy(Sender,This,Self,Goal)
spy(@term,@term,@term,@term)
- one
spying/4
¶
Enumerates, by backtracking, all defined context spy points.
static
spying(Sender,This,Self,Goal)
spying(?term,?term,?term,?term)
- zero_or_more
nospy/1
¶
Removes all matching line number spy points and predicate spy points.
static
nospy(SpyPoint)
nospy(@var)
- one
nospy(@spy_point)
- one
nospy(@list(spy_point))
- one
nospy/4
¶
Removes all matching context spy points.
static
nospy(Sender,This,Self,Goal)
nospy(@term,@term,@term,@term)
- one
nospyall/0
¶
Removes all line number, predicate, and context spy points.
static
nospyall
- one
leash/1
¶
Sets the debugger leash ports using an abbreviation (none, loose, half, tight, or full) or a list of ports (valid ports are fact, rule, call, exit, redo, fail, and exception).
static
leash(Ports)
leash(+atom)
- one
leash(+list(atom))
- one
leashing/1
¶
Enumerates, by backtracking, all leashed ports (valid ports are fact, rule, call, exit, redo, fail, and exception).
static
leashing(Port)
leashing(?atom)
- zero_or_more
Protected interface¶
(none)
Private predicates¶
(none)
Operators¶
(none)
Remarks¶
- Debugger help: Type the character “h” or the character “?” at a leashed port.
- Predicate spy point: Specified as a ground term Functor/Arity.
- Line number spy point: Specified as an Entity-Line term with both Entity and Line bound. Line must be the first source file line of an entity clause.
- Leash shorthands: none - [], loose - [fact, rule, call], half - [fact, rule, call, redo], tight - [fact, rule, call, redo, fail, exception], and full - [fact, rule, call, exit, redo, fail, exception].
See also