DIRECTORY Asserting, BasicTime, Core, RedBlackTree, Rope, RoseBehavior, RosePrivates, RoseWireTypes, TimeStamp; RoseBindPrivate: CEDAR DEFINITIONS = BEGIN ROPE: TYPE = Rope.ROPE; VersionStamp: TYPE = TimeStamp.Stamp; NullVersionStamp: VersionStamp = TimeStamp.Null; BehaviorClassList: TYPE = LIST OF BehaviorClass; BehaviorClass: TYPE = REF BehaviorClassRec; BehaviorClassRec: TYPE = RECORD [ name: ROPE, moduleRoot: ModuleRoot _ NIL, pwpTime: BasicTime.GMT _ BasicTime.nullGMT, publicWirePrototype: Core.Wire _ NIL, detailsStamp: VersionStamp _ NullVersionStamp, detailsTime: BasicTime.GMT _ BasicTime.nullGMT, details: RoseBehavior.Details _ NIL, privateStamp: VersionStamp _ NullVersionStamp, privateTime: BasicTime.GMT _ BasicTime.nullGMT, private: RosePrivates.Privates _ NIL, publicWirePrototypeWiringIsFrom: Core.Wire _ NIL, wiring: RoseWireTypes.BehaviorClassWiring _ NIL, unusualDerivation: RECORD [details, private: BOOL _ FALSE] _ [], other: Asserting.Assertions _ NIL ]; ModuleRoot: TYPE = REF ModuleRootRec; ModuleRootRec: TYPE = RECORD [ name: ROPE, classes: RedBlackTree.Table--actually a REF table--, lastUpdate: BasicTime.GMT _ BasicTime.nullGMT ]; Fetch: PROC [name: ROPE] RETURNS [class: BehaviorClass]; EnsureBCParts: PROC [class: BehaviorClass, details, private, wiring: BOOL _ TRUE] RETURNS [goodDetails, goodPrivate: BOOL _ FALSE]; GetBehaviorClass: PROC [cellType: Core.CellType, details, private, wiring: BOOL _ TRUE] RETURNS [class: BehaviorClass, goodDetails, goodPrivate: BOOL _ FALSE]; BehaviorType: TYPE = REF BehaviorTypeRec; BehaviorTypeRec: TYPE = RECORD [ class: BehaviorClass, wiring: RoseWireTypes.BehaviorTypeWiring _ NIL]; GetBehaviorType: PROC [cellType: Core.CellType] RETURNS [behaviorType: BehaviorType]; EnsureModuleRoot: PROC [name: ROPE] RETURNS [mr: ModuleRoot]; EnumerateModuleClasses: PROC [mr: ModuleRoot, to: PROC [BehaviorClass]]; END. ξRoseBindPrivate.mesa Copyright c 1985 by Xerox Corporation. All rights reserved. Barth, September 26, 1985 11:55:39 am PDT Spreitzer, September 29, 1985 12:47:31 pm PDT Time at which publicWirePrototype is filled in. Supplied by the designer's implementation module (FooRoseDetails) Supplied by the private implementation module (FooRosePrivate) Put there by either the translator or simulator, as needed Not derived in the standard way (from RosePrivate and RoseDetails from RoseDefs). Κ¨– "cedar" style˜codešœ™Kšœ Οmœ1™™>—Kšœ-žœ˜1šœ,žœ˜0K™:—šœžœžœžœ˜@K™Q—Kšœž˜!K˜—K˜Kšœ žœžœ˜%šœžœžœ˜Kšœžœ˜ KšœΟcœ˜4Kšœžœ˜-K˜—K˜KšΟnœžœžœžœ˜8K˜Kš‘ œžœ2žœžœžœžœžœ˜ƒK˜Kš‘œžœ5žœžœžœ2žœžœ˜ŸK˜Kšœžœžœ˜)šœžœžœ˜ K˜Kšœ+žœ˜0—K˜Kš‘œžœžœ˜UK˜Kš‘œžœžœžœ˜=K˜Kš‘œžœžœ˜HK˜Kšžœ˜—…—n