src/Pure/ML/ml_compiler2.ML
author wenzelm
Mon, 01 Apr 2024 15:37:55 +0200
changeset 80064 0d94dd2fd2d0
parent 74148 a97d5356f1d9
permissions -rw-r--r--
clarified names (see also 9c00a46d69d0, c5cd7a58cf2d); NB: Simplifier.set_trace_ops overrides Pure setup for Simplifier_Trace panel, but that is hardly every used in practice;

(*  Title:      Pure/ML/ml_compiler2.ML
    Author:     Makarius

Isabelle/ML file operations.
*)

val {ML_file, ML_file_debug, ML_file_no_debug} =
  ML_Compiler0.ML_file_operations (fn opt_debug => fn file =>
    let val flags = ML_Compiler.verbose true (ML_Compiler.debug_flags opt_debug) in
      Position.setmp_thread_data (Position.file_only file) (fn () =>
        ML_Context.eval_file flags (Path.explode file)
          handle ERROR msg => (writeln msg; error "ML error")) ()
    end);

val use = ML_file;