/* $Id: defcls.h,v 1.2 2009/01/04 18:44:39 kiesling Exp $ */

/*
  This file is part of Ctalk.
  Copyright © 2005-2009 Robert Kiesling, ctalk@ctalklang.org.
  Permission is granted to copy this software provided that this copyright
  notice is included in all source code modules.

  This program is free software; you can redistribute it and/or modify
  it under the terms of the GNU General Public License 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 the
  GNU General Public License for more details.

  You should have received a copy of the GNU General Public License
  along with this program; if not, write to the Free Software Foundation, 
  Inc., 51 Franklin St., Fifth Floor, Boston, MA 02110-1301 USA.
*/

#ifndef _DEFCLS_H

#define OBJECT_CLASSNAME "Object"
#define OBJECT_SUPERCLASSNAME NULL

#define COLLECTION_CLASSNAME "Collection"
#define COLLECTION_SUPERCLASSNAME "Object"

#define ARRAY_CLASSNAME "Array"
#define ARRAY_SUPERCLASSNAME "Collection"

#define EXPR_CLASSNAME "Expr"
#define EXPR_SUPERCLASSNAME "Object"

#define CFUNCTION_CLASSNAME "CFunction"
#define CFUNCTION_SUPERCLASSNAME "Expr"

#define MAGNITUDE_CLASSNAME "Magnitude"
#define MAGNITUDE_SUPERCLASSNAME "Object"

#define CHARACTER_CLASSNAME "Character"
#define CHARACTER_SUPERCLASSNAME "Magnitude"

#define STRING_CLASSNAME "String"
#define STRING_SUPERCLASSNAME "Character"

#define FLOAT_CLASSNAME "Float"
#define FLOAT_SUPERCLASSNAME "Magnitude"

#define INTEGER_CLASSNAME "Integer"
#define INTEGER_SUPERCLASSNAME "Magnitude"

#define LONGINTEGER_CLASSNAME "LongInteger"
#define LONGINTEGER_SUPERCLASSNAME "Magnitude"

#define SYMBOL_CLASSNAME "Symbol"
#define SYMBOL_SUPERCLASSNAME "Object"

#define BOOLEAN_CLASSNAME "Boolean"
#define BOOLEAN_SUPERCLASSNAME "Integer"

#define DEFAULT_CLIB_RETURNCLASS "Integer"

#define _DEFCLS_H
#endif /* #ifndef __DEFCLS_H */
