
trace.pl -- Allow tracing pengine execution under SWISH.
trace_pengines[private]?- retractall(swish_trace:trace_pengines). ?- tspy(<some predicate>).
add_context(+Port, +Frame, +Prompt0, -Prompt) is det[private]
$swish wrapper(:Goal, ?ContextVars)ContextVars is a list of variables that have a reserved name. The hooks pre_context/3 and post_context/3 can be used to give these variables a value extracted from the environment. This allows passing more information than just the query answers.
The binding _residuals = '$residuals'(Residuals) is added to
the residual goals by event_to_json/3 from
pengines_io.pl.
pre_context(Name, Goal, Var) is semidet[multifile]
post_context(Name, Goal, Var) is semidet[multifile]
call_post_context(+Dict)[private]
call_post_context(+Goal, +Bindings, +Delays, +Var)[private]Name=Var in Bindings that gives us the name of what is
expected in Var.
residuals(+PengineModule, -Goals:list(callable)) is det[private]
source_location(+Frame, +Port, -Location) is semidet[private]
parent_frame(+FrameIn, +PCOrPortIn, -Steps, -FrameOut, -PCOrPortOut) is nondet[private]
frame_file(+Frame, -File) is semidet[private]
pengine_file(+File) is semidet[private]
clause_position(+PC) is semidet[private]
subgoal_position(+Clause, +PortOrPC, -File, -CharA, -CharZ) is semidet[private]
source_position(Frame, PCOrPort, -Position)[private]
pengines:prepare_goal(+GoalIn, -GoalOut, +Options) is semidet[multifile]breakpoints(List) option to set breakpoints prior to
execution of the query. If breakpoints are present and enabled,
the goal is executed in debug mode. List is a list, holding a
dict for each source that has breakpoints. The dict contains
these keys:
file is the source file. For the current Pengine source
this is pengine://<pengine>/src.breakpoints is a list of lines (integers) where to put
break points.
swish:tty_size(-Rows, -Cols)[private]
swish:tty_size(-Rows, -Cols) is det[private]
set_file_breakpoints(+Pengine, +File, +Text, +Dict)[private]
set_pengine_breakpoint(+Pengine, +File, +Text, +Dict)[private]
update_breakpoints(+Breakpoints)[private]
current_pengine_source_breakpoints(+PengineFile, -Pairs) is det[private]
prolog_clause:open_source(+File, -Stream) is semidet[multifile]
install_exception_hook[private]