PGACoordXlate:
CEDAR
DEFINITIONS
~ BEGIN
PGACoord: TYPE = RECORD[let: Letter, idx: Index];
Letter: TYPE = {a,b,c,d,e,f,g,h,j,k,l,m,n,p,q,r,s,t,u,v,w,x,y,z}; -- no i and 0
Index: TYPE = NAT[1..25];
SignalPins: TYPE = RECORD[nm: IO.ROPE, pins: LIST OF NAT];
RopeToPGACoord: PROC[rope: IO.ROPE] RETURNS [coord: PGACoord];
PGACoordToRope: PROC[coord: PGACoord] RETURNS [rope: IO.ROPE];
PinToPGACoord: PROC[key: ATOM, pin: NAT] RETURNS [coord: PGACoord];
PGACoordToPin: PROC[key: ATOM, coord: PGACoord] RETURNS [pin: NAT𡤀];
PGAFixedPins: PROC[key: ATOM] RETURNS [LIST OF SignalPins ← NIL];
END.