equal
deleted
inserted
replaced
543 val supparams = (map fst o Locale.parameters_of_expr thy) supexpr; |
543 val supparams = (map fst o Locale.parameters_of_expr thy) supexpr; |
544 val mergeexpr = Locale.Merge (suplocales); |
544 val mergeexpr = Locale.Merge (suplocales); |
545 val constrain = Element.Constrains ((map o apsnd o map_atyps) |
545 val constrain = Element.Constrains ((map o apsnd o map_atyps) |
546 (K (TFree (Name.aT, base_sort))) supparams); |
546 (K (TFree (Name.aT, base_sort))) supparams); |
547 fun fork_syn (Element.Fixes xs) = |
547 fun fork_syn (Element.Fixes xs) = |
548 fold_map (fn (c, ty, syn) => cons (Name.name_of c, syn) #> pair (c, ty, NoSyn)) xs |
548 fold_map (fn (c, ty, syn) => cons (Binding.base_name c, syn) #> pair (c, ty, NoSyn)) xs |
549 #>> Element.Fixes |
549 #>> Element.Fixes |
550 | fork_syn x = pair x; |
550 | fork_syn x = pair x; |
551 fun fork_syntax elems = |
551 fun fork_syntax elems = |
552 let |
552 let |
553 val (elems', global_syntax) = fold_map fork_syn elems []; |
553 val (elems', global_syntax) = fold_map fork_syn elems []; |