-- SMFI.mesa -- last edit by Schmidt, May 3, 1983 11:28 am -- last edit by Satterthwaite, August 4, 1983 1:33 pm -- only has types in it, no procs DIRECTORY File: TYPE USING [Capability, nullCapability], Rope: TYPE USING [Text], TimeStamp: TYPE USING [Stamp], SMTree: TYPE Tree USING [Link, null]; SMFI: CEDAR DEFINITIONS~{ OPEN Tree~~SMTree; -- objects of these types are centrally managed -- do not change contents without acquiring the monitor lock of SMFIImpl FIState: TYPE~{empty, analyzed, opened}; SrcFileInfo: TYPE~REF SrcFileInfoRecord; SrcFileInfoRecord: TYPE~RECORD[ -- the key create: LONG CARDINAL←, -- file create time -- links (private) link: SrcFileInfo←, -- object type info type: Tree.Link←Tree.null, -- the procedure type -- version map info (defer until CFS?) host: Rope.Text←NIL, -- @[host]<directory>shortname!version directory: Rope.Text←NIL, -- in the distributed file system shortName: Rope.Text←NIL, version: LONG CARDINAL←0, -- local file info state: FIState←$empty, new: BOOL←FALSE, -- true after Notice and before Compile localName: Rope.Text←NIL, -- for the local disk capability: File.Capability←File.nullCapability ]; BcdFileInfo: TYPE~REF BcdFileInfoRecord; BcdFileInfoRecord: TYPE~RECORD[ -- the key stamp: TimeStamp.Stamp←, -- version stamp, not create -- links (private) link: BcdFileInfo←, -- object type info type: Tree.Link←Tree.null, -- the procedure type -- version map info (defer until CFS?) host: Rope.Text←NIL, -- @[host]<directory>shortname!version directory: Rope.Text←NIL, -- in the distributed file system shortName: Rope.Text←NIL, version: LONG CARDINAL←0, -- local file info state: FIState←$empty, localName: Rope.Text←NIL, -- for the local disk capability: File.Capability←File.nullCapability ]; }.