-- SaffronAddToFieldListImpl.mesa -- Copyright Ó 1987 by Xerox Corporation. All rights reserved. -- Generated by Rauen.pa at September 1, 1988 6:29:56 pm PDT -- using ThreeCasabaFour [1.2] of June 1, 1987 6:00:00 pm PDT DIRECTORY SaffronAG6cDef, ThreeC4Support, SaffronBaseDef, SaffronATDef; SaffronAddToFieldListImpl: CEDAR PROGRAM IMPORTS ThreeC4Support, SaffronBaseDef EXPORTS SaffronAG6cDef= BEGIN OPEN SaffronAG6cDef, ThreeC4Support, SaffronBaseDef, SaffronATDef; TypeListmanyProdAddToFieldList: PUBLIC PROC[ref: REF ANY, localContext: LocalContextNode, fieldList: FieldListNode, paintRecords: BOOLEAN, cs: CompilerStateNode] RETURNS[temp0: LocalContextNode, temp1: FieldListNode] = BEGIN tree: TypeListNode_ NARROW[ref]; BEGIN ENABLE ThreeC4Support.GetSourceInfo => RESUME[tree.position, tree.length]; treeData: TypeListmanyProdData _ NARROW[tree.data]; BEGIN localContext1: LocalContextNode; fieldList1: FieldListNode; [localContext1, fieldList1] _ treeData.TypeListhead.procs.AddToFieldList[treeData.TypeListhead, localContext, fieldList, paintRecords, cs]; [temp0, temp1] _ treeData.TypeListtail.procs.AddToFieldList[treeData.TypeListtail, localContext1, fieldList1, paintRecords, cs]; END; END END; TypeListoneProdAddToFieldList: PUBLIC PROC[ref: REF ANY, localContext: LocalContextNode, fieldList: FieldListNode, paintRecords: BOOLEAN, cs: CompilerStateNode] RETURNS[temp0: LocalContextNode, temp1: FieldListNode] = BEGIN tree: TypeListNode_ NARROW[ref]; BEGIN ENABLE ThreeC4Support.GetSourceInfo => RESUME[tree.position, tree.length]; treeData: TypeListoneProdData _ NARROW[tree.data]; [temp0, temp1] _ treeData.TypeItem.procs.AddToFieldList[treeData.TypeItem, localContext, fieldList, paintRecords, cs]; END END; TypeItemProdAddToFieldList: PUBLIC PROC[ref: REF ANY, localContext: LocalContextNode, fieldList: FieldListNode, paintRecords: BOOLEAN, cs: CompilerStateNode] RETURNS[temp0: LocalContextNode, temp1: FieldListNode] = BEGIN tree: TypeItemNode_ NARROW[ref]; BEGIN ENABLE ThreeC4Support.GetSourceInfo => RESUME[tree.position, tree.length]; treeData: TypeItemProdData _ NARROW[tree.data]; BEGIN fieldList1: FieldListNode; field: FieldNode; localContext1: LocalContextNode; tgn: TypeGraphNodeNode; defaultExp: DefaultExpNode; defaultExp _ treeData.Default.procs.GetDefaultExpVal[treeData.Default]; [localContext1, tgn] _ treeData.TypeExp.procs.MakeType[treeData.TypeExp, localContext, paintRecords, cs]; field _ CreateUnnamedField[tgn, defaultExp]; fieldList1 _ AppendFieldToFieldList[fieldList, field]; temp1 _ fieldList1; temp0 _ localContext1; END; END END; END..