Copyright (C) 1994, Digital Equipment Corp.
PackageLib.def
INTERFACE PackageLib;
IMPORT FileSys, OSError, PackageObj, Thread;
EXCEPTION Stop;
TYPE
FN = FileSys.FN;
DiffType = {
Same, NoSrc, NoDest, SrcNewer, SrcOlder,
LinksDiffer, LengthsDiffer, TypesDiffer, ModesDiffer};
DiffClosure = OBJECT METHODS
report(dir: FN; diff: DiffType; elem: PackageObj.DirElem)
RAISES {Stop, Thread.Alerted};
END;
EnumClosure = OBJECT METHODS
acquire() : (*dir*) FileSys.FN;
release();
END;
CONST
VersionFile = ".version";
ExportLinkFile = ".exportLinks";
PROCEDURE Enumerate (e: EnumClosure): PackageObj.DirEnum
RAISES {OSError.E};
PROCEDURE Compare(src, dest: PackageObj.DirEnum; cl: DiffClosure)
RAISES {Thread.Alerted};
PROCEDURE SetDirDates(dir: FN; enum: PackageObj.DirEnum)
RAISES {OSError.E};
PROCEDURE EmptySource() : PackageObj.Source;
END PackageLib.