<<>> <> <> <> <> <> DIRECTORY CirioTypes USING[BasicTypeInfo, CompilerContext, Node, Type]; RefTypes: CEDAR DEFINITIONS = BEGIN CC: TYPE = CirioTypes.CompilerContext; Type: TYPE = CirioTypes.Type; Node: TYPE = CirioTypes.Node; BasicTypeInfo: TYPE = CirioTypes.BasicTypeInfo; <> <<>> <.>> <<>> <<>> <> <<>> <> <<>> <> <<>> CreateRefAnyType: PROC[cc: CC, bti: BasicTypeInfo] RETURNS[Type]; <> <> CreateRefType: PROC[cc: CC, bti: BasicTypeInfo] RETURNS[Type]; <> <> <> <<>> SetReferent: PROC [refType, clientTargetType: Type, codeForClientTargetType: INT, cc: CC]; CreateNilRefType: PROC[cc: CC] RETURNS[Type]; <> <> RefNodeInfo: TYPE = REF RefNodeInfoBody; RefNodeInfoBody: TYPE = RECORD[ clientTargetType: Type, codeForClientTargetType: INT, indirectToClientTarget: Node, data: REF ANY]; CreateRefNode: PROC[type: Type, info: RefNodeInfo, cc: CC] RETURNS[Node]; <> <<>> CreateNilRefNode: PROC[cc: CC] RETURNS[Node]; <> END..