equal
deleted
inserted
replaced
80 |
80 |
81 fun extend (NameSpace tab, names) = |
81 fun extend (NameSpace tab, names) = |
82 NameSpace (foldl add (tab, flat (map (fn name => map (rpair name) (accesses name)) names))); |
82 NameSpace (foldl add (tab, flat (map (fn name => map (rpair name) (accesses name)) names))); |
83 |
83 |
84 fun merge (NameSpace tab1, NameSpace tab2) = (*2nd overrides 1st*) |
84 fun merge (NameSpace tab1, NameSpace tab2) = (*2nd overrides 1st*) |
85 NameSpace (foldl add (tab1, Symtab.dest tab2)); |
85 NameSpace (Symtab.foldl add (tab1, tab2)); |
86 |
86 |
87 |
87 |
88 (* intern / extern names *) |
88 (* intern / extern names *) |
89 |
89 |
90 fun intern (NameSpace tab) name = |
90 fun intern (NameSpace tab) name = |