FileCmds.Mesa
Copyright © 1984 by Xerox Corporation. All rights reserved.
Last Edited by: Spreitzer, December 6, 1984 8:34:25 pm PST
DIRECTORY BasicTime, DFUtilities, IO, OrderedSymbolTableRef, Rope, ViewerClasses;
FileCmds: CEDAR DEFINITIONS
={
LORA: TYPE = LIST OF REF ANY;
ROPE: TYPE = Rope.ROPE;
Viewer: TYPE = ViewerClasses.Viewer;
STREAM: TYPE = IO.STREAM;
GMT: TYPE = BasicTime.GMT;
noGMT: GMT = BasicTime.nullGMT;
Error: ERROR [message: ROPE];
For syntax errors and such.
Miss: SIGNAL [name: ROPE, created: GMT];
Informational signal: Couldn't identify.
FileNote: TYPE = REF FileNoteRep;
FileNoteRep: TYPE = RECORD [
name: ROPE,
created: GMT ← noGMT,
primaryVolume, backupVolume: ROPENIL,
createTried: BOOLFALSE];
FileSet: TYPE = REF FileSetRep;
FileSetRep: TYPE = RECORD [
elts: OrderedSymbolTableRef.Table,
summary: ROPE];
FileConsumer: TYPE = PROC [fn: FileNote];
ArchiveWhich: TYPE = {archive, online};
DFWhich: TYPE = {remote, local};
IdentificationScheme: TYPE = {longWithVersion, shortAndCreate, askFS};
GetCreated: PROC[fn: FileNote] RETURNS [created: GMT];
may return noGMT.
Eval: PROC [ra: REF ANY, ids: IdentificationScheme] RETURNS [fs: FileSet];
ra is what you get when you call IO.GetRefAny to parse a fileSetExpression as defined in FileCmdsDoc.Tioga
EnumSet: PROC [fs: FileSet, to: FileConsumer];
Lookup: PROC [fs: FileSet, fn: FileNote] RETURNS [found: FileNote];
Delete: PROC [fs: FileSet, fn: FileNote] RETURNS [found: FileNote];
Size: PROC [fs: FileSet] RETURNS [numberOfFiles: INT];
EnumArchiveMsg: PROC [date: GMT, to: FileConsumer, which: ArchiveWhich, ids: IdentificationScheme];
EnumDF: PROC [dfName: ROPE, date: DFUtilities.Date ← [], to: FileConsumer, filter: DFUtilities.Filter, which: DFWhich, ids: IdentificationScheme];
}.