DIRECTORY GVBasics USING [RName], Pup USING [Address]; GVLocate: CEDAR DEFINITIONS = BEGIN FoundState: TYPE = { allDown, notFound, found }; FoundServerInfo: TYPE = RECORD[ SELECT t: FoundState FROM allDown => NULL, notFound => NULL, found => [where: Pup.Address], ENDCASE ]; FindNearestServer: PROC[list: GVBasics.RName, accept: PROC[Pup.Address]RETURNS[BOOLEAN] ] RETURNS[ FoundServerInfo ]; FindLocalServer: PROC[listl: GVBasics.RName ] RETURNS[ FoundState, GVBasics.RName ]; FindRegServer: PROC[ who: GVBasics.RName, accept: PROCEDURE[Pup.Address]RETURNS[BOOLEAN] ] RETURNS[ FoundServerInfo ]; END. ΐGVLocate.mesa (Cedar) - Location of servers Copyright c 1985 by Xerox Corporation. All rights reserved. Andrew Birrell May 13, 1983 1:29 pm Hal Murray, January 11, 1986 6:17:40 pm PST Κ!˜codešœ+™+Kšœ Οmœ1™