DIRECTORY BasicTime, IO, PFS, Rope, VersionMap; VersionMapBuilding: CEDAR DEFINITIONS = { ROPE: TYPE ~ Rope.ROPE; MapList: TYPE ~ VersionMap.MapList; MapUnderConstruction: TYPE ~ REF MapUnderConstructionPrivate; MapUnderConstructionPrivate: TYPE; StartConstruction: PROC [size: NAT ฌ 0] RETURNS [MapUnderConstruction]; AddFile: PROC [muc: MapUnderConstruction, t: ConsTuple]; ConsTuple: TYPE ~ RECORD [name, from: ROPE, created: BasicTime.GMT, stamp: VersionMap.VersionStamp]; FinishConstruction: PROC [muc: MapUnderConstruction, prefix: ROPE, PerDuplicate: PROC [a, b: ConsTuple]] RETURNS [VersionMap.Map]; ClassifyDifference: PROC [a, b: ConsTuple] RETURNS [DifferenceClass]; DifferenceClass: TYPE ~ {identical, identicalModExtensionAndCreated, veryDifferent}; LimitedMap: TYPE ~ RECORD [map: VersionMap.Map, limit: NAT]; LimitedSave: PROC [lm: LimitedMap, name: PFS.PATH, long: BOOL]; FinishLimitedConstruction: PROC [muc: MapUnderConstruction, prefix: ROPE, PerDuplicate: PROC [a, b: ConsTuple], suppressDuplicates: BOOL] RETURNS [LimitedMap]; }. ˜ VersionMapBuilding.Mesa Copyright ำ 1990, 1991, 1992 by Xerox Corporation. All rights reserved. Last tweaked by Mike Spreitzer on August 7, 1990 1:26:35 pm PDT Willie-s, March 13, 1992 4:55 pm PST If size#0, it is taken as an estimate of the numer of entries; OK to under-estimate. Add the tuple to the map under construction. t.name is in appropriate syntax. t.from is an English description of where this tuple came from, for use in generating error messages. Produce a version map, using the given prefix. Version stamp collisions are reported by calling PerDuplicate. Only the first limit entries are valid. Produce a version map, using the given prefix. Version stamp collisions are reported by calling PerDuplicate. If suppressDuplicates, then PerDuplicate is never called with identical ConsTuples, and the result may actually be limited; otherwise, limit=map.Length[] . ส๓•NewlineDelimiter –(cedarcode) style™codešœ™Kšœ ฯeœ=™HK™?K™$—K˜Kšฯk œ žœžœ˜/K˜Kšฯnœžœž œ˜)K˜Kšžœžœžœ˜Kšœ žœ˜#K˜Kšœžœžœ˜=Kšœžœ˜"K˜šŸœžœžœžœ˜GK™T—K˜šŸœžœ+˜8Kšœœ!œœ_™า—K˜Kš œ žœžœžœžœ"˜dK˜š Ÿœžœ%žœŸ œžœžœ˜‚Kšœa œ™n—K˜KšŸœžœžœ˜Ešœžœ?˜TK˜—šœ žœžœžœ˜