Basic.module



--------------------------->  GNU Sather - module  <---------------------------
-- Copyright (C) 2000 by K Hopper, University of Waikato, New Zealand        --
-- This file is part of the GNU Sather package. It is free software; you may --
-- redistribute  and/or modify it under the terms of the  GNU General Public --
-- License (GPL)  as  published  by the  Free  Software  Foundation;  either --
-- version 2 of the license, or (at your option) any later version.          --
-- This  program  is distributed  in the  hope that it will  be  useful, but --
-- WITHOUT ANY WARRANTY without even the implied warranty of MERCHANTABILITY --
-- or FITNESS FOR A PARTICULAR PURPOSE. See Doc/GPL for more details.        --
-- The license text is also available from:  Free Software Foundation, Inc., --
-- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA                     --
-------------->  Please email comments to   <--------------

--        The abstract classes in this section consist of the pervasive ones
--   in base, the port file and the kinds - containing fundamental 'types'
--   with the auxiliary file containing miscallaneous others.

--        AREF and AVAL are the two array 'constructor' classes which are
--   pervasive to the language.  When included they provide array facilities
--   respectively for reference and immutable classes.  It is an error if AVAL
--   is included in a reference class and if AREF is included in an immutable
--   class.


-has base.sa $OB $REFERENCE

-has port.sa $PORT

-has aref.sa AREF
-has aval.sa AVAL

-has kinds.sa $IS_EQ $IS_LT $IS_NIL $NIL $ELT $STR $TEXT $IMMUTABLE $VALUE $ORDERED
-has compare.sa ELT_EQ ELT_LT ELT_HASH ELT_NIL COMPARE COMPARABLE

-has basic_auxiliary.sa $HASH $SUPPORTS_REHASH $COPY $VAR

--        The EXT_OB here is for compiler compatibility only!

-has misc.sa CAST CAST_EXC ID EXT_OB