src/Pure/Isar/attrib.ML
changeset 45619 76c5f277b234
parent 45612 a3ed5b65b85e
child 46126 bab00660539d
equal deleted inserted replaced
45618:cdb15f190788 45619:76c5f277b234
   279           |>> flat;
   279           |>> flat;
   280         val decls' = rev (map (apsnd rev) decls);
   280         val decls' = rev (map (apsnd rev) decls);
   281         val facts' =
   281         val facts' =
   282           if eq_list (eq_fst strict_eq_thm) (decls', fact') then
   282           if eq_list (eq_fst strict_eq_thm) (decls', fact') then
   283             [((b, []), map2 (fn (th, atts1) => fn (_, atts2) => (th, atts1 @ atts2)) decls' fact')]
   283             [((b, []), map2 (fn (th, atts1) => fn (_, atts2) => (th, atts1 @ atts2)) decls' fact')]
   284           else if forall (null o snd) decls' then [((b, []), fact')]
   284           else if null decls' then [((b, []), fact')]
   285           else [(empty_binding, decls'), ((b, []), fact')];
   285           else [(empty_binding, decls'), ((b, []), fact')];
   286       in (facts', context') end)
   286       in (facts', context') end)
   287   |> fst |> flat |> map (apsnd (map (apfst single)));
   287   |> fst |> flat |> map (apsnd (map (apfst single)));
   288 
   288 
   289 end;
   289 end;