src/Pure/Isar/proof_context.ML
changeset 32784 1a5dde5079ac
parent 32738 15bb09ca0378
child 32966 5b21661fe618
equal deleted inserted replaced
32783:e43d761a742d 32784:1a5dde5079ac
  1031 
  1031 
  1032 (* notation *)
  1032 (* notation *)
  1033 
  1033 
  1034 local
  1034 local
  1035 
  1035 
  1036 fun const_syntax ctxt (Free (x, T), mx) = SOME (true, (x, T, mx))
  1036 fun const_syntax _ (Free (x, T), mx) = SOME (true, (x, T, mx))
  1037   | const_syntax ctxt (Const (c, _), mx) =
  1037   | const_syntax ctxt (Const (c, _), mx) =
  1038       Option.map (pair false) (try (Consts.syntax (consts_of ctxt)) (c, mx))
  1038       Option.map (pair false) (try (Consts.syntax (consts_of ctxt)) (c, mx))
  1039   | const_syntax _ _ = NONE;
  1039   | const_syntax _ _ = NONE;
  1040 
  1040 
  1041 in
  1041 in
  1104 end;
  1104 end;
  1105 
  1105 
  1106 
  1106 
  1107 (* fixes vs. frees *)
  1107 (* fixes vs. frees *)
  1108 
  1108 
  1109 fun auto_fixes (arg as (ctxt, (propss, x))) =
  1109 fun auto_fixes (ctxt, (propss, x)) =
  1110   ((fold o fold) Variable.auto_fixes propss ctxt, (propss, x));
  1110   ((fold o fold) Variable.auto_fixes propss ctxt, (propss, x));
  1111 
  1111 
  1112 fun bind_fixes xs ctxt =
  1112 fun bind_fixes xs ctxt =
  1113   let
  1113   let
  1114     val (_, ctxt') = ctxt |> add_fixes (map (fn x => (Binding.name x, NONE, NoSyn)) xs);
  1114     val (_, ctxt') = ctxt |> add_fixes (map (fn x => (Binding.name x, NONE, NoSyn)) xs);