src/HOL/Tools/ATP/atp_util.ML
changeset 52077 788b27dfaefa
parent 52076 bfa28e1cba77
child 52125 ac7830871177
equal deleted inserted replaced
52076:bfa28e1cba77 52077:788b27dfaefa
    12   val chunk_list : int -> 'a list -> 'a list list
    12   val chunk_list : int -> 'a list -> 'a list list
    13   val stringN_of_int : int -> int -> string
    13   val stringN_of_int : int -> int -> string
    14   val strip_spaces : bool -> (char -> bool) -> string -> string
    14   val strip_spaces : bool -> (char -> bool) -> string -> string
    15   val strip_spaces_except_between_idents : string -> string
    15   val strip_spaces_except_between_idents : string -> string
    16   val elide_string : int -> string -> string
    16   val elide_string : int -> string -> string
       
    17   val find_enclosed : string -> string -> string -> string list
    17   val nat_subscript : int -> string
    18   val nat_subscript : int -> string
    18   val unquote_tvar : string -> string
    19   val unquote_tvar : string -> string
    19   val unyxml : string -> string
    20   val unyxml : string -> string
    20   val maybe_quote : string -> string
    21   val maybe_quote : string -> string
    21   val string_of_ext_time : bool * Time.time -> string
    22   val string_of_ext_time : bool * Time.time -> string
   118   if size s > threshold then
   119   if size s > threshold then
   119     String.extract (s, 0, SOME (threshold div 2 - 5)) ^ " ...... " ^
   120     String.extract (s, 0, SOME (threshold div 2 - 5)) ^ " ...... " ^
   120     String.extract (s, size s - (threshold + 1) div 2 + 6, NONE)
   121     String.extract (s, size s - (threshold + 1) div 2 + 6, NONE)
   121   else
   122   else
   122     s
   123     s
       
   124 
       
   125 fun find_enclosed left right s =
       
   126   case first_field left s of
       
   127     SOME (_, s) =>
       
   128     (case first_field right s of
       
   129        SOME (enclosed, s) => enclosed :: find_enclosed left right s
       
   130      | NONE => [])
       
   131   | NONE => []
   123 
   132 
   124 val subscript = implode o map (prefix "\<^isub>") o raw_explode  (* FIXME Symbol.explode (?) *)
   133 val subscript = implode o map (prefix "\<^isub>") o raw_explode  (* FIXME Symbol.explode (?) *)
   125 fun nat_subscript n =
   134 fun nat_subscript n =
   126   n |> string_of_int |> print_mode_active Symbol.xsymbolsN ? subscript
   135   n |> string_of_int |> print_mode_active Symbol.xsymbolsN ? subscript
   127 
   136