SaffronAG3Impl.mesa
Copyright Ó 1987 by Xerox Corporation. All rights reserved.
Generated by BJackson.pa at April 27, 1987 10:51:14 pm PDT
using ThreeCasabaFour [1.1] of April 14, 1987 6:34:07 pm PDT
DIRECTORY
SaffronAG3Def,
SaffronATDef;
SaffronAG3Impl: CEDAR PROGRAM IMPORTS SaffronAG3Def EXPORTS SaffronAG3Def=
BEGIN
OPEN SaffronAG3Def, SaffronATDef;
NewplainProd
NewplainProdProcs: PUBLIC NewNodeProcs ←
NEW[NewNodeProcsBody ← [NewplainProdfoo]];
BuildNewplainProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[NewNode] =
BEGIN
RETURN[NEW[NewNodeBody←[position, length, NewplainProdProcs, NIL]]];
END;
NewzonedProd
NewzonedProdProcs: PUBLIC NewNodeProcs ←
NEW[NewNodeProcsBody ← [NewzonedProdfoo]];
BuildNewzonedProdNode: PUBLIC PROC[position: INT, length: INT, Exp: ExpNode]
RETURNS[NewNode] =
BEGIN
data: NewzonedProdData ←
NEW[NewzonedProdDataBody←[
Exp]];
RETURN[NEW[NewNodeBody←[position, length, NewzonedProdProcs, data]]];
END;
ConsplainProd
ConsplainProdProcs: PUBLIC ConsNodeProcs ←
NEW[ConsNodeProcsBody ← [ConsplainProdfoo]];
BuildConsplainProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[ConsNode] =
BEGIN
RETURN[NEW[ConsNodeBody←[position, length, ConsplainProdProcs, NIL]]];
END;
ConszonedProd
ConszonedProdProcs: PUBLIC ConsNodeProcs ←
NEW[ConsNodeProcsBody ← [ConszonedProdfoo]];
BuildConszonedProdNode: PUBLIC PROC[position: INT, length: INT, Exp: ExpNode]
RETURNS[ConsNode] =
BEGIN
data: ConszonedProdData ←
NEW[ConszonedProdDataBody←[
Exp]];
RETURN[NEW[ConsNodeBody←[position, length, ConszonedProdProcs, data]]];
END;
ListConsplainProd
ListConsplainProdProcs: PUBLIC ListConsNodeProcs ←
NEW[ListConsNodeProcsBody ← [ListConsplainProdfoo]];
BuildListConsplainProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[ListConsNode] =
BEGIN
RETURN[NEW[ListConsNodeBody←[position, length, ListConsplainProdProcs, NIL]]];
END;
ListConszonedProd
ListConszonedProdProcs: PUBLIC ListConsNodeProcs ←
NEW[ListConsNodeProcsBody ← [ListConszonedProdfoo]];
BuildListConszonedProdNode: PUBLIC PROC[position: INT, length: INT, Exp: ExpNode]
RETURNS[ListConsNode] =
BEGIN
data: ListConszonedProdData ←
NEW[ListConszonedProdDataBody←[
Exp]];
RETURN[NEW[ListConsNodeBody←[position, length, ListConszonedProdProcs, data]]];
END;
DescListexplicitlengthProd
DescListexplicitlengthProdProcs: PUBLIC DescListNodeProcs ←
NEW[DescListNodeProcsBody ← [DescListexplicitlengthProdfoo]];
BuildDescListexplicitlengthProdNode: PUBLIC PROC[position: INT, length: INT, Expbase: ExpNode, Explength: ExpNode, OptType: OptTypeNode]
RETURNS[DescListNode] =
BEGIN
data: DescListexplicitlengthProdData ←
NEW[DescListexplicitlengthProdDataBody←[
Expbase, Explength, OptType]];
RETURN[NEW[DescListNodeBody←[position, length, DescListexplicitlengthProdProcs, data]]];
END;
DescListdefaultlengthProd
DescListdefaultlengthProdProcs: PUBLIC DescListNodeProcs ←
NEW[DescListNodeProcsBody ← [DescListdefaultlengthProdfoo]];
BuildDescListdefaultlengthProdNode: PUBLIC PROC[position: INT, length: INT, Exp: ExpNode]
RETURNS[DescListNode] =
BEGIN
data: DescListdefaultlengthProdData ←
NEW[DescListdefaultlengthProdDataBody←[
Exp]];
RETURN[NEW[DescListNodeBody←[position, length, DescListdefaultlengthProdProcs, data]]];
END;
InitializationemptyProd
InitializationemptyProdProcs: PUBLIC InitializationNodeProcs ←
NEW[InitializationNodeProcsBody ← [InitializationemptyProdfoo, InitializationemptyProdMakeValue]];
BuildInitializationemptyProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[InitializationNode] =
BEGIN
RETURN[NEW[InitializationNodeBody←[position, length, InitializationemptyProdProcs, NIL]]];
END;
InitializationbindingProd
InitializationbindingProdProcs: PUBLIC InitializationNodeProcs ←
NEW[InitializationNodeProcsBody ← [InitializationbindingProdfoo, InitializationbindingProdMakeValue]];
BuildInitializationbindingProdNode: PUBLIC PROC[position: INT, length: INT, InitialValue: InitialValueNode]
RETURNS[InitializationNode] =
BEGIN
data: InitializationbindingProdData ←
NEW[InitializationbindingProdDataBody←[
InitialValue]];
RETURN[NEW[InitializationNodeBody←[position, length, InitializationbindingProdProcs, data]]];
END;
InitializationassignmentProd
InitializationassignmentProdProcs: PUBLIC InitializationNodeProcs ←
NEW[InitializationNodeProcsBody ← [InitializationassignmentProdfoo, InitializationassignmentProdMakeValue]];
BuildInitializationassignmentProdNode: PUBLIC PROC[position: INT, length: INT, InitialValue: InitialValueNode]
RETURNS[InitializationNode] =
BEGIN
data: InitializationassignmentProdData ←
NEW[InitializationassignmentProdDataBody←[
InitialValue]];
RETURN[NEW[InitializationNodeBody←[position, length, InitializationassignmentProdProcs, data]]];
END;
InitialValuetrashProd
InitialValuetrashProdProcs: PUBLIC InitialValueNodeProcs ←
NEW[InitialValueNodeProcsBody ← [InitialValuetrashProdfoo, InitialValuetrashProdMakeValue]];
BuildInitialValuetrashProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[InitialValueNode] =
BEGIN
RETURN[NEW[InitialValueNodeBody←[position, length, InitialValuetrashProdProcs, NIL]]];
END;
InitialValuecodeProd
InitialValuecodeProdProcs: PUBLIC InitialValueNodeProcs ←
NEW[InitialValueNodeProcsBody ← [InitialValuecodeProdfoo, InitialValuecodeProdMakeValue]];
BuildInitialValuecodeProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[InitialValueNode] =
BEGIN
RETURN[NEW[InitialValueNodeBody←[position, length, InitialValuecodeProdProcs, NIL]]];
END;
InitialValueexpProd
InitialValueexpProdProcs: PUBLIC InitialValueNodeProcs ←
NEW[InitialValueNodeProcsBody ← [InitialValueexpProdfoo, InitialValueexpProdMakeValue]];
BuildInitialValueexpProdNode: PUBLIC PROC[position: INT, length: INT, Exp: ExpNode]
RETURNS[InitialValueNode] =
BEGIN
data: InitialValueexpProdData ←
NEW[InitialValueexpProdDataBody←[
Exp]];
RETURN[NEW[InitialValueNodeBody←[position, length, InitialValueexpProdProcs, data]]];
END;
InitialValueblockProd
InitialValueblockProdProcs: PUBLIC InitialValueNodeProcs ←
NEW[InitialValueNodeProcsBody ← [InitialValueblockProdfoo, InitialValueblockProdMakeValue]];
BuildInitialValueblockProdNode: PUBLIC PROC[position: INT, length: INT, Checked: CheckedNode, Inline: InlineNode, Block: BlockNode]
RETURNS[InitialValueNode] =
BEGIN
data: InitialValueblockProdData ←
NEW[InitialValueblockProdDataBody←[
Checked, Inline, Block]];
RETURN[NEW[InitialValueNodeBody←[position, length, InitialValueblockProdProcs, data]]];
END;
InitialValuemachinecodeProd
InitialValuemachinecodeProdProcs: PUBLIC InitialValueNodeProcs ←
NEW[InitialValueNodeProcsBody ← [InitialValuemachinecodeProdfoo, InitialValuemachinecodeProdMakeValue]];
BuildInitialValuemachinecodeProdNode: PUBLIC PROC[position: INT, length: INT, Checked: CheckedNode, CodeList: CodeListNode]
RETURNS[InitialValueNode] =
BEGIN
data: InitialValuemachinecodeProdData ←
NEW[InitialValuemachinecodeProdDataBody←[
Checked, CodeList]];
RETURN[NEW[InitialValueNodeBody←[position, length, InitialValuemachinecodeProdProcs, data]]];
END;
CheckedemptyProd
CheckedemptyProdProcs: PUBLIC CheckedNodeProcs ←
NEW[CheckedNodeProcsBody ← [CheckedemptyProdfoo]];
BuildCheckedemptyProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[CheckedNode] =
BEGIN
RETURN[NEW[CheckedNodeBody←[position, length, CheckedemptyProdProcs, NIL]]];
END;
CheckedcheckedProd
CheckedcheckedProdProcs: PUBLIC CheckedNodeProcs ←
NEW[CheckedNodeProcsBody ← [CheckedcheckedProdfoo]];
BuildCheckedcheckedProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[CheckedNode] =
BEGIN
RETURN[NEW[CheckedNodeBody←[position, length, CheckedcheckedProdProcs, NIL]]];
END;
CheckedtrustedProd
CheckedtrustedProdProcs: PUBLIC CheckedNodeProcs ←
NEW[CheckedNodeProcsBody ← [CheckedtrustedProdfoo]];
BuildCheckedtrustedProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[CheckedNode] =
BEGIN
RETURN[NEW[CheckedNodeBody←[position, length, CheckedtrustedProdProcs, NIL]]];
END;
CheckeduncheckedProd
CheckeduncheckedProdProcs: PUBLIC CheckedNodeProcs ←
NEW[CheckedNodeProcsBody ← [CheckeduncheckedProdfoo]];
BuildCheckeduncheckedProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[CheckedNode] =
BEGIN
RETURN[NEW[CheckedNodeBody←[position, length, CheckeduncheckedProdProcs, NIL]]];
END;
InlineyesProd
InlineyesProdProcs: PUBLIC InlineNodeProcs ←
NEW[InlineNodeProcsBody ← [InlineyesProdfoo]];
BuildInlineyesProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[InlineNode] =
BEGIN
RETURN[NEW[InlineNodeBody←[position, length, InlineyesProdProcs, NIL]]];
END;
InlinenoProd
InlinenoProdProcs: PUBLIC InlineNodeProcs ←
NEW[InlineNodeProcsBody ← [InlinenoProdfoo]];
BuildInlinenoProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[InlineNode] =
BEGIN
RETURN[NEW[InlineNodeBody←[position, length, InlinenoProdProcs, NIL]]];
END;
CodeListoneProd
CodeListoneProdProcs: PUBLIC CodeListNodeProcs ←
NEW[CodeListNodeProcsBody ← [CodeListoneProdfoo]];
BuildCodeListoneProdNode: PUBLIC PROC[position: INT, length: INT, OrderList: OrderListNode]
RETURNS[CodeListNode] =
BEGIN
data: CodeListoneProdData ←
NEW[CodeListoneProdDataBody←[
OrderList]];
RETURN[NEW[CodeListNodeBody←[position, length, CodeListoneProdProcs, data]]];
END;
CodeListmoreProd
CodeListmoreProdProcs: PUBLIC CodeListNodeProcs ←
NEW[CodeListNodeProcsBody ← [CodeListmoreProdfoo]];
BuildCodeListmoreProdNode: PUBLIC PROC[position: INT, length: INT, CodeList: CodeListNode, OrderList: OrderListNode]
RETURNS[CodeListNode] =
BEGIN
data: CodeListmoreProdData ←
NEW[CodeListmoreProdDataBody←[
CodeList, OrderList]];
RETURN[NEW[CodeListNodeBody←[position, length, CodeListmoreProdProcs, data]]];
END;
TransferOpsignalProd
TransferOpsignalProdProcs: PUBLIC TransferOpNodeProcs ←
NEW[TransferOpNodeProcsBody ← [TransferOpsignalProdfoo]];
BuildTransferOpsignalProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[TransferOpNode] =
BEGIN
RETURN[NEW[TransferOpNodeBody←[position, length, TransferOpsignalProdProcs, NIL]]];
END;
TransferOperrorProd
TransferOperrorProdProcs: PUBLIC TransferOpNodeProcs ←
NEW[TransferOpNodeProcsBody ← [TransferOperrorProdfoo]];
BuildTransferOperrorProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[TransferOpNode] =
BEGIN
RETURN[NEW[TransferOpNodeBody←[position, length, TransferOperrorProdProcs, NIL]]];
END;
TransferOpstartProd
TransferOpstartProdProcs: PUBLIC TransferOpNodeProcs ←
NEW[TransferOpNodeProcsBody ← [TransferOpstartProdfoo]];
BuildTransferOpstartProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[TransferOpNode] =
BEGIN
RETURN[NEW[TransferOpNodeBody←[position, length, TransferOpstartProdProcs, NIL]]];
END;
TransferOpjoinProd
TransferOpjoinProdProcs: PUBLIC TransferOpNodeProcs ←
NEW[TransferOpNodeProcsBody ← [TransferOpjoinProdfoo]];
BuildTransferOpjoinProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[TransferOpNode] =
BEGIN
RETURN[NEW[TransferOpNodeBody←[position, length, TransferOpjoinProdProcs, NIL]]];
END;
TransferOpnewProd
TransferOpnewProdProcs: PUBLIC TransferOpNodeProcs ←
NEW[TransferOpNodeProcsBody ← [TransferOpnewProdfoo]];
BuildTransferOpnewProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[TransferOpNode] =
BEGIN
RETURN[NEW[TransferOpNodeBody←[position, length, TransferOpnewProdProcs, NIL]]];
END;
TransferOpforkProd
TransferOpforkProdProcs: PUBLIC TransferOpNodeProcs ←
NEW[TransferOpNodeProcsBody ← [TransferOpforkProdfoo]];
BuildTransferOpforkProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[TransferOpNode] =
BEGIN
RETURN[NEW[TransferOpNodeBody←[position, length, TransferOpforkProdProcs, NIL]]];
END;
END..