/* Copyright (C) 1993, Digital Equipment Corporation                         */
/* All rights reserved.                                                      */
/* See the file COPYRIGHT for a full description.                            */

/* Last modified on Wed May  5 21:01:39 PDT 1993 by mjordan                  */

Interface("M3AST")
Interface("M3AST_FE")
Interface("M3AST_PL")
Interface("M3AST_AS")
Interface("M3AST_PG")
Interface("M3AST_LX")
Interface("M3AST_SM")

Interface("M3AST_FE_priv")
Interface("M3ASTCopySM")
Interface("M3ASTWalk")
Interface("M3AST_AS_Name")
Interface("M3AST_AS_Copy")
Interface("M3AST_AS_Init")
Interface("M3AST_AS_Walk")
Interface("M3AST_AS_Iter")
Interface("M3AST_AS_Iter_rep")
Interface("M3AST_AS_Display")
Interface("M3AST_PG_Copy")
Interface("M3AST_PG_Init")

Interface("M3AST_PG_F")
Interface("M3AST_PG_M")
Interface("M3AST_PL_F")
Interface("M3AST_SM_F")
Interface("M3AST_TL_F")
Interface("M3AST_TM_F")
Interface("M3AST_FE_F")
Interface("M3AST_FE_priv_F")
Interface("M3AST_LX_F")
Interface("M3AST_AS_F")
Interface("M3ASTOp_AS")

Module("M3ASTOp_SM")
Module("M3ASTScope")

template("seq")

Generic_interface("SeqElem_rep")
Generic_interface("SeqElem")
Generic_implementation("SeqElem")

Seq("AS", "Import_item")
Seq("AS", "Module")
Seq("AS", "Interface")
Seq("AS", "EXP")
Seq("AS", "Interface_AS_id")
Seq("AS", "Const_decl")
Seq("AS", "Field_id")
Seq("AS", "CONS_ELEM")
Seq("AS", "Override")
Seq("AS", "STM")
Seq("AS", "Module_id")
Seq("AS", "Exc_decl")
Seq("AS", "Handler")
Seq("AS", "Binding")
Seq("AS", "F_Interface_id")
Seq("AS", "Qual_used_id")
Seq("AS", "USED_ID")
Seq("AS", "Var_decl")
Seq("AS", "IMPORTED")
Seq("AS", "Enum_id")
Seq("SM", "Opaque_type_Revln")
Seq("AS", "Case")
Seq("AS", "Elsif")
Seq("AS", "Tcase")
Seq("AS", "DECL_REVL")
Seq("AS", "TYPE_DECL")
Seq("AS", "Fields")
Seq("AS", "Object_type")
Seq("AS", "Proc_id")
Seq("AS", "Actual")
Seq("AS", "Exc_id")
Seq("AS", "REVELATION")
Seq("AS", "Used_interface_id")
Seq("AS", "RANGE_EXP")
Seq("AS", "Var_id")
Seq("AS", "FORMAL_ID")
Seq("AS", "M3TYPE")
Seq("AS", "Method")
Seq("AS", "Used_def_id")
Seq("AS", "Formal_param")
Seq("AS", "TYPE_SPEC")
Seq("AS", "DEF_ID")
Seq("LX", "SRC_NODE")


implementation("M3AST_SM_F")
implementation("M3AST_PG")
implementation("M3AST_SM")
implementation("M3ASTCopySM")
implementation("M3ASTWalk")
implementation("M3AST_AS_Name")
implementation("M3AST_AS_Copy")
implementation("M3AST_AS_Init")
implementation("M3AST_AS_Iter")
implementation("M3AST_AS_Walk")
implementation("M3AST_PG_Init")
implementation("M3AST_AS_F")
implementation("M3AST_SM_Walk")
