| author | wenzelm | 
| Wed, 11 Dec 2024 12:03:01 +0100 | |
| changeset 81580 | 2e7073976c25 | 
| parent 69575 | f77cc54f6d47 | 
| permissions | -rw-r--r-- | 
| 56303 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 1 | (* Title: Pure/ML/ml_options.ML | 
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 2 | Author: Makarius | 
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 3 | |
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 4 | ML configuration options. | 
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 5 | *) | 
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 6 | |
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 7 | signature ML_OPTIONS = | 
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 8 | sig | 
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 9 | val source_trace: bool Config.T | 
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 10 | val exception_trace: bool Config.T | 
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 11 | val exception_trace_enabled: Context.generic option -> bool | 
| 62498 | 12 | val exception_debugger: bool Config.T | 
| 13 | val exception_debugger_enabled: Context.generic option -> bool | |
| 60730 | 14 | val debugger: bool Config.T | 
| 15 | val debugger_enabled: Context.generic option -> bool | |
| 56303 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 16 | end; | 
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 17 | |
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 18 | structure ML_Options: ML_OPTIONS = | 
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 19 | struct | 
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 20 | |
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 21 | (* source trace *) | 
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 22 | |
| 69575 | 23 | val source_trace = Config.declare_bool ("ML_source_trace", \<^here>) (K false);
 | 
| 56303 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 24 | |
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 25 | |
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 26 | (* exception trace *) | 
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 27 | |
| 69575 | 28 | val exception_trace = Config.declare_option_bool ("ML_exception_trace", \<^here>);
 | 
| 56303 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 29 | |
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 30 | fun exception_trace_enabled NONE = | 
| 69575 | 31 | (Options.default_bool (Config.name_of exception_trace) handle ERROR _ => false) | 
| 56303 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 32 | | exception_trace_enabled (SOME context) = Config.get_generic context exception_trace; | 
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 33 | |
| 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 34 | |
| 62498 | 35 | (* exception debugger *) | 
| 36 | ||
| 69575 | 37 | val exception_debugger = Config.declare_option_bool ("ML_exception_debugger", \<^here>);
 | 
| 62498 | 38 | |
| 39 | fun exception_debugger_enabled NONE = | |
| 69575 | 40 | (Options.default_bool (Config.name_of exception_debugger) handle ERROR _ => false) | 
| 62498 | 41 | | exception_debugger_enabled (SOME context) = Config.get_generic context exception_debugger; | 
| 42 | ||
| 43 | ||
| 60730 | 44 | (* debugger *) | 
| 45 | ||
| 69575 | 46 | val debugger = Config.declare_option_bool ("ML_debugger", \<^here>);
 | 
| 60730 | 47 | |
| 48 | fun debugger_enabled NONE = | |
| 69575 | 49 | (Options.default_bool (Config.name_of debugger) handle ERROR _ => false) | 
| 60730 | 50 | | debugger_enabled (SOME context) = Config.get_generic context debugger; | 
| 51 | ||
| 56303 
4cc3f4db3447
clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
 wenzelm parents: diff
changeset | 52 | end; |