equal
deleted
inserted
replaced
125 let |
125 let |
126 val trs1 = these (AList.lookup (op =) tabs1 mode); |
126 val trs1 = these (AList.lookup (op =) tabs1 mode); |
127 val trs2 = these (AList.lookup (op =) tabs2 mode); |
127 val trs2 = these (AList.lookup (op =) tabs2 mode); |
128 val trs = gen_distinct eq_tr (trs1 @ trs2); |
128 val trs = gen_distinct eq_tr (trs1 @ trs2); |
129 in |
129 in |
130 (case gen_duplicates (eq_fst (op =)) trs of |
130 (case duplicates (eq_fst (op =)) trs of |
131 [] => (mode, trs) |
131 [] => (mode, trs) |
132 | dups => error ("More than one token translation function in mode " ^ |
132 | dups => error ("More than one token translation function in mode " ^ |
133 quote mode ^ " for " ^ commas_quote (map name dups))) |
133 quote mode ^ " for " ^ commas_quote (map name dups))) |
134 end; |
134 end; |
135 in |
135 in |