home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 1999 August / SGI Freeware 1999 August.iso / dist / fw_objc.idb / usr / freeware / include / objcrt / Object.h.z / Object.h
Encoding:
C/C++ Source or Header  |  1999-07-16  |  3.1 KB  |  146 lines

  1.  
  2. /*
  3.  * Portable Object Compiler (c) 1997,98,99.  All Rights Reserved.
  4.  * $Id: Object.h,v 1.12 1999/06/23 19:22:09 stes Exp $
  5.  */
  6.  
  7. /*
  8.  * This library is free software; you can redistribute it and/or modify it
  9.  * under the terms of the GNU Library General Public License as published 
  10.  * by the Free Software Foundation; either version 2 of the License, or
  11.  * (at your option) any later version.
  12.  *
  13.  * This program is distributed in the hope that it will be useful,
  14.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  15.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16.  * GNU Library General Public License for more details.
  17.  *
  18.  * You should have received a copy of the GNU Library General Public License
  19.  * along with this program; if not, write to the Free Software
  20.  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  21.  */
  22.  
  23. #ifndef __PORTABLE_OBJC__
  24. /* if this file is included by a different compiler, it's by mistake */
  25. #error Portable Object Compiler Object.h must not be in include path.
  26. #else
  27.  
  28. #ifndef __OBJECT_H__
  29. #define __OBJECT_H__
  30.  
  31. #include "objcrt.h"
  32. #include <string.h>
  33.  
  34. #define __objcrt_revision__ "2.3.8"
  35.  
  36. #ifdef _XtIntrinsic_h
  37. #define Object OCObject  /* remap Object class - cant use Xt Object */
  38. #endif
  39.  
  40. @interface Object
  41. {
  42.     id isa;
  43. #ifdef OBJC_REFCNT
  44.     unsigned int _refcnt;
  45. #else
  46.     unsigned short attr;  /* compatibility Stepstone */
  47.     unsigned short objID; /* compatibility Stepstone */
  48. #endif
  49. }
  50.  
  51. + initialize;
  52.  
  53. + new;
  54. - copy;
  55. - deepCopy;
  56. - free;
  57. - release;
  58.  
  59. - self;
  60. - yourself;
  61. - class;
  62. - superclass;
  63. - superClass;
  64. + class;
  65. + superclass;
  66. + superClass;
  67. - (STR) name;
  68. + (STR) name;
  69. - findClass:(STR)name;
  70. - (SEL) findSel:(STR)name;
  71. - (SEL) selOfSTR:(STR)name;
  72. - idOfSTR:(STR)aClassName;
  73.  
  74. - (unsigned) hash;
  75. - (BOOL) isEqual:anObject;
  76. - (STR) str;
  77. - (unsigned) size;
  78. + (BOOL) isEqual:anObject;
  79. - (BOOL) isSame:anObject;
  80. - (BOOL) notEqual:anObject;
  81. - (BOOL) notSame:anObject;
  82. - (int) compare:anObject;
  83.  
  84. - (BOOL) respondsTo:(SEL)aSelector;
  85. - (BOOL) isMemberOf:aClass;
  86. - (BOOL) isKindOf:aClass;
  87.  
  88. + someInstance;
  89. - nextInstance;
  90. - become:other;
  91.  
  92. + subclasses;
  93. + poseAs:superClass;
  94. + addMethodsTo:superClass;
  95. + subclass:(STR)name;
  96. + (BOOL) inheritsFrom:aClass;
  97.  
  98. - subclassResponsibility;
  99. - subclassResponsibility:(SEL)aSelector;
  100. - notImplemented;
  101. - notImplemented:(SEL)aSelector;
  102. - shouldNotImplement;
  103. - shouldNotImplement:(SEL)aSelector;
  104. - shouldNotImplement:(SEL)aSelector from:superClass;
  105. - error:(STR)format,...;
  106. - halt:message;
  107.  
  108. - doesNotRecognize:(SEL)aSelector;
  109. - doesNotUnderstand:aMessage;
  110.  
  111. - (IMP) methodFor:(SEL)aSelector;
  112. + (IMP) instanceMethodFor:(SEL)aSelector;
  113.  
  114. - perform:(SEL)aSelector;
  115. - perform:(SEL)aSelector with:anObject;
  116. - perform:(SEL)aSelector with:anObject with:otherObject;
  117. - perform:(SEL)aSelector with:anObject with:otherObject with:thirdObj;
  118.  
  119. - print;
  120. + print;
  121. - printLine;
  122. - show;
  123. - printOn:(IOD)anIOD;
  124.  
  125. + (STR) objcrtRevision;
  126.  
  127. + readFrom:(STR)aFileName;
  128. - (BOOL) storeOn:(STR)aFileName;
  129.  
  130. - fileOutOn:aFiler;
  131. + fileInFrom:aFiler;
  132. - fileInFrom:aFiler;
  133. - fileOut:(void *)value type:(char)typeDesc;
  134. - fileIn:(void *)value type:(char)typeDesc;
  135. - awake;
  136. - awakeFrom:aFiler;
  137.  
  138. @end
  139.  
  140. #endif /* __OBJECT_H__ */
  141.  
  142. #endif /* __PORTABLE_OBJC__ */
  143.  
  144.  
  145.  
  146.