--   ABSTRACT SYNTAX
--   ---------------
--
--        Objects of the abstract syntax classes form the nodes of the abstract
--   syntax tree created by the parser.  They all subtype from $AS_NODE and
--   correspond nearly one-to-one with the grammatical productions in the
--   language definition.  The AS_OUT class can be used to print any abstract
--   syntax tree for debugging purposes.  Some useful auxiliary abstractions
--   are $AS_CLASS_ELT (class elements), $AS_STMT (statements) and $AS_EXPR
--   (expressions).

as.sa              -has as.sa $AS_NODE AS_NODE AS_CLASS_DEF AS_PARAM_DEC AS_TYPE_SPEC AS_ARG_MODE

elts.sa            -has elts.sa $AS_CLASS_ELT AS_CLASS_ELT AS_CONST_DEF AS_SHARED_DEF AS_ATTR_DEF AS_ROUT_DEF AS_ARG_DEC AS_INCLUDE_CLAUSE AS_FEAT_MOD

exprs.sa           -has exprs.sa $AS_EXPR $AS_NUMERIC_EXPR AS_EXPR AS_SELF_EXPR AS_CALL_EXPR AS_VOID_EXPR AS_IS_VOID_EXPR AS_ARRAY_EXPR AS_CREATE_EXPR AS_BOUND_CREATE_EXPR AS_UNDERSCORE_ARG AS_AND_EXPR AS_OR_EXPR AS_EXCEPT_EXPR AS_NEW_EXPR AS_INITIAL_EXPR AS_BREAK_EXPR AS_RESULT_EXPR AS_BIT_LIT_EXPR AS_BOOL_LIT_EXPR AS_CHAR_LIT_EXPR AS_STR_LIT_EXPR AS_EXACT_LIT_EXPR AS_FLT_LIT_EXPR AS_HERE_EXPR AS_GLOBAL_EXPR AS_ANY_EXPR AS_CLUSTER_EXPR AS_CLUSTER_SIZE_EXPR AS_COHORT_EXPR AS_WHERE_EXPR AS_NEAR_EXPR AS_FAR_EXPR AS_AT_EXPR 

stmts.sa           -has stmts.sa $AS_STMT AS_STMT_LIST AS_STMT AS_DEC_STMT AS_ASSIGN_STMT AS_IF_STMT AS_LOOP_STMT AS_RETURN_STMT AS_YIELD_STMT AS_QUIT_STMT AS_CASE_STMT AS_CASE_WHEN AS_TYPECASE_STMT AS_TYPECASE_WHEN AS_ASSERT_STMT AS_PROTECT_STMT AS_PROTECT_WHEN AS_PAR_STMT AS_INTERF_ATTACH_STMT AS_LOCK_STMT AS_LOCK_IF_WHEN AS_UNLOCK_STMT AS_SYNC_STMT AS_WITH_NEAR_STMT AS_IDENT_LIST AS_ATTACH_STMT AS_FORK_STMT AS_RAISE_STMT AS_EXPR_STMT

stmts_cursor.sa    -has stmts_cursor.sa AS_STMT_CURSOR


--        The following file contains the class AS_OUT which is solely
--   required for debugging the compiler.

as_out.sa          -has as_out.sa AS_OUT
