-- DBStash.Mesa, last edit April 20, 1982 10:53 am -- Pilot 6.0/ Mesa 7.0 -- definitions file for the cache of file info DIRECTORY Dir: TYPE USING [DepSeq], TimeStamp: TYPE USING [Stamp], UserExec: TYPE USING[CommandProc]; DBStash: DEFINITIONS = { -- returns NIL if not found Lookup: PROC[create: LONG CARDINAL, fileName: LONG STRING] RETURNS[depseq: Dir.DepSeq]; BcdVersLookup: PROC[bcdVers: TimeStamp.Stamp] RETURNS[depseq: Dir.DepSeq]; -- the newdepseq this returns is not re-used and may be saved. -- don't ever free it. Insert: PROC[create: LONG CARDINAL, fileName: LONG STRING, depseq: Dir.DepSeq] RETURNS[newdepseq: Dir.DepSeq]; Flush: UserExec.CommandProc; -- call this only once ForceOut: PROC RETURNS[npages: CARDINAL]; -- just make sure HugeZone is forced out to disk -- this is the official way to get one of these DepSeq's -- don't ever free this, or save it as it is re-used GetTemporaryDepSeq: PROC RETURNS[depseq: Dir.DepSeq]; -- note that this depseq VIOLATES the MONITOR -- to get at the # of leaders in other instances of SubrImpl SetNLeaders: PROC; GetNLeaders: PROC RETURNS[nleaders: CARDINAL]; -- to get stats of DB SetNHits: PROC; GetNHits: PROC RETURNS[nhits, nmisses: LONG CARDINAL]; }.