<> <> <> <> DIRECTORY SaffronAG4Def, SaffronGenericDef, SaffronATDef; SaffronAG4Impl: CEDAR PROGRAM IMPORTS SaffronAG4Def EXPORTS SaffronAG4Def= BEGIN OPEN SaffronAG4Def, SaffronGenericDef, SaffronATDef; <> StatementifthenProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementifthenProdfoo]]; BuildStatementifthenProdNode: PUBLIC PROC[position: INT, length: INT, Exp: ExpNode, Statement: StatementNode] RETURNS[StatementNode] = BEGIN data: StatementifthenProdData _ NEW[StatementifthenProdDataBody_[ Exp, Statement]]; RETURN[NEW[StatementNodeBody_[position, length, StatementifthenProdProcs, data]]]; END; <> StatementifthenelseProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementifthenelseProdfoo]]; BuildStatementifthenelseProdNode: PUBLIC PROC[position: INT, length: INT, Exp: ExpNode, Statementthenpart: StatementNode, Statementelsepart: StatementNode] RETURNS[StatementNode] = BEGIN data: StatementifthenelseProdData _ NEW[StatementifthenelseProdDataBody_[ Exp, Statementthenpart, Statementelsepart]]; RETURN[NEW[StatementNodeBody_[position, length, StatementifthenelseProdProcs, data]]]; END; <> StatementselectProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementselectProdfoo]]; BuildStatementselectProdNode: PUBLIC PROC[position: INT, length: INT, SelectHead: SelectHeadNode, SelectStmtList: SelectStmtListNode, OptStatement: OptStatementNode] RETURNS[StatementNode] = BEGIN data: StatementselectProdData _ NEW[StatementselectProdDataBody_[ SelectHead, SelectStmtList, OptStatement]]; RETURN[NEW[StatementNodeBody_[position, length, StatementselectProdProcs, data]]]; END; <> StatementexpProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementexpProdfoo]]; BuildStatementexpProdNode: PUBLIC PROC[position: INT, length: INT, Exp: ExpNode] RETURNS[StatementNode] = BEGIN data: StatementexpProdData _ NEW[StatementexpProdDataBody_[ Exp]]; RETURN[NEW[StatementNodeBody_[position, length, StatementexpProdProcs, data]]]; END; <> StatementassignProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementassignProdfoo]]; BuildStatementassignProdNode: PUBLIC PROC[position: INT, length: INT, Explhs: ExpNode, Exprhs: ExpNode] RETURNS[StatementNode] = BEGIN data: StatementassignProdData _ NEW[StatementassignProdDataBody_[ Explhs, Exprhs]]; RETURN[NEW[StatementNodeBody_[position, length, StatementassignProdProcs, data]]]; END; <> StatementmultiassignProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementmultiassignProdfoo]]; BuildStatementmultiassignProdNode: PUBLIC PROC[position: INT, length: INT, ExpList: ExpListNode, Exp: ExpNode] RETURNS[StatementNode] = BEGIN data: StatementmultiassignProdData _ NEW[StatementmultiassignProdDataBody_[ ExpList, Exp]]; RETURN[NEW[StatementNodeBody_[position, length, StatementmultiassignProdProcs, data]]]; END; <> StatementblockProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementblockProdfoo]]; BuildStatementblockProdNode: PUBLIC PROC[position: INT, length: INT, Checked: CheckedNode, Block: BlockNode] RETURNS[StatementNode] = BEGIN data: StatementblockProdData _ NEW[StatementblockProdDataBody_[ Checked, Block]]; RETURN[NEW[StatementNodeBody_[position, length, StatementblockProdProcs, data]]]; END; <> StatementloopcontrolProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementloopcontrolProdfoo]]; BuildStatementloopcontrolProdNode: PUBLIC PROC[position: INT, length: INT, ForClause: ForClauseNode, DoTest: DoTestNode, Scope: ScopeNode, DoExit: DoExitNode] RETURNS[StatementNode] = BEGIN data: StatementloopcontrolProdData _ NEW[StatementloopcontrolProdDataBody_[ ForClause, DoTest, Scope, DoExit]]; RETURN[NEW[StatementNodeBody_[position, length, StatementloopcontrolProdProcs, data]]]; END; <> StatementexitProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementexitProdfoo]]; BuildStatementexitProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[StatementNode] = BEGIN RETURN[NEW[StatementNodeBody_[position, length, StatementexitProdProcs, NIL]]]; END; <> StatementloopProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementloopProdfoo]]; BuildStatementloopProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[StatementNode] = BEGIN RETURN[NEW[StatementNodeBody_[position, length, StatementloopProdProcs, NIL]]]; END; <> StatementgotoProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementgotoProdfoo]]; BuildStatementgotoProdNode: PUBLIC PROC[position: INT, length: INT, id: idNode] RETURNS[StatementNode] = BEGIN data: StatementgotoProdData _ NEW[StatementgotoProdDataBody_[ id]]; RETURN[NEW[StatementNodeBody_[position, length, StatementgotoProdProcs, data]]]; END; <> StatementreturnProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementreturnProdfoo]]; BuildStatementreturnProdNode: PUBLIC PROC[position: INT, length: INT, OptArgs: OptArgsNode] RETURNS[StatementNode] = BEGIN data: StatementreturnProdData _ NEW[StatementreturnProdDataBody_[ OptArgs]]; RETURN[NEW[StatementNodeBody_[position, length, StatementreturnProdProcs, data]]]; END; <> StatementtransferProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementtransferProdfoo]]; BuildStatementtransferProdNode: PUBLIC PROC[position: INT, length: INT, Transfer: TransferNode, Exp: ExpNode] RETURNS[StatementNode] = BEGIN data: StatementtransferProdData _ NEW[StatementtransferProdDataBody_[ Transfer, Exp]]; RETURN[NEW[StatementNodeBody_[position, length, StatementtransferProdProcs, data]]]; END; <> StatementfreeProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementfreeProdfoo]]; BuildStatementfreeProdNode: PUBLIC PROC[position: INT, length: INT, Free: FreeNode, Exp: ExpNode, Catch: CatchNode] RETURNS[StatementNode] = BEGIN data: StatementfreeProdData _ NEW[StatementfreeProdDataBody_[ Free, Exp, Catch]]; RETURN[NEW[StatementNodeBody_[position, length, StatementfreeProdProcs, data]]]; END; <> StatementwaitProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementwaitProdfoo]]; BuildStatementwaitProdNode: PUBLIC PROC[position: INT, length: INT, Exp: ExpNode] RETURNS[StatementNode] = BEGIN data: StatementwaitProdData _ NEW[StatementwaitProdDataBody_[ Exp]]; RETURN[NEW[StatementNodeBody_[position, length, StatementwaitProdProcs, data]]]; END; <> StatementerrorProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementerrorProdfoo]]; BuildStatementerrorProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[StatementNode] = BEGIN RETURN[NEW[StatementNodeBody_[position, length, StatementerrorProdProcs, NIL]]]; END; <> StatementstopProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementstopProdfoo]]; BuildStatementstopProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[StatementNode] = BEGIN RETURN[NEW[StatementNodeBody_[position, length, StatementstopProdProcs, NIL]]]; END; <> StatementnullProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementnullProdfoo]]; BuildStatementnullProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[StatementNode] = BEGIN RETURN[NEW[StatementNodeBody_[position, length, StatementnullProdProcs, NIL]]]; END; <> StatementresumeProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementresumeProdfoo]]; BuildStatementresumeProdNode: PUBLIC PROC[position: INT, length: INT, OptArgs: OptArgsNode] RETURNS[StatementNode] = BEGIN data: StatementresumeProdData _ NEW[StatementresumeProdDataBody_[ OptArgs]]; RETURN[NEW[StatementNodeBody_[position, length, StatementresumeProdProcs, data]]]; END; <> StatementrejectProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementrejectProdfoo]]; BuildStatementrejectProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[StatementNode] = BEGIN RETURN[NEW[StatementNodeBody_[position, length, StatementrejectProdProcs, NIL]]]; END; <> StatementcontinueProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementcontinueProdfoo]]; BuildStatementcontinueProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[StatementNode] = BEGIN RETURN[NEW[StatementNodeBody_[position, length, StatementcontinueProdProcs, NIL]]]; END; <> StatementretryProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementretryProdfoo]]; BuildStatementretryProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[StatementNode] = BEGIN RETURN[NEW[StatementNodeBody_[position, length, StatementretryProdProcs, NIL]]]; END; <> StatementgetstateProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementgetstateProdfoo]]; BuildStatementgetstateProdNode: PUBLIC PROC[position: INT, length: INT, Exp: ExpNode] RETURNS[StatementNode] = BEGIN data: StatementgetstateProdData _ NEW[StatementgetstateProdDataBody_[ Exp]]; RETURN[NEW[StatementNodeBody_[position, length, StatementgetstateProdProcs, data]]]; END; <> StatementsetstateProdProcs: PUBLIC StatementNodeProcs _ NEW[StatementNodeProcsBody _ [StatementsetstateProdfoo]]; BuildStatementsetstateProdNode: PUBLIC PROC[position: INT, length: INT, Exp: ExpNode] RETURNS[StatementNode] = BEGIN data: StatementsetstateProdData _ NEW[StatementsetstateProdDataBody_[ Exp]]; RETURN[NEW[StatementNodeBody_[position, length, StatementsetstateProdProcs, data]]]; END; <> OptStatementabsentProdProcs: PUBLIC OptStatementNodeProcs _ NEW[OptStatementNodeProcsBody _ [OptStatementabsentProdfoo]]; BuildOptStatementabsentProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[OptStatementNode] = BEGIN RETURN[NEW[OptStatementNodeBody_[position, length, OptStatementabsentProdProcs, NIL]]]; END; <> OptStatementpresentProdProcs: PUBLIC OptStatementNodeProcs _ NEW[OptStatementNodeProcsBody _ [OptStatementpresentProdfoo]]; BuildOptStatementpresentProdNode: PUBLIC PROC[position: INT, length: INT, Statement: StatementNode] RETURNS[OptStatementNode] = BEGIN data: OptStatementpresentProdData _ NEW[OptStatementpresentProdDataBody_[ Statement]]; RETURN[NEW[OptStatementNodeBody_[position, length, OptStatementpresentProdProcs, data]]]; END; <> SelectStmtListemptyProdProcs: PUBLIC SelectStmtListNodeProcs _ NEW[SelectStmtListNodeProcsBody _ [SelectStmtListemptyProdfoo]]; BuildSelectStmtListemptyProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[SelectStmtListNode] = BEGIN RETURN[NEW[SelectStmtListNodeBody_[position, length, SelectStmtListemptyProdProcs, NIL]]]; END; <> SelectStmtListmoreProdProcs: PUBLIC SelectStmtListNodeProcs _ NEW[SelectStmtListNodeProcsBody _ [SelectStmtListmoreProdfoo]]; BuildSelectStmtListmoreProdNode: PUBLIC PROC[position: INT, length: INT, SelectStmtList: SelectStmtListNode, SelectStmtItem: SelectStmtItemNode] RETURNS[SelectStmtListNode] = BEGIN data: SelectStmtListmoreProdData _ NEW[SelectStmtListmoreProdDataBody_[ SelectStmtList, SelectStmtItem]]; RETURN[NEW[SelectStmtListNodeBody_[position, length, SelectStmtListmoreProdProcs, data]]]; END; <> SelectStmtItemProdProcs: PUBLIC SelectStmtItemNodeProcs _ NEW[SelectStmtItemNodeProcsBody _ [SelectStmtItemProdfoo]]; BuildSelectStmtItemProdNode: PUBLIC PROC[position: INT, length: INT, SelectLabel: SelectLabelNode, Statement: StatementNode] RETURNS[SelectStmtItemNode] = BEGIN data: SelectStmtItemProdData _ NEW[SelectStmtItemProdDataBody_[ SelectLabel, Statement]]; RETURN[NEW[SelectStmtItemNodeBody_[position, length, SelectStmtItemProdProcs, data]]]; END; <> BlockProdProcs: PUBLIC BlockNodeProcs _ NEW[BlockNodeProcsBody _ [BlockProdfoo]]; BuildBlockProdNode: PUBLIC PROC[position: INT, length: INT, Scope: ScopeNode, ExitList: ExitListNode] RETURNS[BlockNode] = BEGIN data: BlockProdData _ NEW[BlockProdDataBody_[ Scope, ExitList]]; RETURN[NEW[BlockNodeBody_[position, length, BlockProdProcs, data]]]; END; <> ScopeProdProcs: PUBLIC ScopeNodeProcs _ NEW[ScopeNodeProcsBody _ [ScopeProdfoo, ScopeProdNewScope]]; BuildScopeProdNode: PUBLIC PROC[position: INT, length: INT, BindList: BindListNode, Catch: CatchNode, OptDecList: OptDecListNode, StatementList: StatementListNode] RETURNS[ScopeNode] = BEGIN data: ScopeProdData _ NEW[ScopeProdDataBody_[ BindList, Catch, OptDecList, StatementList]]; RETURN[NEW[ScopeNodeBody_[position, length, ScopeProdProcs, data]]]; END; <> OptDecListabsentProdProcs: PUBLIC OptDecListNodeProcs _ NEW[OptDecListNodeProcsBody _ [OptDecListabsentProdfoo, OptDecListabsentProdPreprocessDecls, OptDecListabsentProdProcessDecls]]; BuildOptDecListabsentProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[OptDecListNode] = BEGIN RETURN[NEW[OptDecListNodeBody_[position, length, OptDecListabsentProdProcs, NIL]]]; END; <> OptDecListpresentProdProcs: PUBLIC OptDecListNodeProcs _ NEW[OptDecListNodeProcsBody _ [OptDecListpresentProdfoo, OptDecListpresentProdPreprocessDecls, OptDecListpresentProdProcessDecls]]; BuildOptDecListpresentProdNode: PUBLIC PROC[position: INT, length: INT, DecList: DecListNode] RETURNS[OptDecListNode] = BEGIN data: OptDecListpresentProdData _ NEW[OptDecListpresentProdDataBody_[ DecList]]; RETURN[NEW[OptDecListNodeBody_[position, length, OptDecListpresentProdProcs, data]]]; END; <> StatementListemptyProdProcs: PUBLIC StatementListNodeProcs _ NEW[StatementListNodeProcsBody _ [StatementListemptyProdfoo]]; BuildStatementListemptyProdNode: PUBLIC PROC[position: INT, length: INT] RETURNS[StatementListNode] = BEGIN RETURN[NEW[StatementListNodeBody_[position, length, StatementListemptyProdProcs, NIL]]]; END; <> StatementListmoreProdProcs: PUBLIC StatementListNodeProcs _ NEW[StatementListNodeProcsBody _ [StatementListmoreProdfoo]]; BuildStatementListmoreProdNode: PUBLIC PROC[position: INT, length: INT, StatementList: StatementListNode, Statement: StatementNode] RETURNS[StatementListNode] = BEGIN data: StatementListmoreProdData _ NEW[StatementListmoreProdDataBody_[ StatementList, Statement]]; RETURN[NEW[StatementListNodeBody_[position, length, StatementListmoreProdProcs, data]]]; END; END..