src/Tools/Code/code_printer.ML
changeset 32913 3e9809678574
parent 32908 9aa8dfef16ff
child 32924 d2e9b2dab760
equal deleted inserted replaced
32910:d61e303fc7e5 32913:3e9809678574
    25   val first_lower: string -> string
    25   val first_lower: string -> string
    26   type var_ctxt
    26   type var_ctxt
    27   val make_vars: string list -> var_ctxt
    27   val make_vars: string list -> var_ctxt
    28   val intro_vars: string list -> var_ctxt -> var_ctxt
    28   val intro_vars: string list -> var_ctxt -> var_ctxt
    29   val lookup_var: var_ctxt -> string -> string
    29   val lookup_var: var_ctxt -> string -> string
       
    30   val intro_base_names: (string -> bool) -> (string -> string)
       
    31     -> string list -> var_ctxt -> var_ctxt
    30   val aux_params: var_ctxt -> iterm list list -> string list
    32   val aux_params: var_ctxt -> iterm list list -> string list
    31 
    33 
    32   type literals
    34   type literals
    33   val Literals: { literal_char: string -> string, literal_string: string -> string,
    35   val Literals: { literal_char: string -> string, literal_string: string -> string,
    34         literal_numeral: bool -> int -> string,
    36         literal_numeral: bool -> int -> string,
   132     val fished2 = map_index (fillup_param x) fished1;
   134     val fished2 = map_index (fillup_param x) fished1;
   133     val (fished3, _) = Name.variants fished2 Name.context;
   135     val (fished3, _) = Name.variants fished2 Name.context;
   134     val vars' = intro_vars fished3 vars;
   136     val vars' = intro_vars fished3 vars;
   135   in map (lookup_var vars') fished3 end;
   137   in map (lookup_var vars') fished3 end;
   136 
   138 
       
   139 fun intro_base_names no_syntax deresolve names = names 
       
   140   |> map_filter (fn name => if no_syntax name then
       
   141       let val name' = deresolve name in
       
   142         if Long_Name.is_qualified name' then NONE else SOME name'
       
   143       end else NONE)
       
   144   |> intro_vars;
       
   145 
   137 
   146 
   138 (** pretty literals **)
   147 (** pretty literals **)
   139 
   148 
   140 datatype literals = Literals of {
   149 datatype literals = Literals of {
   141   literal_char: string -> string,
   150   literal_char: string -> string,