DIRECTORY SiroccoAG1Def, SiroccoCGDef, SiroccoATDef; SiroccoAG1Impl: CEDAR PROGRAM IMPORTS SiroccoAG1Def EXPORTS SiroccoAG1Def= BEGIN OPEN SiroccoAG1Def, SiroccoCGDef, SiroccoATDef; ProgramexportProdProcs: PUBLIC ProgramNodeProcs _ NEW[ProgramNodeProcsBody _ [ProgramexportProdMakeSymbolTable]]; BuildProgramexportProdNode: PUBLIC PROC[position: INT, length: INT, idexport: idNode, decimalpgm: decimalNode, decimalversion: decimalNode, ImportList: ImportListNode, DeclarationList: DeclarationListNode] RETURNS[ProgramNode] = BEGIN data: ProgramexportProdData _ NEW[ProgramexportProdDataBody _ [ idexport, decimalpgm, decimalversion, ImportList, DeclarationList]]; RETURN[NEW[ProgramNodeBody_[position, length, ProgramexportProdProcs, data]]]; END; ImportListemptyProdProcs: PUBLIC ImportListNodeProcs _ NEW[ImportListNodeProcsBody _ [ImportListemptyProdBuildRIB]]; BuildImportListemptyProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[ImportListNode] = BEGIN RETURN[NEW[ImportListNodeBody_[position, length, ImportListemptyProdProcs, NIL]]]; END; ImportListmoreProdProcs: PUBLIC ImportListNodeProcs _ NEW[ImportListNodeProcsBody _ [ImportListmoreProdBuildRIB]]; BuildImportListmoreProdNode: PUBLIC PROC[position: INT, length: INT, ImportList: ImportListNode, Import: ImportNode] RETURNS[ImportListNode] = BEGIN data: ImportListmoreProdData _ NEW[ImportListmoreProdDataBody _ [ ImportList, Import]]; RETURN[NEW[ImportListNodeBody_[position, length, ImportListmoreProdProcs, data]]]; END; ImportinterfaceProdProcs: PUBLIC ImportNodeProcs _ NEW[ImportNodeProcsBody _ [ImportinterfaceProdBuildScope]]; BuildImportinterfaceProdNode: PUBLIC PROC[position: INT, length: INT, idinterface: idNode, decimalpgm: decimalNode, decimalversion: decimalNode] RETURNS[ImportNode] = BEGIN data: ImportinterfaceProdData _ NEW[ImportinterfaceProdDataBody _ [ idinterface, decimalpgm, decimalversion]]; RETURN[NEW[ImportNodeBody_[position, length, ImportinterfaceProdProcs, data]]]; END; DeclarationListemptyProdProcs: PUBLIC DeclarationListNodeProcs _ NEW[DeclarationListNodeProcsBody _ [DeclarationListemptyProdBuildItemTable, DeclarationListemptyProdBuildTypeGraph]]; BuildDeclarationListemptyProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[DeclarationListNode] = BEGIN RETURN[NEW[DeclarationListNodeBody_[position, length, DeclarationListemptyProdProcs, NIL]]]; END; DeclarationListmoreProdProcs: PUBLIC DeclarationListNodeProcs _ NEW[DeclarationListNodeProcsBody _ [DeclarationListmoreProdBuildItemTable, DeclarationListmoreProdBuildTypeGraph]]; BuildDeclarationListmoreProdNode: PUBLIC PROC[position: INT, length: INT, DeclarationList: DeclarationListNode, Declaration: DeclarationNode] RETURNS[DeclarationListNode] = BEGIN data: DeclarationListmoreProdData _ NEW[DeclarationListmoreProdDataBody _ [ DeclarationList, Declaration]]; RETURN[NEW[DeclarationListNodeBody_[position, length, DeclarationListmoreProdProcs, data]]]; END; DeclarationtypeProdProcs: PUBLIC DeclarationNodeProcs _ NEW[DeclarationNodeProcsBody _ [DeclarationtypeProdBuildItem, DeclarationtypeProdBuildNamedItem]]; BuildDeclarationtypeProdNode: PUBLIC PROC[position: INT, length: INT, id: idNode, Type: TypeNode] RETURNS[DeclarationNode] = BEGIN data: DeclarationtypeProdData _ NEW[DeclarationtypeProdDataBody _ [ id, Type]]; RETURN[NEW[DeclarationNodeBody_[position, length, DeclarationtypeProdProcs, data]]]; END; DeclarationconstantProdProcs: PUBLIC DeclarationNodeProcs _ NEW[DeclarationNodeProcsBody _ [DeclarationconstantProdBuildItem, DeclarationconstantProdBuildNamedItem]]; BuildDeclarationconstantProdNode: PUBLIC PROC[position: INT, length: INT, id: idNode, Type: TypeNode, Constant: ConstantNode] RETURNS[DeclarationNode] = BEGIN data: DeclarationconstantProdData _ NEW[DeclarationconstantProdDataBody _ [ id, Type, Constant]]; RETURN[NEW[DeclarationNodeBody_[position, length, DeclarationconstantProdProcs, data]]]; END; TypealiasProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [TypealiasProdBuildTGN]]; BuildTypealiasProdNode: PUBLIC PROC[position: INT, length: INT, id: idNode] RETURNS[TypeNode] = BEGIN data: TypealiasProdData _ NEW[TypealiasProdDataBody _ [ id]]; RETURN[NEW[TypeNodeBody_[position, length, TypealiasProdProcs, data]]]; END; TypeimportProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [TypeimportProdBuildTGN]]; BuildTypeimportProdNode: PUBLIC PROC[position: INT, length: INT, idinterface: idNode, iditem: idNode] RETURNS[TypeNode] = BEGIN data: TypeimportProdData _ NEW[TypeimportProdDataBody _ [ idinterface, iditem]]; RETURN[NEW[TypeNodeBody_[position, length, TypeimportProdProcs, data]]]; END; TypeboolProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [TypeboolProdBuildTGN]]; BuildTypeboolProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[TypeNode] = BEGIN RETURN[NEW[TypeNodeBody_[position, length, TypeboolProdProcs, NIL]]]; END; Typecard16ProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [Typecard16ProdBuildTGN]]; BuildTypecard16ProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[TypeNode] = BEGIN RETURN[NEW[TypeNodeBody_[position, length, Typecard16ProdProcs, NIL]]]; END; Typecard32ProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [Typecard32ProdBuildTGN]]; BuildTypecard32ProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[TypeNode] = BEGIN RETURN[NEW[TypeNodeBody_[position, length, Typecard32ProdProcs, NIL]]]; END; Typeint16ProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [Typeint16ProdBuildTGN]]; BuildTypeint16ProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[TypeNode] = BEGIN RETURN[NEW[TypeNodeBody_[position, length, Typeint16ProdProcs, NIL]]]; END; Typeint32ProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [Typeint32ProdBuildTGN]]; BuildTypeint32ProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[TypeNode] = BEGIN RETURN[NEW[TypeNodeBody_[position, length, Typeint32ProdProcs, NIL]]]; END; TypesinkProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [TypesinkProdBuildTGN]]; BuildTypesinkProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[TypeNode] = BEGIN RETURN[NEW[TypeNodeBody_[position, length, TypesinkProdProcs, NIL]]]; END; TypesourceProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [TypesourceProdBuildTGN]]; BuildTypesourceProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[TypeNode] = BEGIN RETURN[NEW[TypeNodeBody_[position, length, TypesourceProdProcs, NIL]]]; END; TypestringProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [TypestringProdBuildTGN]]; BuildTypestringProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[TypeNode] = BEGIN RETURN[NEW[TypeNodeBody_[position, length, TypestringProdProcs, NIL]]]; END; TypeunspecProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [TypeunspecProdBuildTGN]]; BuildTypeunspecProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[TypeNode] = BEGIN RETURN[NEW[TypeNodeBody_[position, length, TypeunspecProdProcs, NIL]]]; END; TypearrayProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [TypearrayProdBuildTGN]]; BuildTypearrayProdNode: PUBLIC PROC[position: INT, length: INT, Constant: ConstantNode, Type: TypeNode] RETURNS[TypeNode] = BEGIN data: TypearrayProdData _ NEW[TypearrayProdDataBody _ [ Constant, Type]]; RETURN[NEW[TypeNodeBody_[position, length, TypearrayProdProcs, data]]]; END; TypeseqProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [TypeseqProdBuildTGN]]; BuildTypeseqProdNode: PUBLIC PROC[position: INT, length: INT, Constant: ConstantNode, Type: TypeNode] RETURNS[TypeNode] = BEGIN data: TypeseqProdData _ NEW[TypeseqProdDataBody _ [ Constant, Type]]; RETURN[NEW[TypeNodeBody_[position, length, TypeseqProdProcs, data]]]; END; TypeenumProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [TypeenumProdBuildTGN]]; BuildTypeenumProdNode: PUBLIC PROC[position: INT, length: INT, Enumeration: EnumerationNode] RETURNS[TypeNode] = BEGIN data: TypeenumProdData _ NEW[TypeenumProdDataBody _ [ Enumeration]]; RETURN[NEW[TypeNodeBody_[position, length, TypeenumProdProcs, data]]]; END; TypeerrorProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [TypeerrorProdBuildTGN]]; BuildTypeerrorProdNode: PUBLIC PROC[position: INT, length: INT, FieldList: FieldListNode] RETURNS[TypeNode] = BEGIN data: TypeerrorProdData _ NEW[TypeerrorProdDataBody _ [ FieldList]]; RETURN[NEW[TypeNodeBody_[position, length, TypeerrorProdProcs, data]]]; END; TyperecordProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [TyperecordProdBuildTGN]]; BuildTyperecordProdNode: PUBLIC PROC[position: INT, length: INT, FieldList: FieldListNode] RETURNS[TypeNode] = BEGIN data: TyperecordProdData _ NEW[TyperecordProdDataBody _ [ FieldList]]; RETURN[NEW[TypeNodeBody_[position, length, TyperecordProdProcs, data]]]; END; TypenullProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [TypenullProdBuildTGN]]; BuildTypenullProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[TypeNode] = BEGIN RETURN[NEW[TypeNodeBody_[position, length, TypenullProdProcs, NIL]]]; END; TypeprocProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [TypeprocProdBuildTGN]]; BuildTypeprocProdNode: PUBLIC PROC[position: INT, length: INT, FieldListarg: FieldListNode, FieldListres: FieldListNode, NameList: NameListNode] RETURNS[TypeNode] = BEGIN data: TypeprocProdData _ NEW[TypeprocProdDataBody _ [ FieldListarg, FieldListres, NameList]]; RETURN[NEW[TypeNodeBody_[position, length, TypeprocProdProcs, data]]]; END; TypechoiceProdProcs: PUBLIC TypeNodeProcs _ NEW[TypeNodeProcsBody _ [TypechoiceProdBuildTGN]]; BuildTypechoiceProdNode: PUBLIC PROC[position: INT, length: INT, Type: TypeNode, Union: UnionNode] RETURNS[TypeNode] = BEGIN data: TypechoiceProdData _ NEW[TypechoiceProdDataBody _ [ Type, Union]]; RETURN[NEW[TypeNodeBody_[position, length, TypechoiceProdProcs, data]]]; END; END.. ‚SiroccoAG1Impl.mesa Copyright Ó 1987 by Xerox Corporation. All rights reserved. Generated by BJackson.pa at August 26, 1987 3:38:06 pm PDT using ThreeCasabaFour [1.2] of June 1, 1987 6:00:00 pm PDT ProgramexportProd ImportListemptyProd ImportListmoreProd ImportinterfaceProd DeclarationListemptyProd DeclarationListmoreProd DeclarationtypeProd DeclarationconstantProd TypealiasProd TypeimportProd TypeboolProd Typecard16Prod Typecard32Prod Typeint16Prod Typeint32Prod TypesinkProd TypesourceProd TypestringProd TypeunspecProd TypearrayProd TypeseqProd TypeenumProd TypeerrorProd TyperecordProd TypenullProd TypeprocProd TypechoiceProd Ê E˜šœ™Jšœ<™˜HJšœ˜——J˜J˜Jšœ ™ J˜šžœœ˜)Jšœ-˜0—J˜š žœœœ œ œ˜>šœ ˜Jš˜Jšœœ4œ˜EJšœ˜——J˜J˜Jšœ™J˜šžœœ˜+Jšœ/˜2—J˜š žœœœ œ œ˜@šœ ˜Jš˜Jšœœ6œ˜GJšœ˜——J˜J˜Jšœ™J˜šžœœ˜+Jšœ/˜2—J˜š žœœœ œ œ˜@šœ ˜Jš˜Jšœœ6œ˜GJšœ˜——J˜J˜Jšœ ™ J˜šžœœ˜*Jšœ.˜1—J˜š žœœœ œ œ˜?šœ ˜Jš˜Jšœœ5œ˜FJšœ˜——J˜J˜Jšœ ™ J˜šžœœ˜*Jšœ.˜1—J˜š žœœœ œ œ˜?šœ ˜Jš˜Jšœœ5œ˜FJšœ˜——J˜J˜Jšœ ™ J˜šžœœ˜)Jšœ-˜0—J˜š žœœœ œ œ˜>šœ ˜Jš˜Jšœœ4œ˜EJšœ˜——J˜J˜Jšœ™J˜šžœœ˜+Jšœ/˜2—J˜š žœœœ œ œ˜@šœ ˜Jš˜Jšœœ6œ˜GJšœ˜——J˜J˜Jšœ™J˜šžœœ˜+Jšœ/˜2—J˜š žœœœ œ œ˜@šœ ˜Jš˜Jšœœ6œ˜GJšœ˜——J˜J˜Jšœ™J˜šžœœ˜+Jšœ/˜2—J˜š žœœœ œ œ˜@šœ ˜Jš˜Jšœœ6œ˜GJšœ˜——J˜J˜Jšœ ™ J˜šžœœ˜*Jšœ.˜1—J˜šžœœœ œ œžœžœ ˜gšœ ˜Jš˜˜Jšœ˜J˜—Jšœœ=˜GJšœ˜——J˜J˜Jšœ ™ J˜šžœœ˜(Jšœ,˜/—J˜šžœœœ œ œžœžœ ˜ešœ ˜Jš˜˜Jšœ˜J˜—Jšœœ;˜EJšœ˜——J˜J˜Jšœ ™ J˜šžœœ˜)Jšœ-˜0—J˜š žœœœ œ œž œ˜\šœ ˜Jš˜˜Jšœ˜J˜—Jšœœ<˜FJšœ˜——J˜J˜Jšœ ™ J˜šžœœ˜*Jšœ.˜1—J˜š žœœœ œ œž œ˜Yšœ ˜Jš˜˜Jšœ˜J˜ —Jšœœ=˜GJšœ˜——J˜J˜Jšœ™J˜šžœœ˜+Jšœ/˜2—J˜š žœœœ œ œž œ˜Zšœ ˜Jš˜˜Jšœ˜J˜ —Jšœœ>˜HJšœ˜——J˜J˜Jšœ ™ J˜šžœœ˜)Jšœ-˜0—J˜š žœœœ œ œ˜>šœ ˜Jš˜Jšœœ4œ˜EJšœ˜——J˜J˜Jšœ ™ J˜šžœœ˜)Jšœ-˜0—J˜šžœœœ œ œž œž œžœ˜šœ ˜Jš˜˜Jšœ˜J˜'—Jšœœ<˜FJšœ˜——J˜J˜Jšœ™J˜šžœœ˜+Jšœ/˜2—J˜šžœœœ œ œžœ žœ ˜bšœ ˜Jš˜˜Jšœ˜J˜—Jšœœ>˜HJšœ˜——J˜Jšœ˜J˜—…—&Þ6¥