Did you know ... Search Documentation:
Pack hook_hybrid -- prolog/virtualize_source.pl
PublicShow source
 virtualize_code(X, :TermT, :TermARG2) is semidet
System Goal Expansion Sd.f$
 safe_virtualize(Term, +How, -Wrapped) is semidet
Safely Paying Attention To Corner Cases Wrap.
 same_terms(?A, :TermB) is semidet
Same Terms.

Re-exported predicates

The following predicates are re-exported from other modules

 must(:Goal) is nondet
Goal must succeed at least once once

Wrap must/1 over parts of your code you do not trust If your code fails.. it will rewind to your entry block (at the scope of this declaration) and invoke rtrace/1 . If there are 50 steps to your code, it will save you from pushing creep 50 times. Instead it turns off the leash to allow you to trace with your eyeballs instead of your fingers.

% must( :Goal) is semidet.

Must Be Successfull.

 debug(+Topic, +Format, :Args) is det
Format a message if debug topic is enabled. Similar to format/3 to user_error, but only prints if Topic is activated through debug/1. Args is a meta-argument to deal with goal for the @-command. Output is first handed to the hook prolog:debug_print_hook/3. If this fails, Format+Args is translated to text using the message-translation (see print_message/2) for the term debug(Format, Args) and then printed to every matching destination (controlled by debug/1) using print_message_lines/3.

The message is preceded by '% ' and terminated with a newline.

See also
- format/3.
 transitive(:PRED2X, +A, -B) is nondet
Transitive.

Undocumented predicates

The following predicates are exported, but not or incorrectly documented.

 cnas(Arg1, Arg2, Arg3)
 nb_current_or_nil(Arg1, Arg2)
 decl_wrapped(Arg1, Arg2, Arg3, Arg4)
 sd_goal_expansion(Arg1, Arg2, Arg3)
 skipped_dirs(Arg1)
 swc
 virtualize_code_each(Arg1, Arg2, Arg3, Arg4)
 virtualize_code_fa(Arg1, Arg2, Arg3, Arg4, Arg5)
 virtualize_ereq(Arg1, Arg2)
 virtualize_source(Arg1, Arg2, Arg3)
 virtualize_source_file
 virtualize_source_file(Arg1)
 could_safe_virtualize
 vwc
 must_once(Arg1)
 must_det(Arg1)
 sanity(Arg1)
 nop(Arg1)
 scce_orig(Arg1, Arg2, Arg3)
 must_or_rtrace(Arg1)
 is_loop_checked(Arg1)
 lco_goal_expansion(Arg1, Arg2)
 cyclic_break(Arg1)
 loop_check_early(Arg1, Arg2)
 loop_check_term(Arg1, Arg2, Arg3)
 loop_check_term(Arg1, Arg2, Arg3)
 no_loop_check_term(Arg1, Arg2, Arg3)
 loop_check(Arg1)
 loop_check(Arg1, Arg2)
 no_loop_check(Arg1)
 no_loop_check(Arg1, Arg2)
 current_loop_checker(Arg1)
 push_loop_checker
 pop_loop_checker
 transitive_except(Arg1, Arg2, Arg3, Arg4)
 transitive_lc(Arg1, Arg2, Arg3)
 lc_tcall(Arg1)
 ain(Arg1)
 ain0(Arg1)
 aina(Arg1)
 ainz(Arg1)
 if_flag_true(Arg1, Arg2)
 current_module_from(Arg1, Arg2)
 attributes_equal(Arg1, Arg2, Arg3)
 ereq(Arg1)
 dbreq(Arg1)
 is_visible_module(Arg1)
 hb_to_clause(Arg1, Arg2, Arg3)
 paina(Arg1)
 pain(Arg1)
 painz(Arg1)
 modulize_head(Arg1, Arg2)
 remove_term_attr_type(Arg1, Arg2)
 ainz_clause(Arg1)
 ainz_clause(Arg1, Arg2)
 simple_var(Arg1)
 find_module(Arg1, Arg2)
 module_of(Arg1, Arg2, Arg3)
 callable_module(Arg1, Arg2)
 expand_to_hb(Arg1, Arg2, Arg3)
 assert_if_new(Arg1)
 asserta_if_new(Arg1)
 asserta_new(Arg1)
 assertz_if_new(Arg1)
 assertz_new(Arg1)
 assert_setting(Arg1)
 assert_setting_if_missing(Arg1)
 call_provider(Arg1)
 call_provider(Arg1, Arg2)
 clause_true(Arg1)
 modulize_head_fb(Arg1, Arg2, Arg3, Arg4)
 clause_asserted(Arg1)
 clause_asserted(Arg1, Arg2)
 clause_asserted(Arg1, Arg2, Arg3)
 clause_asserted_i(Arg1)
 clause_asserted_i(Arg1, Arg2)
 clause_asserted_i(Arg1, Arg2, Arg3)
 clause_i(Arg1)
 clause_i(Arg1, Arg2)
 clause_i(Arg1, Arg2, Arg3)
 assert_i(Arg1)
 asserta_i(Arg1)
 assertz_i(Arg1)
 retract_i(Arg1)
 retractall_i(Arg1)
 clause_safe(Arg1, Arg2)
 erase_safe(Arg1, Arg2)
 eraseall(Arg1, Arg2)
 find_and_call(Arg1)
 somehow_callable(Arg1)
 find_and_call(Arg1, Arg2, Arg3)
 std_provider(Arg1, Arg2, Arg3)
 mpred_mop(Arg1, Arg2, Arg3)
 mpred_op_prolog(Arg1, Arg2)
 mpred_split_op_data(Arg1, Arg2, Arg3)
 retract_eq(Arg1)
 safe_univ(Arg1, Arg2)
 safe_univ0(Arg1, Arg2)
 my_module_sensitive_code(Arg1)
 attr_bind(Arg1, Arg2)
 attr_bind(Arg1)
 split_attrs(Arg1, Arg2, Arg3)
 clause_attv(Arg1, Arg2, Arg3)
 variant_i(Arg1, Arg2)
 av_comp(Arg1, Arg2)
 unify_bodies(Arg1, Arg2)
 clausify_attributes(Arg1, Arg2)
 clausify_attributes4(Arg1, Arg2, Arg3, Arg4)
 lock_vars(Arg1)
 unlock_vars(Arg1)
 with_vars_locked(Arg1)
 with_vars_locked(Arg1, Arg2)
 with_some_vars_locked(Arg1, Arg2)
 with_vars_locked(Arg1, Arg2, Arg3)
 with_vars_locked_old(Arg1, Arg2)
 with_vars_locked_old(Arg1, Arg2, Arg3)
 with_vars_locked_trusted(Arg1, Arg2, Arg3)
 with_quiet_vars_lock(Arg1)
 with_vars_lock_else(Arg1, Arg2)
 skip_varlocks