CoreBlock.mesa
Created by Don Curry, February 1, 1986 2:43:22 pm PST
Edited by Don Curry, July 14, 1986 2:10:06 pm PDT
sides: ATOM; -- CoreProperty of REF Sides
Sides: TYPE = MACHINE DEPENDENT {none(0), bottom(1), right(2), top(4), left(8), all(15)};
OtherSide: PROC[side: Sides] RETURNS[Sides];
AddSide: PROC[new, old: Sides] RETURNS[Sides];
DelSide: PROC[new, old: Sides] RETURNS[Sides];
OnSide: PROC[new, old: Sides] RETURNS[BOOL];
GetInstSideLoc:
PROC[ob:
CD.Object, inst:
CD.Instance]
RETURNS [side: Sides, loc: INT];
MarkSides: PROC[cell: Core.CellType, cap: Sides ← none];
MergeSides: PROC[cell: Core.CellType];
GetCellSide: PROC[cell: Core.CellType] RETURNS[side: Sides];
PutCellSide: PROC[cell: Core.CellType, side: Sides];
GetWireSide: PROC[wire: Core.Wire] RETURNS[side: Sides];
PutWireSide: PROC[wire: Core.Wire, side: Sides];
AddWireSide: PROC[wire: Core.Wire, side: Sides] RETURNS[sameWire: Core.Wire];
DelWireSide: PROC[wire: Core.Wire, side: Sides] RETURNS[sameWire: Core.Wire];
AbutCellInstances:
PROC[
name: Core.ROPE,
first: Sides,
instances: CoreClasses.CellInstances]
RETURNS [cellType: Core.CellType];
AbutCellList:
PROC[
name: Core.ROPE,
first: Sides,
cellTypes:
LIST
OF Core.CellType]
RETURNS [cellType: Core.CellType];
END.