DIRECTORY IO USING [STREAM], Rope USING [ROPE], STP USING [Access, DesiredProperties, FileInfo, ValidProperties], STPCode USING [Mark, Reply]; STPPrivate: CEDAR DEFINITIONS ~ BEGIN Handle: TYPE = REF Object; Object: TYPE = RECORD [ byteStream: IO.STREAM _ NIL, userState: ARRAY UserProperties OF REF TEXT _ ALL[NIL], gotMark: BOOLEAN _ FALSE, mark: Mark _ NULL, remoteString: REF TEXT _ NIL, host: Rope.ROPE _ NIL, plist: PList _ NIL, desiredProps: STP.DesiredProperties _ ALL[TRUE], info: STP.FileInfo _ NIL, remoteStream: RemoteStream _ NIL ]; RemoteStream: TYPE = REF RemoteObject; RemoteObject: TYPE = RECORD[ state: RemoteStreamState, access: STP.Access, stp: Handle ]; Operation: TYPE = {delete, directory, retrieve, store}; ProtocolError: TYPE = {badVersion, badMark, badPList, eocExpected, noCode}; RemoteStreamState: TYPE = {initial, confirm, data, complete, end}; PListArray: TYPE = ARRAY STP.ValidProperties OF REF TEXT; PList: TYPE = REF PListArray; ValidProperties: TYPE = STP.ValidProperties; FileProperties: TYPE = STP.ValidProperties[directory..author]; UserProperties: TYPE = STP.ValidProperties[userName..directory]; Reply: TYPE = STPCode.Reply; Mark: TYPE = STPCode.Mark; END. €STPPrivate.mesa Copyright c 1986 by Xerox Corporation. All rights reserved. Doug Wyatt, May 16, 1986 2:57:23 pm PDT Private type declarations for STPImpl. ΚH˜codešœ™Kšœ Οmœ1™Kšœžœžœ&˜@K˜Kšœžœ˜Kšœžœ˜K˜Kšžœ˜—…—Ά’