## global-controls.api
#
# This is the old compiler-switches system, based on using
# bazillions of icky thread-hostile global variables.
#
# (I want to develop a replacement based on a red-black
# tree that lives in per-compile-stuff. -- 2011-10-02 CrT)
# Compiled by:
#
src/lib/compiler/core.sublibapi Global_Controls {
#
package mc: Match_Compiler_Controls; # Match_Compiler_Controls is from
src/lib/compiler/toplevel/main/control-apis.api package compiler: Compiler_Controls; # Compiler_Controls is from
src/lib/compiler/toplevel/main/control-apis.api package lowhalf: Lowhalf_Control; # Lowhalf_Control is from
src/lib/compiler/back/low/control/lowhalf-control.pkg package print: Control_Print; # Control_Print is from
src/lib/compiler/front/basics/print/control-print.pkg package highcode: Anormcode_Sequencer_Controls; # Anormcode_Sequencer_Controls is from
src/lib/compiler/toplevel/main/control-apis.api debugging: Ref( Bool );
unparse_raw_syntax_tree: Ref( Bool );
unparse_deep_syntax_tree: Ref( Bool );
execute_compiled_code: Ref( Bool );
prettyprint_raw_syntax_tree: Ref( Bool );
include api Basic_Control; # Basic_Control is from
src/lib/compiler/front/basics/main/basic-control.pkg #
# Provides:
# print_warnings: Ref( Bool );
include api Mythryl_Parser; # Mythryl_Parser is from
src/lib/compiler/front/parser/main/mythryl-parser.pkg #
# Provides:
# primary_prompt: Ref( String );
# secondary_prompt: Ref( String );
# lazy_is_a_keyword: Ref( Bool );
# quotation: Ref( Bool );
remember_highcode_codetemp_names: Ref( Bool );
value_restriction_local_warn: Ref( Bool ); # Default FALSE # Warning message on failure of value restriction in local decls
value_restriction_top_warn: Ref( Bool ); # Default TRUE # Warning message on failure of value restriction at top level
mult_def_warn: Ref( Bool ); # Default FALSE # Warning messages for multiple defs in sigs
share_def_error: Ref( Bool ); # Default TRUE # Error (TRUE) or warning (FALSE) for defs in sharing constraints
macro_expand_sigs: Ref( Bool ); # Default TRUE # Check apis at declaration by instantiating them
internals: Ref( Bool ); # Default FALSE # Print internal representations of types at top level
interp: Ref( Bool ); # Turn on interpreter -- DEFUNCT.
# my debugLook: Ref( Bool )
# my debugCollect: Ref( Bool )
# my debugBind: Ref( Bool )
save_lambda: Ref( Bool );
preserve_lvar_names: Ref( Bool );
mark_deep_syntax_tree: Ref( Bool );
track_exn: Ref( Bool );
poly_eq_warn: Ref( Bool );
indexing: Ref( Bool );
inst_sigs: Ref( Bool );
saveit: Ref( Bool );
save_deep_syntax_tree: Ref( Bool );
save_convert: Ref( Bool );
save_nextcode: Ref( Bool ); # Never referenced.
save_closure: Ref( Bool );
tdp_instrument_enabled: Ref( Bool ); # tdp_instrument is from
src/lib/compiler/debugging-and-profiling/profiling/tdp-instrument.pkg package inline: api {
Global_Setting
= OFF # Completely disabled
| DEFAULT Null_Or(Int)
# Default aggressiveness; NULL: off
;
Localsetting = Null_Or( Null_Or(Int) );
use_default: Localsetting;
suggest: Null_Or( Int ) -> Localsetting;
set: Global_Setting -> Void;
get: Void -> Null_Or( Int );
get' : Localsetting -> Null_Or( Int );
parse: String -> Null_Or( Global_Setting );
show: Global_Setting -> String;
};
};
## COPYRIGHT (c) 1995 AT&T Bell Laboratories
## Subsequent changes by Jeff Prothero Copyright (c) 2010-2015,
## released per terms of SMLNJ-COPYRIGHT.