DIRECTORY Basics USING [UnsafeBlock], BasicTime USING [GMT], IO USING [STREAM], Rope USING [ROPE]; ImagerSys: CEDAR DEFINITIONS ~ BEGIN OPEN Rope; doAbortCheck: BOOL; -- Turn on to enable abort checking. CheckForAbort: PROC = INLINE { IF doAbortCheck THEN ReallyCheckForAbort[] }; ReallyCheckForAbort: PRIVATE PROC; RawHash: UNSAFE PROC [block: Basics.UnsafeBlock, modulus: CARDINAL] RETURNS [CARDINAL]; GoodModulus: PROC [size: CARDINAL] RETURNS [CARDINAL]; LongMult: PROC [a, b: CARDINAL] RETURNS [CARD32]; SMul: PROC [a: INTEGER, b: INTEGER] RETURNS [INT] ~ INLINE { RETURN [IF a#0 THEN Smul[a, b] ELSE 0] }; Smul: PRIVATE PROC [a: INTEGER, b: INTEGER] RETURNS [INT]; FileError: ERROR [code: ATOM, explanation: ROPE]; OpenInputFile: PROC [fileName: ROPE] RETURNS [stream: IO.STREAM]; RopeFromFile: PROC [fileName: ROPE] RETURNS [ROPE]; RopeFromStream: PROC [stream: IO.STREAM] RETURNS [ROPE]; StreamFileName: PROC [stream: IO.STREAM] RETURNS [fullFName: ROPE]; StreamCreateDate: PROC [stream: IO.STREAM] RETURNS [created: BasicTime.GMT]; OpenOutputFile: PROC [fileName: ROPE] RETURNS [stream: IO.STREAM]; END. τ ImagerSys.mesa Copyright Σ 1988, 1989, 1990, 1991 by Xerox Corporation. All rights reserved. Michael Plass, October 16, 1991 1:55 pm PDT Tim Diebert: January 20, 1990 7:05:23 am PST Doug Wyatt, June 5, 1990 3:34 pm PDT Computes a hash function on a block of raw bytes. Answer is in [0..modulus); modulus should be produced by GoodModulus to ensure a good hash distribution. Computes an appropriate modulus near the given size. FileError is raised instead of the underlying file system error Returns NIL if named file does not exist. Other errors are turned into FileErrors. Returns NIL if named file does not exist. Other errors are turned into FileErrors. Client loses ownership of stream. RETURNS NIL if unknown RETURNS nullGMT if unknown Κ•NewlineDelimiter –(cedarcode) style™codešœ™Kšœ ΟeœC™NK™+K™,K™$—K˜šΟk ˜ Kšœžœ˜Kšœ žœžœ˜Kšžœžœžœ˜Kšœžœžœ˜—K˜KšΠln œžœž ˜šœžœžœ˜K˜KšœžœΟc$˜8Kš Οn œžœžœžœžœ˜Lš‘œžœžœ˜"K˜—š ‘œžœžœ&žœžœžœ˜WKšœM™Mšœ‘ œ$™MK™——š ‘ œžœžœžœžœ˜6šœ4™4K™——š ‘œžœžœžœžœ˜1K˜—š‘œžœžœžœžœžœžœ˜