<> <> <> <<>> <> <> <> <> <<(Added activeMessageSet and DeletedMessageSet to avoid recomputation)>> DIRECTORY DB USING [Entity, Relship], RefTab USING [Ref], Rope USING [ROPE]; WalnutDBInternal: CEDAR DEFINITIONS = BEGIN <> ROPE: TYPE = Rope.ROPE; Entity: TYPE = DB.Entity; Relship: TYPE = DB.Relship; <> activeMessageSet: READONLY DB.Entity; deletedMessageSet: READONLY DB.Entity; <> msgSetsTable: RefTab.Ref; <> ChangeCountInMsgSet: PROC[ms: Entity, inc: INT]; ChangeCountOfMsgs: PROC[delta: INT]; CarefullyApply: PROC[proc: PROC[]]; GetMsgDisplayInfo: PROC[m: Entity] RETURNS[hasBeenRead: BOOL, tocEntry: ROPE, startOfSubject: INT]; END.