term_expansion/2 hook:- multifile term_expansion/2.
term_expansion(+Term1, -Term2)
The user may override the standard transformations to be done by
expand_term/2 by defining clauses for term_expansion/2.
expand_term/2 calls term_expansion/2 first; if it succeeds, the
standard grammar rule expansion is not tried.
expand_term/2 always calls term_expansion/2 in module user.
Therefore, to be visible to expand_term/2, term_expansion/2 must
either be defined in or imported into module user.
Alternatively, you may define it in any module by using module
prefixing; refer to ref-mod-vis.
This hook predicate may now return a list of terms rather than a single term. Each of the terms in the list is then treated as a separate clause.
expand_term/2, -->/2, phrase/[2,3],
'C', prolog_load_context/2.
ref-gru