src/Pure/ML/ml_process.scala
changeset 83528 eabf2d05787c
parent 83524 d76a77fe5d7a
child 83532 87d095351f8e
equal deleted inserted replaced
83527:53d2488f1802 83528:eabf2d05787c
   167     if (more_args.nonEmpty) getopts.usage(internal = internal)
   167     if (more_args.nonEmpty) getopts.usage(internal = internal)
   168 
   168 
   169     val store = Store(options)
   169     val store = Store(options)
   170     val session_background = Sessions.background(options, logic, dirs = dirs).check_errors
   170     val session_background = Sessions.background(options, logic, dirs = dirs).check_errors
   171     val session_heaps = store.session_heaps(session_background, logic = logic)
   171     val session_heaps = store.session_heaps(session_background, logic = logic)
   172     ML_Process(options, session_background, session_heaps,
   172 
   173       args = eval_args, modes = modes, cwd = cwd, redirect = redirect)
   173     val process =
   174       .result(
   174       ML_Process(options, session_background, session_heaps,
       
   175         args = eval_args, modes = modes, cwd = cwd, redirect = redirect)
       
   176     if (internal) process.result()
       
   177     else {
       
   178       process.result(
   175         progress_stdout = Output.writeln(_, stdout = true),
   179         progress_stdout = Output.writeln(_, stdout = true),
   176         progress_stderr = Output.writeln(_))
   180         progress_stderr = Output.writeln(_))
       
   181     }
   177   }
   182   }
   178 
   183 
   179   val isabelle_tool =
   184   val isabelle_tool =
   180     Isabelle_Tool("process", "raw ML process (batch mode)", Scala_Project.here,
   185     Isabelle_Tool("process", "raw ML process (batch mode)", Scala_Project.here,
   181       args => sys.exit(tool_body(args).rc))
   186       args => sys.exit(tool_body(args).rc))