This module implements to data-collection part of the cross-referencer. This code is used in two places:
register_called
.true
(default false
), emit warning messages.all
, non_iso
or non_built_in
.store
, comments are stored into
the database as if the file was compiled. If collect
,
comments are entered to the xref database and made available
through xref_mode/2 and xref_comment/4. If ignore
,
comments are simply ignored. Default is to collect
comments.true
).include(File)
) directive.
dynamic(Location)
thread_local(Location)
multifile(Location)
public(Location)
local(Location)
foreign(Location)
constraint(Location)
imported(From)
We limit the number of explored paths to 100 to avoid getting trapped in this analysis.
true
if there was a
partial evalation inside Goal that has bound variables.T = hello(X), findall(T, T, List),
The information collected by this predicate is cached. The cached data is considered valid as long as the modification time of the file does not change.
These predicates fail if File is not a module-file.
true
, ignore (syntax) errors. If not specified the default
is inherited from xref_source/2.include(File)
referenced file. Note that we cannot
use prolog_open_source/2 because we should not safe/restore
the lexical context.true
, re-export the
imported predicates.
call(Closure, PI,
Src)
. Handles both lists of specifications and (PI,...)
specifications.name()
goals.true
(default false
), emit warning messages.all
, non_iso
or non_built_in
.store
, comments are stored into
the database as if the file was compiled. If collect
,
comments are entered to the xref database and made available
through xref_mode/2 and xref_comment/4. If ignore
,
comments are simply ignored. Default is to collect
comments.true
).These predicates fail if File is not a module-file.
These predicates fail if File is not a module-file.
The following predicates are exported, but not or incorrectly documented.