src/HOL/Tools/record.ML
changeset 33039 5018f6a76b3f
parent 33029 2fefe039edf1
parent 33038 8f9594c31de4
child 33049 c38f02fdf35d
equal deleted inserted replaced
33036:c61fe520602b 33039:5018f6a76b3f
  1832     val fields = map (apfst full) bfields;
  1832     val fields = map (apfst full) bfields;
  1833     val names = map fst fields;
  1833     val names = map fst fields;
  1834     val extN = full bname;
  1834     val extN = full bname;
  1835     val types = map snd fields;
  1835     val types = map snd fields;
  1836     val alphas_fields = fold Term.add_tfree_namesT types [];
  1836     val alphas_fields = fold Term.add_tfree_namesT types [];
  1837     val alphas_ext = alphas inter alphas_fields;
  1837     val alphas_ext = inter (op =) (alphas, alphas_fields);
  1838     val len = length fields;
  1838     val len = length fields;
  1839     val variants =
  1839     val variants =
  1840       Name.variant_list (moreN :: rN :: (rN ^ "'") :: wN :: parent_variants)
  1840       Name.variant_list (moreN :: rN :: (rN ^ "'") :: wN :: parent_variants)
  1841         (map fst bfields);
  1841         (map fst bfields);
  1842     val vars = ListPair.map Free (variants, types);
  1842     val vars = ListPair.map Free (variants, types);