<> <> <> DIRECTORY MBQueue USING [ Queue ], Rope USING [ ROPE ], ; ScriptedDocs: CEDAR DEFINITIONS = { <> <<>> ScriptList: TYPE ~ LIST OF Script; Script: TYPE ~ REF ScriptBody; ScriptBody: TYPE ~ RECORD [ sid: ScriptUID _ "", -- a unique id for the LoganBerry package firstEntry: EntryID _ NIL, sName: Name _ "", -- a human-sensible name sDesc: Desc _ "", -- a human-sensible description <> sCreateInfo: CreateInfo _ NIL, <> numEntries: INT _ 0, <> startingFile: FileID, <> <> edited: BOOL _ FALSE -- TRUE iff this script descriptor needs to be written to the DB ]; ScriptUID: TYPE = Rope.ROPE; ScriptID: TYPE ~ REF ScriptIDBody; ScriptIDBody: TYPE ~ RECORD [ sid: ScriptUID _ "", sref: Script _ NIL ]; Name: TYPE ~ Rope.ROPE; Desc: TYPE ~ Rope.ROPE; CreateInfo: TYPE ~ REF CreateInfoBody; CreateInfoBody: TYPE ~ RECORD [ creator: Rope.ROPE _ "", creation: BasicTime.GMT _ BasicTime.nullGMT ]; EntryList: TYPE ~ LIST OF ScriptEntry; ScriptEntry: TYPE ~ REF ScriptEntryBody; <> ScriptEntryBody: TYPE ~ RECORD [ eid: EntryUID _ "", -- a unique id for the LoganBerry package scriptHeader: ScriptID _ "", -- reference to the containing script file: FileID _ NIL, -- the containing file internal: BOOLEAN _ FALSE, <> class: DocClass _ $Tioga, classData: ClassData _ NIL, <> chars: CharRange _ NIL, <> action: Action _ NIL, pauseBefore: INT _ 0, -- in msec (is sec more reasonable?) pauseAfter: INT _ 0, -- ditto nextEntries: NextEntryList _ NIL, eName: Name _ "", -- a human-sensible name eDesc: Desc _ "", -- a human-sensible description <> eCreateInfo: CreateInfo _ NIL, <> edited: BOOL _ FALSE -- TRUE iff this entry needs to be written to the DB ]; EntryUID: TYPE = Rope.ROPE; EntryIDList: TYPE ~ LIST OF EntryID; EntryID: TYPE ~ REF EntryIDBody; EntryIDBody: TYPE ~ RECORD [ eid: EntryUID _ "", <> eref: ScriptEntry _ NIL ]; Action: TYPE = Rope.ROPE; CharRange: TYPE ~ REF CharRangeBody; CharRangeBody: TYPE ~ RECORD [ start: INT _ 0, len: INT _ 0 ]; FileID: TYPE = REF FileIDBody; FileIDBody: TYPE ~ RECORD [ name: Rope.ROPE _ "", createTime: BasicTime.GMT _ BasicTime.nullGMT ]; NextEntryList: TYPE ~ LIST OF NextEntry; NextEntry: TYPE ~ REF NextEntryBody; NextEntryBody: TYPE ~ RECORD [ cond: Rope.ROPE _ "", entry: EntryID _ NIL ]; <