DIRECTORY BasicTime USING [GMT], MobDefs USING [NullVersion, VersionStamp], Rope USING [ROPE]; Mobery: CEDAR DEFINITIONS = BEGIN ROPE: TYPE = Rope.ROPE; VersionStamp: TYPE = MobDefs.VersionStamp; StampTable: TYPE = REF StampTableRep; StampTableRep: TYPE; NoStamp: ERROR; FlushCache: PROC; EnumerateStampTable: PROC [stampTable: StampTable, to: EnumerateStampProc]; EnumerateStampProc: TYPE = PROC [name, stampClass: ROPE, stamp: VersionStamp] RETURNS [BOOL]; StampFromStampTable: PROC [stampTable: StampTable, fileName: ROPE] RETURNS [stampClass: ROPE, stamp: VersionStamp]; EnumerateStampTableDifference: PROC [tab1, tab2: StampTable, to: EnumerateStampProc]; StampTableSubset: PROC [tab1, tab2: StampTable] RETURNS [BOOL]; Has: PROC [stampTable: StampTable, name: ROPE, class: ROPE, stamp: VersionStamp] RETURNS [BOOL]; ReadStampTable: PROC [fileName: ROPE] RETURNS [stampTable: StampTable]; StampAndNameFromFile: PROC [fileName: ROPE] RETURNS [stamp: MobDefs.VersionStamp _ MobDefs.NullVersion, name: ROPE _ NIL]; GetCOStamps: PUBLIC PROC [fileName: ROPE] RETURNS [list: LIST OF ROPE, created: BasicTime.GMT]; VersionAndNameFromString: PUBLIC PROC [aRope: ROPE] RETURNS [stamp: MobDefs.VersionStamp, name: ROPE] ; END. ΤMobery>Mobery.Mesa Last Edited by: Spreitzer, August 14, 1990 8:13 am PDT JKF January 11, 1989 10:13:29 am PST Eduardo Pelegri-Llopart, December 21, 1989 8:27:39 pm PST Andy Litman March 3, 1988 5:51:27 pm PST Flush any existing values from the cache (useful for cases like network failure) Manipulation of Stamps. Enumerates stamps in tab1 but not tab2. Check that all stamps in tab1 are in (and identical) tab2 Reading of Stamps. Get all the version stamps from an OFile. Save them so they can be enumerated afterwards. Extract the version stamp from the O file. If there is none, return MobDefs.NullVersion. It uses the prefixes "@(#) mob_version [nnn,mmm] name". Internal Procedures (useful for debugging). Κ@– "cedar" style˜Icode™™6K™$K™9K™(—K™šΟk ˜ Kšœ œœ˜Jšœœ˜*Jšœœœ˜—K˜KšΠbxœœ œ˜K˜Kš˜K˜Kšœœœ˜Kšœœ˜*Kšœ œœ˜%Kšœœ˜K˜KšΟnœœ˜K˜šŸ œœ˜K™PK˜—K™˜KšŸœœ2˜K˜Kš œœœœœœ˜]—K˜Kš Ÿœœ$œœœ˜sK˜šŸœœ2˜UKšœ'™'—K˜šŸœœœœ˜?K™9—K˜Kš Ÿœœ œ œœœ˜`—K™™K™šŸœœ œœ˜GJ™Z—K˜š Ÿœœ œœ;œœ˜zK™YK™7—K˜—K™+™KšŸ œœœ œœœœœœ˜_K˜Kš Ÿœœœ œœ%œ˜g—K˜Kšœ˜—…—Ψ μ