292 let |
292 let |
293 val declare = Name.declare name_fragment; |
293 val declare = Name.declare name_fragment; |
294 in (name_fragment, ((declare nsp_class, declare nsp_object), declare nsp_common)) end; |
294 in (name_fragment, ((declare nsp_class, declare nsp_object), declare nsp_common)) end; |
295 fun namify_class base ((nsp_class, nsp_object), nsp_common) = |
295 fun namify_class base ((nsp_class, nsp_object), nsp_common) = |
296 let |
296 let |
297 val (base', nsp_class') = yield_singleton Name.variants base nsp_class |
297 val (base', nsp_class') = Name.variant base nsp_class |
298 in (base', ((nsp_class', nsp_object), Name.declare base' nsp_common)) end; |
298 in (base', ((nsp_class', nsp_object), Name.declare base' nsp_common)) end; |
299 fun namify_object base ((nsp_class, nsp_object), nsp_common) = |
299 fun namify_object base ((nsp_class, nsp_object), nsp_common) = |
300 let |
300 let |
301 val (base', nsp_object') = yield_singleton Name.variants base nsp_object |
301 val (base', nsp_object') = Name.variant base nsp_object |
302 in (base', ((nsp_class, nsp_object'), Name.declare base' nsp_common)) end; |
302 in (base', ((nsp_class, nsp_object'), Name.declare base' nsp_common)) end; |
303 fun namify_common upper base ((nsp_class, nsp_object), nsp_common) = |
303 fun namify_common upper base ((nsp_class, nsp_object), nsp_common) = |
304 let |
304 let |
305 val (base', nsp_common') = |
305 val (base', nsp_common') = |
306 yield_singleton Name.variants (if upper then first_upper base else base) nsp_common |
306 Name.variant (if upper then first_upper base else base) nsp_common |
307 in |
307 in |
308 (base', |
308 (base', |
309 ((Name.declare base' nsp_class, Name.declare base' nsp_object), nsp_common')) |
309 ((Name.declare base' nsp_class, Name.declare base' nsp_object), nsp_common')) |
310 end; |
310 end; |
311 fun namify_stmt (Code_Thingol.Fun _) = namify_object |
311 fun namify_stmt (Code_Thingol.Fun _) = namify_object |