lib/kernel
Provides the very basic functionalities the compiler could not dream.
->See description

 

ANY
 Project-wide universal properties.
 This class is an ancestor to all developer-written classes.
 ANY inherits from GENERAL, and may be customized for individual
 projects or teams.

ARGUMENTS
 Needed only for ELKS 95 compatibility.

BIT_N
 Indexed Bit sequences of length `N'. This class is a template,
 not a real class; to obtain a meaningful class, replace `N'
 with a positive integer throughout.

 An INTEGER index can be used to access each bit of the sequence.
 The leftmost bit has index 1 and the rightmost bit has index `N'.

 Note 1 : corresponding C mapping depends on actual `N' and is
        PLATFORM dependant (see class PLATFORM).
        When `N' is in range [0  .. Character_bits], C type
        is a simple "unsigned char".
        When `N' is in range [Character_bits+1 .. Integer_bits],
        C type is "unsigned".
        When `N' is greater than Integer_bits, C type is C array
        of "unsigned" of the form :
                 "unsigned storage[`N' div Integer_bits]"
        The array is obviously big enough to fit with `N'. As
        for previous mapping, the left most bit (at index 1 in
        Eiffel) is always the left most in C memory.

 Note 2 : Eiffel BIT code is portable. Generated C code for class
        BIT may not be portable (because sizeof(int) may change).
        To produce a portable C code, you can compile your Eiffel
        code using a machine with very small sizeof(int). Also note
        that doing this may run a little bit slowly.

 Also consider class BIT_STRING for very long bit sequences.

BIT_STRING
 Long and very long bit sequences.
 As for the primitive expanded BIT_N type, an INTEGER index can be
 used to access each bit of the sequence.
 As for BIT_N class, the leftmost bit has index 1 and the
 rightmost bit has index `count'.

 For short bit sequences (less or equal to 32 or 64), also
 consider to use basic BIT_N type.

BOOLEAN
 Note: An Eiffel BOOLEAN is mapped as a C char or as a Java int.

EXCEPTIONS
 Facilities for adapting the exception handling mechanism.
 This class may be used as ancestor by classes needing its
 facilities.

FUNCTION
 Where B is the base type (i.e. a type of compatible with the target of the delayed call) and where O represents open
 arguments (i.e. arguments which are delayed) and where R is for the result type of the delayed call.

GENERAL
 Platform-independent universal properties. This class is an ancestor to all developer-written classes.

HIERARCHIC_GRAPH_NODE
 

LOADED_HIERARCHIC_GRAPH_NODE
 

MEMORY
 Facilities for tuning up the garbage collection, and
 everything about memory control.

PLATFORM
 This class is ancestor for any user class. This class provides information
 as number of bits for basic types and minimum/maximum values.

POINTER
 References to objects meant to be exchanged with non-Eiffel software.

 Note : An Eiffel POINTER is mapped as C type "Void *" or as
 Java "java.lang.Object" type.

PREDICATE
 A PREDICATE is a FUNCTION with a BOOLEAN result type. As in other agent's definitions, B is the base type (i.e. a type of
 compatible with the target of the delayed call) and O represents open arguments (i.e. arguments which are delayed).

PROCEDURE
 Where B is the base type (i.e. a type of compatible with the target of the delayed call) and O represents open
 arguments (i.e. arguments which are delayed).

ROUTINE
 The agent's type hierarchy is composed of the following classes: ROUTINE, PROCEDURE, FUNCTION and PREDICATE.
 Where B is the base type (i.e. a type of compatible with the target of the delayed call) and O represents open
 arguments (i.e. arguments which are delayed).

SAFE_EQUAL
 The goal of this class is to share the definition of the feature `safe_equal'.
 The feature `safe_equal' compares two arguments of type E, by calling `is_equal' only if
 both arguments have the `same_dynamic_type'.

STRING_HANDLER
 Inherit this class if you need access to STRING internal storage.

 ------------------------------------------------------------------------------------------------------------------------------
 Copyright notice below. Please read.

 This file is free software, which comes along with SmartEiffel. This software 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.
 You can modify it as you want, provided this footer is kept unaltered, and a notification of the changes is added.
 You are allowed to redistribute it and sell it, alone or as a part of another product.

 Copyright(C) 1994-2002: INRIA - LORIA (INRIA Lorraine) - ESIAL U.H.P.       - University of Nancy 1 - FRANCE
 Copyright(C) 2003-2004: INRIA - LORIA (INRIA Lorraine) - I.U.T. Charlemagne - University of Nancy 2 - FRANCE

 Authors: Dominique COLNET, Philippe RIBET, Cyril ADRIAN, Vincent CROIZIER, Frederic MERIZEN

 http://SmartEiffel.loria.fr - SmartEiffel@loria.fr
 ------------------------------------------------------------------------------------------------------------------------------

SYSTEM
 This expanded class allow to execute system command
 and to get/set environment variables.

TUPLE
 

WEAK_REFERENCE
 Weak reference to an object.
 This kind of reference does not prevent the object from being
 reclaimed by the garbaged collector (in which case item returns Void).
 Item makes it possible to get (a strong reference to) the object.
 Inheriting from this class is prohibited.
 This class works with compile_to_c, but NOT with compile_to_jvm.


 

Cluster lib/kernel description

Provides the very basic functionalities the compiler could not dream of working without.