GriffinRelation: DEFINITIONS = BEGIN AllPairProc: TYPE = PROC[leftPart, rightPart: CARDINAL]; Relation: TYPE = LONG POINTER TO RelationHead; RelationHead: TYPE = RECORD [first, last: LONG POINTER TO Pair]; Pair: TYPE = RECORD [link: LONG POINTER TO Pair, left, right: CARDINAL]; notFound: CARDINAL = 177777B; AddPair: PROC [relation: Relation, left, right: CARDINAL]; ForAllPairs: PROC [relation: Relation, Proc: AllPairProc]; Left: PROC [relation: Relation, right: CARDINAL] RETURNS [CARDINAL]; Right: PROC [relation: Relation, left: CARDINAL] RETURNS [CARDINAL]; CreateRelation: PROC RETURNS [Relation]; DestroyRelation: PROC [relation: Relation]; END. ΠGriffinRelation.mesa Copyright c 1985 by Xerox Corporation. All rights reserved. Created by: Maureen Stone, September 19, 1985 1:30:51 pm PDT Last Edited by: Ken Pier, October 18, 1985 10:16:36 am PDT ΚV˜code™Kšœ Οmœ1™