src/Pure/PIDE/markup.ML
changeset 72103 7b318273a4aa
parent 72002 5c4800f6b25a
child 72106 36743e0e2c4c
equal deleted inserted replaced
72101:c65614b556b2 72103:7b318273a4aa
   163   val comment3N: string val comment3: T
   163   val comment3N: string val comment3: T
   164   val elapsedN: string
   164   val elapsedN: string
   165   val cpuN: string
   165   val cpuN: string
   166   val gcN: string
   166   val gcN: string
   167   val timing_properties: {elapsed: Time.time, cpu: Time.time, gc: Time.time} -> Properties.T
   167   val timing_properties: {elapsed: Time.time, cpu: Time.time, gc: Time.time} -> Properties.T
   168   val parse_timing_properties: Properties.T -> {elapsed: Time.time, cpu: Time.time, gc: Time.time}
       
   169   val command_timingN: string
   168   val command_timingN: string
   170   val command_timing_properties:
       
   171     {file: string, offset: int, name: string} -> Time.time -> Properties.T
       
   172   val parse_command_timing_properties:
   169   val parse_command_timing_properties:
   173     Properties.T -> ({file: string, offset: int, name: string} * Time.time) option
   170     Properties.T -> ({file: string, offset: int, name: string} * Time.time) option
   174   val timingN: string val timing: {elapsed: Time.time, cpu: Time.time, gc: Time.time} -> T
   171   val timingN: string val timing: {elapsed: Time.time, cpu: Time.time, gc: Time.time} -> T
   175   val command_indentN: string val command_indent: int -> T
   172   val command_indentN: string val command_indent: int -> T
   176   val goalN: string val goal: T
   173   val goalN: string val goal: T
   223   val task_statistics: Properties.entry
   220   val task_statistics: Properties.entry
   224   val command_timing: Properties.entry
   221   val command_timing: Properties.entry
   225   val theory_timing: Properties.entry
   222   val theory_timing: Properties.entry
   226   val session_timing: Properties.entry
   223   val session_timing: Properties.entry
   227   val loading_theory: string -> Properties.T
   224   val loading_theory: string -> Properties.T
   228   val dest_loading_theory: Properties.T -> string option
       
   229   val build_session_finished: Properties.T
   225   val build_session_finished: Properties.T
   230   val print_operationsN: string
   226   val print_operationsN: string
   231   val print_operations: Properties.T
   227   val print_operations: Properties.T
   232   val exportN: string
   228   val exportN: string
   233   type export_args =
   229   type export_args =
   587 fun timing_properties {elapsed, cpu, gc} =
   583 fun timing_properties {elapsed, cpu, gc} =
   588  [(elapsedN, Value.print_time elapsed),
   584  [(elapsedN, Value.print_time elapsed),
   589   (cpuN, Value.print_time cpu),
   585   (cpuN, Value.print_time cpu),
   590   (gcN, Value.print_time gc)];
   586   (gcN, Value.print_time gc)];
   591 
   587 
   592 fun parse_timing_properties props =
       
   593  {elapsed = Properties.seconds props elapsedN,
       
   594   cpu = Properties.seconds props cpuN,
       
   595   gc = Properties.seconds props gcN};
       
   596 
       
   597 val timingN = "timing";
   588 val timingN = "timing";
   598 fun timing t = (timingN, timing_properties t);
   589 fun timing t = (timingN, timing_properties t);
   599 
   590 
   600 
   591 
   601 (* command timing *)
   592 (* command timing *)
   602 
   593 
   603 val command_timingN = "command_timing";
   594 val command_timingN = "command_timing";
   604 
       
   605 fun command_timing_properties {file, offset, name} elapsed =
       
   606  [(fileN, file), (offsetN, Value.print_int offset),
       
   607   (nameN, name), (elapsedN, Value.print_time elapsed)];
       
   608 
   595 
   609 fun parse_command_timing_properties props =
   596 fun parse_command_timing_properties props =
   610   (case (Properties.get props fileN, Properties.get props offsetN, Properties.get props nameN) of
   597   (case (Properties.get props fileN, Properties.get props offsetN, Properties.get props nameN) of
   611     (SOME file, SOME offset, SOME name) =>
   598     (SOME file, SOME offset, SOME name) =>
   612       SOME ({file = file, offset = Value.parse_int offset, name = name},
   599       SOME ({file = file, offset = Value.parse_int offset, name = name},
   707 val theory_timing = (functionN, "theory_timing");
   694 val theory_timing = (functionN, "theory_timing");
   708 
   695 
   709 val session_timing = (functionN, "session_timing");
   696 val session_timing = (functionN, "session_timing");
   710 
   697 
   711 fun loading_theory name = [("function", "loading_theory"), ("name", name)];
   698 fun loading_theory name = [("function", "loading_theory"), ("name", name)];
   712 
       
   713 fun dest_loading_theory [("function", "loading_theory"), ("name", name)] = SOME name
       
   714   | dest_loading_theory _ = NONE;
       
   715 
   699 
   716 val build_session_finished = [("function", "build_session_finished")];
   700 val build_session_finished = [("function", "build_session_finished")];
   717 
   701 
   718 val print_operationsN = "print_operations";
   702 val print_operationsN = "print_operations";
   719 val print_operations = [(functionN, print_operationsN)];
   703 val print_operations = [(functionN, print_operationsN)];