DIRECTORY RoseTypes; RoseSets: CEDAR DEFINITIONS = { OPEN RoseTypes; Element: TYPE = REF ANY; Set: TYPE = REF SetRep; SetRep: TYPE = RECORD [ class: Class, instanceData: REF ANY]; Class: TYPE = RECORD [ Enumerate: PROC [set: Set, to: Consumer], TestMembership: PROC [set: Set, elt: Element] ]; Consumer: TYPE = RECORD [ data: REF ANY, consume: PROC [data: REF ANY, elt: Element] ]; CellsOfType: PROC [pattern: ROPE, sim: Simulation _ NIL] RETURNS [Set]; CellsOfName: PROC [pattern: ROPE, sim: Simulation _ NIL] RETURNS [Set]; ChildCells: PROC [s: Set, namePattern: ROPE _ NIL] RETURNS [Set]; ParentCells: PROC [s: Set, namePattern: ROPE _ NIL] RETURNS [Set]; InterfaceNodes: PROC [s: Set] RETURNS [Set]; InternalNodes: PROC [s: Set] RETURNS [Set]; ContainingCells: PROC [s: Set] RETURNS [Set]; Intersect: PROC [a, b: Set] RETURNS [Set]; Union: PROC [a, b: Set] RETURNS [Set]; Difference: PROC [a, b: Set] RETURNS [Set]; SymmetricDifference: PROC [a, b: Set] RETURNS [Set]; EnumerateWithoutDuplicates: PROC [s: Set, to: Consumer]; }. LRoseSets.Mesa Last Edited by: Spreitzer, May 16, 1985 3:34:52 pm PDT Κ– "cedar" style˜Icode™ J™6K˜KšΟk œ ˜K˜šΠbxœœ œ˜Kšœ ˜K˜Kšœ œœœ˜K˜Kšœœœ˜šœœœ˜K˜ Kšœœœ˜—K˜šœœœ˜KšΟn œœ˜)KšŸœœ˜-K˜—K˜šœ œœ˜Kšœœœ˜Kšœ œœœ˜+K˜—K˜Kš Ÿ œœ œœœ˜GKš Ÿ œœ œœœ˜GKš Ÿ œœœœœ˜AKš Ÿ œœœœœ˜BK˜KšŸœœ œ˜,KšŸ œœ œ˜+KšŸœœ œ˜-K˜KšŸ œœ œ˜*KšŸœœ œ˜&KšŸ œœ œ˜+KšŸœœ œ˜4K˜KšŸœœ˜8K˜K˜——…—p