equal
deleted
inserted
replaced
23 val merge: T * T -> T |
23 val merge: T * T -> T |
24 val lookup: T -> string -> string |
24 val lookup: T -> string -> string |
25 val prune: T -> string -> string |
25 val prune: T -> string -> string |
26 end; |
26 end; |
27 |
27 |
28 structure NameSpace(*: NAME_SPACE FIXME *) = |
28 structure NameSpace: NAME_SPACE = |
29 struct |
29 struct |
30 |
30 |
31 |
31 |
32 (** long identifiers **) |
32 (** long identifiers **) |
33 |
33 |
59 fun entries_of (NameSpace (entries, _)) = entries; |
59 fun entries_of (NameSpace (entries, _)) = entries; |
60 fun tab_of (NameSpace (_, tab)) = tab; |
60 fun tab_of (NameSpace (_, tab)) = tab; |
61 |
61 |
62 fun make entries = |
62 fun make entries = |
63 let |
63 let |
64 fun accesses [] = [] (* FIXME !? *) |
64 fun accesses [] = [] |
65 | accesses entry = |
65 | accesses entry = |
66 let |
66 let |
67 val p = pack entry; |
67 val p = pack entry; |
68 val (q, b) = split_last entry; |
68 val (q, b) = split_last entry; |
69 val sfxs = suffixes1 entry; |
69 val sfxs = suffixes1 entry; |