<> <> <> <> DIRECTORY CD, CDDirectory, Rope; CDExtras: CEDAR DEFINITIONS = BEGIN <> <> CreateDummyObject: PROC[design: CD.Design] RETURNS [CD.Object]; <<--create a dummy cell object which contains the whole design.>> <<--On future changes of the design, the dummy object may or may not>> <<--get obsolete.>> <<--the cell object is NOT put into any cell library>> EnumerateChildrenObjects: PROC [me: CD.Object, p: CDDirectory.EnumerateObjectsProc, x: REF]; <<--enumerate me and its children objects>> EnumerateDesignObjects: PROC [design: CD.Design, p: CDDirectory.EnumerateObjectsProc, x: REF]; <<--enumerate all objects in directory of design>> PopToTopLevel: PROC [design: CD.Design]; <<--if "design" is pushed in, it will be popped out, either by flushing, >> <<--replacing cells or creating new cells>> Cellize: PROC [design: CD.Design, name: Rope.ROPE_NIL] RETURNS [cell: CD.Object_NIL, pos: CD.Position]; <<--makes a single "cell" of of the "design", removes all instances; >> <<--pos: if "cell" is included at position "pos" in an empty design we would get "design" again>> <<--if "design" is pushed in, it will be popped out, either by flushing, >> <<--replacing cells or creating new cells>> GetTechnology: PROC [name: Rope.ROPE] RETURNS [CD.Technology]; <<--far more friendly version of CD.GetTechnology>> <<--NIL if not found>> END.