<> <> <> <> DIRECTORY Core; CoreRecordCellClass: CEDAR DEFINITIONS = BEGIN OPEN Core; <> <> <> <<1) For each instance the actualWire field must be isomorphic to the publicWire field of the cell type which is pointed to by the instance.>> <<2) The wires of each actualWire field must point to wires that are reachable from the internalWire field of the RecordCell.>> <<3) The publicWire of the CellType must point to wires reachable from the internalWire of the RecordCell.>> <> recordCellClass: CellClass; RecordCellType: TYPE = REF RecordCellTypeRec; RecordCellTypeRec: TYPE = RECORD [ internalWire: Wire, instances: InstanceList _ NIL]; Instance: TYPE = REF InstanceRec; InstanceList: TYPE = LIST OF Instance; InstanceRec: TYPE = RECORD [ name: ROPE _ NIL, actualWire: Wire, type: CellType, properties: Properties _ NIL]; PrintRecordCellType: PROC [recordCellType: RecordCellType, out: STREAM]; END.