


## unparse-compiler-state.pkg
# Compiled by:
# src/lib/compiler/core.sublibstipulate
package cms = compiler_mapstack_set; # compiler_mapstack_set is from src/lib/compiler/toplevel/compiler-state/compiler-mapstack-set.pkg # symbol is from src/lib/compiler/front/basics/map/symbol.pkg # types is from src/lib/compiler/front/typer-stuff/types/types.pkg # variables_and_constructors is from src/lib/compiler/front/typer-stuff/deep-syntax/variables-and-constructors.pkg # symbolmapstack is from src/lib/compiler/front/typer-stuff/symbolmapstack/symbolmapstack.pkg # symbolmapstack_entry is from src/lib/compiler/front/typer-stuff/symbolmapstack/symbolmapstack-entry.pkg package cps = compiler_state; # compiler_state is from src/lib/compiler/toplevel/interact/compiler-state.pkg package pp = prettyprint; # prettyprint is from src/lib/prettyprint/big/src/prettyprint.pkg # prettyprint_symbolmapstack is from src/lib/compiler/front/typer-stuff/symbolmapstack/prettyprint-symbolmapstack.pkgherein
package unparse_compiler_state: Unparse_Compiler_State { # Unparse_Compiler_State is from src/lib/compiler/front/typer-stuff/symbolmapstack/unparse-compiler-state.api fun unparse_compiler_mapstack_set
(pps: prettyprint::Stream)
(compiler_mapstack_set: cms::Compiler_Mapstack_Set)
=
{
include compiler_mapstack_set;
pp::string pps "Symbol table"; pp::newline pps;
pp::string pps "------------"; pp::newline pps;
pp::newline pps;
prettyprint_symbolmapstack::prettyprint_symbolmapstack
pps
(symbolmapstack_part compiler_mapstack_set);
pp::newline pps;
pp::newline pps;
pp::newline pps;
pp::string pps "Linking table"; pp::newline pps;
pp::string pps "-------------"; pp::newline pps;
pp::newline pps;
pp::string pps "(unimplemented)"; pp::newline pps;
pp::newline pps;
pp::newline pps;
pp::newline pps;
pp::string pps "Inlining table"; pp::newline pps;
pp::string pps "--------------"; pp::newline pps;
pp::newline pps;
pp::string pps "(unimplemented)"; pp::newline pps;
};
fun unparse_compiler_mapstack_set_reference
#
(pps: prettyprint::Stream)
#
(compiler_mapstack_set_reference: cps::Compiler_Mapstack_Set_Jar)
=
unparse_compiler_mapstack_set pps (compiler_mapstack_set_reference.get_mapstack_set ());
fun unparse_compiler_state
(pps: prettyprint::Stream)
=
{ pp::string pps "Combined (top_level + base) compiler tableset"; pp::newline pps;
pp::string pps "============================================="; pp::newline pps;
unparse_compiler_mapstack_set pps (cps::combined ());
pp::newline pps;
pp::newline pps;
pp::newline pps;
pp::string pps "Toplevel compiler tableset"; pp::newline pps;
pp::string pps "=========================="; pp::newline pps;
unparse_compiler_mapstack_set_reference pps (cps::get_top_level_pkg_etc_defs_jar ());
pp::newline pps;
pp::newline pps;
pp::newline pps;
pp::string pps "Base compiler tableset"; pp::newline pps;
pp::string pps "======================"; pp::newline pps;
unparse_compiler_mapstack_set_reference pps (cps::get_baselevel_pkg_etc_defs_jar ());
pp::newline pps;
pp::newline pps;
pp::newline pps;
pp::string pps "Pervasive compiler tableset"; pp::newline pps;
pp::string pps "==========================="; pp::newline pps;
unparse_compiler_mapstack_set_reference pps cps::pervasive_fun_etc_defs_jar;
};
fun unparse_compiler_state_to_file
(prettyprint_filename: String)
=
{
pp = prettyprinter::make_file_prettyprinter prettyprint_filename;
pps = pp.stream;
unparse_compiler_state pps;
pp::newline pps;
pp::newline pps;
pp::newline pps;
pp::string pps "This file generated by unparse_compiler_state_to_file from"; pp::newline pps;
pp::string pps " src/lib/compiler/front/typer-stuff/symbolmapstack/unparse-compiler-state.pkg";
pp::newline pps;
pp.flush ();
pp.close ();
};
};
end;


