home *** CD-ROM | disk | FTP | other *** search
/ Software Collection (I) / TOOLS.iso / c01 / 2.img / CLASSINC.ZIP / CLSTYPES.H < prev    next >
Encoding:
C/C++ Source or Header  |  1992-06-10  |  2.5 KB  |  105 lines

  1. /*------------------------------------------------------------------------*/
  2. /*                                                                        */
  3. /*  CLSTYPES.H                                                            */
  4. /*                                                                        */
  5. /*  Copyright Borland International 1991, 1992                            */
  6. /*  All Rights Reserved                                                   */
  7. /*                                                                        */
  8. /*------------------------------------------------------------------------*/
  9.  
  10. #if !defined( __CLSTYPES_H )
  11. #define __CLSTYPES_H
  12.  
  13. #if !defined( __DEFS_H )
  14. #include <_defs.h>
  15. #endif  // __DEFS_H
  16.  
  17. #if !defined( __LIMITS_H )
  18. #include <limits.h>
  19. #endif
  20.  
  21. #pragma option -Vo-
  22. #if defined( __BCOPT__ ) && !defined( _ALLOW_po )
  23. #pragma option -po-
  24. #endif
  25.  
  26. typedef unsigned int classType;
  27. typedef unsigned int hashValueType;
  28. typedef unsigned int sizeType;
  29.  
  30. _CLASSDEF(Object)
  31.  
  32. typedef void ( _FAR *iterFuncType )( class Object _FAR &, void _FAR * );
  33. typedef int ( _FAR *condFuncType )( const class Object _FAR &, void _FAR * );
  34. typedef int    countType;
  35.  
  36. enum
  37. {
  38.     objectClass,
  39.     errorClass,
  40.     sortableClass,
  41.     stringClass,
  42.     listElementClass,
  43.     doubleListElementClass,
  44.     containerClass,
  45.     stackClass,
  46.     queueClass,
  47.     dequeClass,
  48.     collectionClass,
  49.     hashTableClass,
  50.     bagClass,
  51.     setClass,
  52.     dictionaryClass,
  53.     associationClass,
  54.     arrayClass,
  55.     sortedArrayClass,
  56.     listClass,
  57.     doubleListClass,
  58.     timeClass,
  59.     dateClass,
  60.     btreeClass,
  61.     priorityQueueClass,
  62.     __firstOWLClass = 100,
  63.     __lastLibClass = 255,
  64.     __firstUserClass,
  65.     __lastClass = UINT_MAX
  66. };
  67.  
  68. enum ClassLib_errors
  69. {
  70.     __EfirstError, // don't remove
  71.     __EDELERROR,
  72.     __EEXPANDFS,
  73.     __EEXPANDLB,
  74.     __ENOMEM,
  75.     __ENOTSORT,
  76.     __ENOTASSOC,
  77.     __EORDER3,
  78.     __ENOMEMIA,
  79.     __ENOMEMLN,
  80.     __EPRBADCLASS,
  81.     __EPRINCONS,
  82.     __EBNZERODIV,
  83.     __EBNILLLOG,
  84.     __EBNNOMEM,
  85.     __ERANDOM2SMALL,
  86.     __EBNTEMPSTKOVFL,
  87.     __EBNTEMPSTKUNFL,
  88.     __EBN2MANYTEMPS,
  89.     __EBN2BIG2PRINT,
  90.     __EBNNOMEM4PRINT,
  91.     __EBNRESULT2BIG,
  92.     __ERNG2BIG,
  93.     __EBNSQRTILLEGAL,
  94.     __ElastError   // don't remove
  95. };
  96.  
  97. void ClassLib_error( ClassLib_errors, char _FAR *addstr = 0 );
  98.  
  99. #if defined( __BCOPT__ ) && !defined( _ALLOW_po )
  100. #pragma option -po.
  101. #endif
  102. #pragma option -Vo.
  103.  
  104. #endif
  105.