home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_400 / 415_02 / rtti / include / rtti_entry.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-11-04  |  1.4 KB  |  51 lines

  1. #ifndef    _H_RTTI_ENTRY
  2. #define    _H_RTTI_ENTRY
  3. /* %Z%%I%       %G% %U% %W% */
  4. /*
  5.  * COMPONENT_NAME: (COMINC) Common Header File for RTTI
  6.  *
  7.  * ORIGINS: 27
  8.  *
  9.  * (C) COPYRIGHT International Business Machines Corp. 1992
  10.  * This work was supported by a grant from International Business
  11.  * Machines, Inc. These procedures are contributed to the public domain
  12.  * by International Business Machines Inc. "AS IS" without any warranty
  13.  * of any kind including the warranty of merchantability or fitness
  14.  * for a particular purpose.
  15.  *
  16.  * This is free software. Feel free to redistribute and/or modify it.
  17.  * Please send us e-mail and let us know if you have any problems
  18.  * or suggestions.
  19.  *
  20.  * Arindam Banerji
  21.  * axb@cse.nd.edu
  22.  *
  23.  *
  24.  *
  25.  */
  26.  
  27. #include "trace.h"
  28.  
  29. class   CLASS ;  // a fwd declaration to make the rtti classes work
  30. class   Type_info ; // a fwd declaration to make rtti classes work
  31.  
  32. // In order to avoid a cycle in the definition of classes - the following
  33. // hack class is introduced. The following two class definitions are
  34. // hacks are are essentially non-portable.
  35. class   hndl_recursion
  36.   {
  37.     public :
  38.        hndl_recursion() : name("CLASS"), ptr(0) { } ;
  39.        virtual ~hndl_recursion() { } ;
  40.        const    char   *name ;
  41.        const    int    *ptr ;
  42.        const Type_info    *operator & () ;
  43.        const Type_info    *convert_type() const  ;
  44.   } ;
  45.  
  46.  
  47. #include    "rtti.h"
  48. #include    "rttimacros.h"
  49.  
  50. #endif    // _H_CPP_ENTRY
  51.