## Convert RAW_SYNTAX_TREEs to makelib's trimmed version thereof ("module_dependencies_summarys").
# Compiled by:
#
src/app/makelib/makelib.sublib# The ideas here are based on those found in the original SC and
# also in an older version of makelib (before 1999). However, nearly
# all aspects have been changed radically, and the code has been
# re-written from scratch.
#
# The module_dependencies_summarys generated by this module are typically smaller
# than the "decl"s in SC or old versions of makelib. This should
# make dependency analysis somewhat faster (but is probably not
# very noticeable).
# This api is implemented in:
#
src/app/makelib/compilable/raw-syntax-to-module-dependencies-summary.pkgstipulate
package raw = raw_syntax; # raw_syntax is from
src/lib/compiler/front/parser/raw-syntax/raw-syntax.pkg package err = error_message; # error_message is from
src/lib/compiler/front/basics/errormsg/error-message.pkg package mds = module_dependencies_summary; # module_dependencies_summary is from
src/app/makelib/compilable/module-dependencies-summary.pkgherein
api Raw_Syntax_To_Module_Dependencies_Summary {
#
convert: { tree: raw::Declaration,
#
err: err::Severity
-> raw::Source_Code_Region
-> String
-> Void
}
->
{ module_dependencies_summary: mds::Declaration,
complain: Void -> Void
};
};
end;
## author: Matthias Blume (blume@cs.princeton.edu)
## The copyright notices of the earlier versions are:
## Copyright (c) 1995 by AT&T Bell Laboratories
## Copyright (c) 1993 by Carnegie Mellon University,
## School of Computer Science
## contact: Gene Rollins (rollins+@cs.cmu.edu)
## Subsequent changes by Jeff Prothero Copyright (c) 2010-2015,
## released per terms of SMLNJ-COPYRIGHT.