This module loads the preprocessing unit of a file to be preprocessed and serves all the information related to it to the rest of CiaoPP, including (but not limited to) the source code.
Loads the preprocessing unit of Fs defining Ms.
Loads the preprocessing unit of F defining M.
P are the clauses (no directives) of the current module and D their dictionaries.
There is an entry assertion for Goal with call pattern Call, uniquely identifiable by Name.
There is an exit assertion for Goal with call pattern Call and success pattern Succ.
Goal is an atom for a predicate such that all its clauses might not be available in the program unit (e.g., if it is multifile).
Add assertions list AssrtList to internal DB.
Add assertion Assrt to internal DB.
The directive C is added to the program data base. This directive will be considered as read from the program, i.e., analizers, transformations and output will use/show it.
There is a directive of the form :- Type Body (of arity one).
Removes all information about predicate order.
Add a predicate key (once)
Current predicate keys
Checks wether there is a predicate F/A in the program and returns NewF so that there is no predicate NewF/A in the program.
Push history item X.
Pop history item X.
Inject the package A in the current program database (including the output package list). The necesary information from these packages is loaded for correct treatment and unexpansion.
Add the package A to the output packages list
X is a package that will be included in the output (module directive).
Add comment to the comment db
Retrieves comments from the comment db
Cleans up the comment db
Add the assertions list A to the commented assertions DB.
Add assertion A to the commented assertions DB.
Clean up all facts that p_unit asserts.
Returns in Call, upon backtracking call patterns from calls assertions related to Sg, in module M. Also takes care of disjunctions.