<> <> <> <> <> <> <> <> DIRECTORY Basics, ConstArith, YggEnvironment, YggLog; YggLogInline: CEDAR DEFINITIONS IMPORTS ConstArith = BEGIN Comparison: TYPE = Basics.Comparison; RecordID: TYPE = YggLog.RecordID; PageNumber: TYPE = YggEnvironment.PageNumber; WordNumber: TYPE = YggEnvironment.WordNumber; WordCount: TYPE = YggEnvironment.WordCount; <> Compare: PROC [a, b: RecordID] RETURNS [Comparison] = TRUSTED INLINE { RETURN ConstArith.Compare[a, b] }; Min: PROC [a, b: RecordID] RETURNS [RecordID] = TRUSTED INLINE { RETURN [IF Compare[a, b] = greater THEN b ELSE a]; }; Max: PROC [a, b: RecordID] RETURNS [RecordID] = TRUSTED INLINE { RETURN [IF Compare[a, b] = less THEN b ELSE a]; }; WordsFromSubtract: PROC [larger, smaller: RecordID] RETURNS [result: WordCount] = TRUSTED INLINE { RETURN [ConstArith.Sub[larger, smaller]]; }; AddLC: PROC [r: RecordID, words: LONG CARDINAL] RETURNS [RecordID] = TRUSTED INLINE { <> RETURN ConstArith.Add[r, ConstArith.FromCard[words]]; }; AddC: PROC [r: RecordID, words: CARDINAL] RETURNS [RecordID] = TRUSTED INLINE { <> RETURN [AddLC[r, LONG[words]]]; }; AddNumberAndCount: PROC [num: WordNumber, words: WordCount] RETURNS [WordNumber] = TRUSTED INLINE { <> RETURN ConstArith.Add[num, words]; }; SubNumberLessCount: PROC [num: WordNumber, words: WordCount] RETURNS [WordNumber] = TRUSTED INLINE { <> RETURN ConstArith.Sub[num, words]; }; RecordIDFromWordNumber: PROC [w: WordNumber] RETURNS [RecordID] = TRUSTED INLINE { RETURN LOOPHOLE[w] }; WordInPageFromRecordID: PROC [r: RecordID, wordsPerPage: CARD] RETURNS [CARD] = TRUSTED INLINE { RETURN ConstArith.ToCard[ConstArith.Mod[r, ConstArith.FromCard[wordsPerPage]]] }; END. CHANGE LOG Created by MBrown on September 21, 1982 2:45 pm Changed by MBrown on September 25, 1982 3:50 pm <> Changed by MBrown on October 4, 1982 10:19 pm <> Changed by MBrown on October 25, 1982 10:45 pm <> Changed by MBrown on November 9, 1982 3:01 pm < word stuff to AlpineInline.>> Changed by MBrown on January 30, 1984 10:11:20 am PST <> <> <> <> <> <<>>