class AS_ROUT_DEF < $AS_CLASS_ELT
****
Definition of a routine.


Ancestors
$AS_CLASS_ELT $NEXT{_} $AS_NODE $PROG_ERR
AS_CLASS_ELT AS_NODE



Public


Readable Attributes
attr args_dec:AS_ARG_DEC;
**** Arguments, if any.
attr body:AS_STMT_LIST;
**** The statements, if any.
attr builtin_name:IDENT;
**** name of the builtin function in CONFIG
attr is_abstract:BOOL;
**** True if has no body.
attr is_attach_routine : BOOL;
**** ... an attach
attr is_builtin:BOOL;
**** true if builtin
attr is_fork_routine : BOOL;
**** this routine implements the body of a fork
attr is_par_routine : BOOL;
**** this routine implements the body of a par
attr is_:BOOL;
**** True if declared .
attr name:IDENT;
**** Name of the routine.
attr next:T;
**** Pointer to next element in list, if any.
attr
**** The "post" clause, if any.
attr
**** The "pre" clause, if any.
attr ret_dec:AS_TYPE_SPEC;
**** Return type, if any.
attr source:SFILE_ID;
**** The origin of a node in a Sather source file.

Writable Attributes
attr args_dec:AS_ARG_DEC;
**** Arguments, if any.
attr body:AS_STMT_LIST;
**** The statements, if any.
attr builtin_name:IDENT;
**** name of the builtin function in CONFIG
attr is_abstract:BOOL;
**** True if has no body.
attr is_attach_routine : BOOL;
**** ... an attach
attr is_builtin:BOOL;
**** true if builtin
attr is_fork_routine : BOOL;
**** this routine implements the body of a fork
attr is_par_routine : BOOL;
**** this routine implements the body of a par
attr is_:BOOL;
**** True if declared .
attr name:IDENT;
**** Name of the routine.
attr next:T;
**** Pointer to next element in list, if any.
attr
**** The "post" clause, if any.
attr
**** The "pre" clause, if any.
attr ret_dec:AS_TYPE_SPEC;
**** Return type, if any.
attr source:SFILE_ID;
**** The origin of a node in a Sather source file.

Features
append(l:T)
**** Append the list `l' to the end of the list self. self may not be void but `l' may be.
create: SAME
**** A new object with default initialization.
insert(e:T)
**** Insert the single element `e' after self. Neither may be void, `e.next' must be void.
size:INT
**** The number of elements in the list starting with self. Self may be void.