SaffronAG9Impl.mesa
Copyright Ó 1987 by Xerox Corporation. All rights reserved.
Generated by BJackson.pa at April 27, 1987 10:51:25 pm PDT
using ThreeCasabaFour [1.1] of April 14, 1987 6:34:07 pm PDT
DIRECTORY
SaffronAG9Def,
SaffronGenericDef,
SaffronATDef;
SaffronAG9Impl: CEDAR PROGRAM IMPORTS SaffronAG9Def EXPORTS SaffronAG9Def=
BEGIN
OPEN SaffronAG9Def, SaffronGenericDef, SaffronATDef;
ModulePimplProd
ModulePimplProdProcs: PUBLIC ModulePNodeProcs ←
NEW[ModulePNodeProcsBody ← [ModulePimplProdfoo]];
BuildModulePimplProdNode: PUBLIC PROC[position: INT, length: INT, Directory: DirectoryNode, IdentList: IdentListNode, Cedar: CedarNode, ProgHead: ProgHeadNode, Checked: CheckedNode, Block: BlockNode]
RETURNS[ModulePNode] =
BEGIN
data: ModulePimplProdData ←
NEW[ModulePimplProdDataBody←[
Directory, IdentList, Cedar, ProgHead, Checked, Block]];
RETURN[NEW[ModulePNodeBody←[position, length, ModulePimplProdProcs, data]]];
END;
ModulePdefProd
ModulePdefProdProcs: PUBLIC ModulePNodeProcs ←
NEW[ModulePNodeProcsBody ← [ModulePdefProdfoo]];
BuildModulePdefProdNode: PUBLIC PROC[position: INT, length: INT, Directory: DirectoryNode, IdentList: IdentListNode, Cedar: CedarNode, DefHead: DefHeadNode, DefBody: DefBodyNode]
RETURNS[ModulePNode] =
BEGIN
data: ModulePdefProdData ←
NEW[ModulePdefProdDataBody←[
Directory, IdentList, Cedar, DefHead, DefBody]];
RETURN[NEW[ModulePNodeBody←[position, length, ModulePdefProdProcs, data]]];
END;
DirectoryemptyProd
DirectoryemptyProdProcs: PUBLIC DirectoryNodeProcs ←
NEW[DirectoryNodeProcsBody ← [DirectoryemptyProdfoo]];
BuildDirectoryemptyProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[DirectoryNode] =
BEGIN
RETURN[NEW[DirectoryNodeBody←[position, length, DirectoryemptyProdProcs, NIL]]];
END;
DirectorymoreProd
DirectorymoreProdProcs: PUBLIC DirectoryNodeProcs ←
NEW[DirectoryNodeProcsBody ← [DirectorymoreProdfoo]];
BuildDirectorymoreProdNode: PUBLIC PROC[position: INT, length: INT, Directory: DirectoryNode, IncludeItem: IncludeItemNode]
RETURNS[DirectoryNode] =
BEGIN
data: DirectorymoreProdData ←
NEW[DirectorymoreProdDataBody←[
Directory, IncludeItem]];
RETURN[NEW[DirectoryNodeBody←[position, length, DirectorymoreProdProcs, data]]];
END;
IncludeItemfrompProd
IncludeItemfrompProdProcs: PUBLIC IncludeItemNodeProcs ←
NEW[IncludeItemNodeProcsBody ← [IncludeItemfrompProdfoo]];
BuildIncludeItemfrompProdNode: PUBLIC PROC[position: INT, length: INT, id: idNode, string: stringNode, Using: UsingNode]
RETURNS[IncludeItemNode] =
BEGIN
data: IncludeItemfrompProdData ←
NEW[IncludeItemfrompProdDataBody←[
id, string, Using]];
RETURN[NEW[IncludeItemNodeBody←[position, length, IncludeItemfrompProdProcs, data]]];
END;
IncludeItemtypeProd
IncludeItemtypeProdProcs: PUBLIC IncludeItemNodeProcs ←
NEW[IncludeItemNodeProcsBody ← [IncludeItemtypeProdfoo]];
BuildIncludeItemtypeProdNode: PUBLIC PROC[position: INT, length: INT, id: idNode, Using: UsingNode]
RETURNS[IncludeItemNode] =
BEGIN
data: IncludeItemtypeProdData ←
NEW[IncludeItemtypeProdDataBody←[
id, Using]];
RETURN[NEW[IncludeItemNodeBody←[position, length, IncludeItemtypeProdProcs, data]]];
END;
IncludeItemplainProd
IncludeItemplainProdProcs: PUBLIC IncludeItemNodeProcs ←
NEW[IncludeItemNodeProcsBody ← [IncludeItemplainProdfoo]];
BuildIncludeItemplainProdNode: PUBLIC PROC[position: INT, length: INT, id: idNode, Using: UsingNode]
RETURNS[IncludeItemNode] =
BEGIN
data: IncludeItemplainProdData ←
NEW[IncludeItemplainProdDataBody←[
id, Using]];
RETURN[NEW[IncludeItemNodeBody←[position, length, IncludeItemplainProdProcs, data]]];
END;
IncludeItemtypeandidProd
IncludeItemtypeandidProdProcs: PUBLIC IncludeItemNodeProcs ←
NEW[IncludeItemNodeProcsBody ← [IncludeItemtypeandidProdfoo]];
BuildIncludeItemtypeandidProdNode: PUBLIC PROC[position: INT, length: INT, idlocal: idNode, idglobal: idNode, Using: UsingNode]
RETURNS[IncludeItemNode] =
BEGIN
data: IncludeItemtypeandidProdData ←
NEW[IncludeItemtypeandidProdDataBody←[
idlocal, idglobal, Using]];
RETURN[NEW[IncludeItemNodeBody←[position, length, IncludeItemtypeandidProdProcs, data]]];
END;
UsingrestrictedProd
UsingrestrictedProdProcs: PUBLIC UsingNodeProcs ←
NEW[UsingNodeProcsBody ← [UsingrestrictedProdfoo]];
BuildUsingrestrictedProdNode: PUBLIC PROC[position: INT, length: INT, IdList: IdListNode]
RETURNS[UsingNode] =
BEGIN
data: UsingrestrictedProdData ←
NEW[UsingrestrictedProdDataBody←[
IdList]];
RETURN[NEW[UsingNodeBody←[position, length, UsingrestrictedProdProcs, data]]];
END;
UsingnothingProd
UsingnothingProdProcs: PUBLIC UsingNodeProcs ←
NEW[UsingNodeProcsBody ← [UsingnothingProdfoo]];
BuildUsingnothingProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[UsingNode] =
BEGIN
RETURN[NEW[UsingNodeBody←[position, length, UsingnothingProdProcs, NIL]]];
END;
UsingunrestrictedProd
UsingunrestrictedProdProcs: PUBLIC UsingNodeProcs ←
NEW[UsingNodeProcsBody ← [UsingunrestrictedProdfoo]];
BuildUsingunrestrictedProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[UsingNode] =
BEGIN
RETURN[NEW[UsingNodeBody←[position, length, UsingunrestrictedProdProcs, NIL]]];
END;
DefBodyProd
DefBodyProdProcs: PUBLIC DefBodyNodeProcs ←
NEW[DefBodyNodeProcsBody ← [DefBodyProdfoo]];
BuildDefBodyProdNode: PUBLIC PROC[position: INT, length: INT, BindList: BindListNode, DecList: DecListNode]
RETURNS[DefBodyNode] =
BEGIN
data: DefBodyProdData ←
NEW[DefBodyProdDataBody←[
BindList, DecList]];
RETURN[NEW[DefBodyNodeBody←[position, length, DefBodyProdProcs, data]]];
END;
DefHeadProd
DefHeadProdProcs: PUBLIC DefHeadNodeProcs ←
NEW[DefHeadNodeProcsBody ← [DefHeadProdfoo]];
BuildDefHeadProdNode: PUBLIC PROC[position: INT, length: INT, Locks: LocksNode, ModuleList: ModuleListNode, Shares: SharesNode, Access: AccessNode]
RETURNS[DefHeadNode] =
BEGIN
data: DefHeadProdData ←
NEW[DefHeadProdDataBody←[
Locks, ModuleList, Shares, Access]];
RETURN[NEW[DefHeadNodeBody←[position, length, DefHeadProdProcs, data]]];
END;
CedaryesProd
CedaryesProdProcs: PUBLIC CedarNodeProcs ←
NEW[CedarNodeProcsBody ← [CedaryesProdfoo]];
BuildCedaryesProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[CedarNode] =
BEGIN
RETURN[NEW[CedarNodeBody←[position, length, CedaryesProdProcs, NIL]]];
END;
CedarnoProd
CedarnoProdProcs: PUBLIC CedarNodeProcs ←
NEW[CedarNodeProcsBody ← [CedarnoProdfoo]];
BuildCedarnoProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[CedarNode] =
BEGIN
RETURN[NEW[CedarNodeBody←[position, length, CedarnoProdProcs, NIL]]];
END;
ProgHeadProd
ProgHeadProdProcs: PUBLIC ProgHeadNodeProcs ←
NEW[ProgHeadNodeProcsBody ← [ProgHeadProdfoo]];
BuildProgHeadProdNode: PUBLIC PROC[position: INT, length: INT, Safe: SafeNode, Class: ClassNode, Arguments: ArgumentsNode, Locks: LocksNode, Interface: InterfaceNode, Access: AccessNode]
RETURNS[ProgHeadNode] =
BEGIN
data: ProgHeadProdData ←
NEW[ProgHeadProdDataBody←[
Safe, Class, Arguments, Locks, Interface, Access]];
RETURN[NEW[ProgHeadNodeBody←[position, length, ProgHeadProdProcs, data]]];
END;
ClassprogramProd
ClassprogramProdProcs: PUBLIC ClassNodeProcs ←
NEW[ClassNodeProcsBody ← [ClassprogramProdfoo]];
BuildClassprogramProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[ClassNode] =
BEGIN
RETURN[NEW[ClassNodeBody←[position, length, ClassprogramProdProcs, NIL]]];
END;
ClassmonitorProd
ClassmonitorProdProcs: PUBLIC ClassNodeProcs ←
NEW[ClassNodeProcsBody ← [ClassmonitorProdfoo]];
BuildClassmonitorProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[ClassNode] =
BEGIN
RETURN[NEW[ClassNodeBody←[position, length, ClassmonitorProdProcs, NIL]]];
END;
InterfaceProd
InterfaceProdProcs: PUBLIC InterfaceNodeProcs ←
NEW[InterfaceNodeProcsBody ← [InterfaceProdfoo]];
BuildInterfaceProdNode: PUBLIC PROC[position: INT, length: INT, ModuleListimports: ModuleListNode, ModuleListexports: ModuleListNode, Shares: SharesNode]
RETURNS[InterfaceNode] =
BEGIN
data: InterfaceProdData ←
NEW[InterfaceProdDataBody←[
ModuleListimports, ModuleListexports, Shares]];
RETURN[NEW[InterfaceNodeBody←[position, length, InterfaceProdProcs, data]]];
END;
ModuleListemptyProd
ModuleListemptyProdProcs: PUBLIC ModuleListNodeProcs ←
NEW[ModuleListNodeProcsBody ← [ModuleListemptyProdfoo]];
BuildModuleListemptyProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[ModuleListNode] =
BEGIN
RETURN[NEW[ModuleListNodeBody←[position, length, ModuleListemptyProdProcs, NIL]]];
END;
ModuleListmoreProd
ModuleListmoreProdProcs: PUBLIC ModuleListNodeProcs ←
NEW[ModuleListNodeProcsBody ← [ModuleListmoreProdfoo]];
BuildModuleListmoreProdNode: PUBLIC PROC[position: INT, length: INT, ModuleList: ModuleListNode, ModuleItem: ModuleItemNode]
RETURNS[ModuleListNode] =
BEGIN
data: ModuleListmoreProdData ←
NEW[ModuleListmoreProdDataBody←[
ModuleList, ModuleItem]];
RETURN[NEW[ModuleListNodeBody←[position, length, ModuleListmoreProdProcs, data]]];
END;
ModuleItemoneProd
ModuleItemoneProdProcs: PUBLIC ModuleItemNodeProcs ←
NEW[ModuleItemNodeProcsBody ← [ModuleItemoneProdfoo]];
BuildModuleItemoneProdNode: PUBLIC PROC[position: INT, length: INT, id: idNode]
RETURNS[ModuleItemNode] =
BEGIN
data: ModuleItemoneProdData ←
NEW[ModuleItemoneProdDataBody←[
id]];
RETURN[NEW[ModuleItemNodeBody←[position, length, ModuleItemoneProdProcs, data]]];
END;
ModuleItemtwoProd
ModuleItemtwoProdProcs: PUBLIC ModuleItemNodeProcs ←
NEW[ModuleItemNodeProcsBody ← [ModuleItemtwoProdfoo]];
BuildModuleItemtwoProdNode: PUBLIC PROC[position: INT, length: INT, idrecord: idNode, idtype: idNode]
RETURNS[ModuleItemNode] =
BEGIN
data: ModuleItemtwoProdData ←
NEW[ModuleItemtwoProdDataBody←[
idrecord, idtype]];
RETURN[NEW[ModuleItemNodeBody←[position, length, ModuleItemtwoProdProcs, data]]];
END;
SharesabsentProd
SharesabsentProdProcs: PUBLIC SharesNodeProcs ←
NEW[SharesNodeProcsBody ← [SharesabsentProdfoo]];
BuildSharesabsentProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[SharesNode] =
BEGIN
RETURN[NEW[SharesNodeBody←[position, length, SharesabsentProdProcs, NIL]]];
END;
SharespresentProd
SharespresentProdProcs: PUBLIC SharesNodeProcs ←
NEW[SharesNodeProcsBody ← [SharespresentProdfoo]];
BuildSharespresentProdNode: PUBLIC PROC[position: INT, length: INT, IdList: IdListNode]
RETURNS[SharesNode] =
BEGIN
data: SharespresentProdData ←
NEW[SharespresentProdDataBody←[
IdList]];
RETURN[NEW[SharesNodeBody←[position, length, SharespresentProdProcs, data]]];
END;
LocksabsentProd
LocksabsentProdProcs: PUBLIC LocksNodeProcs ←
NEW[LocksNodeProcsBody ← [LocksabsentProdfoo]];
BuildLocksabsentProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[LocksNode] =
BEGIN
RETURN[NEW[LocksNodeBody←[position, length, LocksabsentProdProcs, NIL]]];
END;
LockspresentProd
LockspresentProdProcs: PUBLIC LocksNodeProcs ←
NEW[LocksNodeProcsBody ← [LockspresentProdfoo]];
BuildLockspresentProdNode: PUBLIC PROC[position: INT, length: INT, Exp: ExpNode, Lambda: LambdaNode]
RETURNS[LocksNode] =
BEGIN
data: LockspresentProdData ←
NEW[LockspresentProdDataBody←[
Exp, Lambda]];
RETURN[NEW[LocksNodeBody←[position, length, LockspresentProdProcs, data]]];
END;
LambdaabsentProd
LambdaabsentProdProcs: PUBLIC LambdaNodeProcs ←
NEW[LambdaNodeProcsBody ← [LambdaabsentProdfoo]];
BuildLambdaabsentProdNode: PUBLIC PROC[position: INT, length: INT]
RETURNS[LambdaNode] =
BEGIN
RETURN[NEW[LambdaNodeBody←[position, length, LambdaabsentProdProcs, NIL]]];
END;
LambdapresentProd
LambdapresentProdProcs: PUBLIC LambdaNodeProcs ←
NEW[LambdaNodeProcsBody ← [LambdapresentProdfoo]];
BuildLambdapresentProdNode: PUBLIC PROC[position: INT, length: INT, Ident: IdentNode, TypeExp: TypeExpNode]
RETURNS[LambdaNode] =
BEGIN
data: LambdapresentProdData ←
NEW[LambdapresentProdDataBody←[
Ident, TypeExp]];
RETURN[NEW[LambdaNodeBody←[position, length, LambdapresentProdProcs, data]]];
END;
END..