Next: mpg-ref-current_op, Previous: mpg-ref-current_key, Up: mpg-bpr [Contents][Index]
current_module/[1,2]
current_module(?ModuleName)
Queries whether a module is “current” or backtracks through all of the current modules.
current_module(?ModuleName, ?AbsFile)
Associates modules with their module files.
atom
atom
Absolute filename in which the module is defined.
A loaded module becomes “current” as soon as some predicate is defined in it, and a module can never lose the property of being current.
It is possible for a current module to have no associated
file, in which case current_module/1
will succeed on it but
current_module/2
will fail. This arises for the special module
user
and for dynamically-created modules (see ref-mod).
If its arguments are not correct, or if Module has no associated file, then
current_module/2
simply fails.
current_module/1
backtracks through
all of the current modules. The following command will print out all
current modules:
| ?- current_module(Module), writeq(Module), nl, fail.
current_module/2
backtracks through all of the current modules
and their associated files.
type_error
| ?- findall(M,current_module(M),Ms).
Ms = [chr,user,prolog,'SU_messages',clpfd] ? RET
yes
| ?- findall(M-F,current_module(M,F),MFs).
MFs = ['SU_messages'-'/src/sicstus/matsc/sicstus4/Utils/x86-linux-glibc2.3/bin/sp-4.1.0/sicstus-4.1.0/library/SU_messages.pl'] ?
yes