home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / tolkit45.zip / os2tk45 / som / include / tdeqitr.h < prev    next >
C/C++ Source or Header  |  1999-02-22  |  8KB  |  224 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: tdeqitr.h.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.29.1.17
  7.  *     SOM Emitter emith: 2.47
  8.  */
  9.  
  10. /*
  11.  *    COMPONENT_NAME: somuc
  12.  * 
  13.  *    ORIGINS: 82, 81, 27
  14.  * 
  15.  * 
  16.  *     25H7912  (C)  COPYRIGHT International Business Machines Corp. 1992,1996,1996
  17.  *    All Rights Reserved
  18.  *    Licensed Materials - Property of IBM
  19.  *    US Government Users Restricted Rights - Use, duplication or
  20.  *    disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  21.  * 
  22.  *    Copyright ⌐ 1988-92 Apple Computer, Inc.  All rights reserved.
  23.  * 
  24.  * CLASS_NAME: somf_TDequeIterator
  25.  * 
  26.  * DESCRIPTION: An iterator for TDeque that will iterate over all of
  27.  *              the objects in a deque.
  28.  * 
  29.  */
  30.  
  31.  
  32. #ifndef SOM_somf_TDequeIterator_h
  33. #define SOM_somf_TDequeIterator_h
  34.  
  35.  
  36. /*
  37.  * Passthru lines: File: "C.h", "before"
  38.  */
  39.  
  40. #include <tdeq.h>
  41.  
  42. #include <som.h>
  43.  
  44. /*
  45.  * -- This emitter treats Method Tokens as Thunks by default.
  46.  * -- Use the sc modifier "nothunks" to change this default
  47.  */
  48. #undef somresolve_
  49. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  50.  
  51. /*
  52.  * Define the class name as an object type
  53.  */
  54. #ifndef somf_TDequeIterator
  55. #define somf_TDequeIterator SOMObject
  56. #endif
  57. #include <tseqitr.h>
  58.  
  59. /*
  60.  * Start of bindings for IDL types
  61.  */
  62.  
  63. #ifndef SOMClass
  64.     #define SOMClass SOMObject
  65. #endif /* SOMClass */
  66. #ifndef somf_MCollectible
  67.     #define somf_MCollectible SOMObject
  68. #endif /* somf_MCollectible */
  69. #ifndef somf_TDeque
  70.     #define somf_TDeque SOMObject
  71. #endif /* somf_TDeque */
  72. #ifndef somf_TDequeLinkable
  73.     #define somf_TDequeLinkable SOMObject
  74. #endif /* somf_TDequeLinkable */
  75.  
  76. /*
  77.  * End of bindings for IDL types.
  78.  */
  79.  
  80. #define somf_TDequeIterator_MajorVersion 2
  81. #define somf_TDequeIterator_MinorVersion 1
  82.  
  83. /*
  84.  * External name shortening if required
  85.  */
  86. #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
  87. #define somf_TDequeIteratorNewClass c
  88. #pragma linkage(c, system)
  89. #define somf_TDequeIteratorClassData d
  90. #define somf_TDequeIteratorCClassData x
  91. #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
  92. /*--------------Migration------------*/
  93. #define somf_TDequeIterator_classObj somf_TDequeIteratorClassData.classObject
  94. #define _somf_TDequeIterator somf_TDequeIterator_classObj
  95.  
  96. /*
  97.  * Declare the class creation procedure
  98.  */
  99. SOMEXTERN SOMClass * SOMLINK somf_TDequeIteratorNewClass(integer4 somtmajorVersion,
  100.         integer4 somtminorVersion);
  101. #pragma linkage(somf_TDequeIteratorNewClass, system)
  102.  
  103. /*
  104.  * Declare the class data structure
  105.  */
  106. SOMEXTERN struct somf_TDequeIteratorClassDataStructure {
  107.     SOMClass *classObject;
  108.     somMToken somfTDequeIteratorInit;
  109. } SOMDLINK somf_TDequeIteratorClassData;
  110.  
  111. /*
  112.  * Declare the C specific class data structure
  113.  */
  114. SOMEXTERN struct somf_TDequeIteratorCClassDataStructure {
  115.     somMethodTabs parentMtab;
  116.     somDToken instanceDataToken;
  117. } SOMDLINK somf_TDequeIteratorCClassData;
  118.  
  119. /*
  120.  * New and Renew macros for somf_TDequeIterator
  121.  */
  122. #define somf_TDequeIteratorNew() \
  123.    ( _somf_TDequeIterator ? \
  124.     _somNew(_somf_TDequeIterator) \
  125.     : ( somf_TDequeIteratorNewClass(\
  126.         somf_TDequeIterator_MajorVersion, \
  127.         somf_TDequeIterator_MinorVersion),\
  128.        _somNew(_somf_TDequeIterator)))
  129. #define somf_TDequeIteratorRenew(buf) \
  130.    ( _somf_TDequeIterator ? \
  131.     _somRenew(_somf_TDequeIterator, buf) \
  132.     : ( somf_TDequeIteratorNewClass(\
  133.         somf_TDequeIterator_MajorVersion, \
  134.         somf_TDequeIterator_MinorVersion),\
  135.        _somRenew(_somf_TDequeIterator, buf)))
  136.  
  137. /*
  138.  * Override method: somfFirst
  139.  */
  140. #define somf_TDequeIterator_somfFirst(somSelf,ev) \
  141.     somf_TIterator_somfFirst(somSelf,ev)
  142.  
  143. /*
  144.  * Override method: somfNext
  145.  */
  146. #define somf_TDequeIterator_somfNext(somSelf,ev) \
  147.     somf_TIterator_somfNext(somSelf,ev)
  148.  
  149. /*
  150.  * Override method: somfLast
  151.  */
  152. #define somf_TDequeIterator_somfLast(somSelf,ev) \
  153.     somf_TSequenceIterator_somfLast(somSelf,ev)
  154.  
  155. /*
  156.  * Override method: somfPrevious
  157.  */
  158. #define somf_TDequeIterator_somfPrevious(somSelf,ev) \
  159.     somf_TSequenceIterator_somfPrevious(somSelf,ev)
  160.  
  161. /*
  162.  * Override method: somfRemove
  163.  */
  164. #define somf_TDequeIterator_somfRemove(somSelf,ev) \
  165.     somf_TIterator_somfRemove(somSelf,ev)
  166.  
  167. /*
  168.  * New Method: somfTDequeIteratorInit
  169.  */
  170. typedef somf_TDequeIterator*   SOMLINK somTP_somf_TDequeIterator_somfTDequeIteratorInit(somf_TDequeIterator *somSelf, Environment *ev, 
  171.         somf_TDeque* h);
  172. #pragma linkage(somTP_somf_TDequeIterator_somfTDequeIteratorInit, system)
  173. typedef somTP_somf_TDequeIterator_somfTDequeIteratorInit *somTD_somf_TDequeIterator_somfTDequeIteratorInit;
  174. /*
  175.  *  Initializes the new deque iterator.
  176.  */
  177. #define somMD_somf_TDequeIterator_somfTDequeIteratorInit "::somf_TDequeIterator::somfTDequeIteratorInit"
  178. #define somf_TDequeIterator_somfTDequeIteratorInit(somSelf,ev,h) \
  179.     (SOM_Resolve(somSelf, somf_TDequeIterator, somfTDequeIteratorInit) \
  180.     (somSelf,ev,h))
  181. #ifndef SOMGD_somfTDequeIteratorInit
  182.     #if (defined(_somfTDequeIteratorInit) || defined(__somfTDequeIteratorInit))
  183.         #undef _somfTDequeIteratorInit
  184.         #undef __somfTDequeIteratorInit
  185.         #define SOMGD_somfTDequeIteratorInit 1
  186.     #else
  187.         #define _somfTDequeIteratorInit somf_TDequeIterator_somfTDequeIteratorInit
  188.     #endif /* _somfTDequeIteratorInit */
  189. #endif /* SOMGD_somfTDequeIteratorInit */
  190. #ifndef SOM_DONT_USE_INHERITED_MACROS
  191. #define somf_TDequeIterator_somDefaultInit SOMObject_somDefaultInit
  192. #define somf_TDequeIterator_somDestruct SOMObject_somDestruct
  193. #define somf_TDequeIterator_somDefaultCopyInit SOMObject_somDefaultCopyInit
  194. #define somf_TDequeIterator_somDefaultAssign SOMObject_somDefaultAssign
  195. #define somf_TDequeIterator_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
  196. #define somf_TDequeIterator_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
  197. #define somf_TDequeIterator_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
  198. #define somf_TDequeIterator_somDefaultConstAssign SOMObject_somDefaultConstAssign
  199. #define somf_TDequeIterator_somDefaultVAssign SOMObject_somDefaultVAssign
  200. #define somf_TDequeIterator_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
  201. #define somf_TDequeIterator_somInit SOMObject_somInit
  202. #define somf_TDequeIterator_somFree SOMObject_somFree
  203. #define somf_TDequeIterator_somUninit SOMObject_somUninit
  204. #define somf_TDequeIterator_somGetClass SOMObject_somGetClass
  205. #define somf_TDequeIterator_somGetClassName SOMObject_somGetClassName
  206. #define somf_TDequeIterator_somGetSize SOMObject_somGetSize
  207. #define somf_TDequeIterator_somIsA SOMObject_somIsA
  208. #define somf_TDequeIterator_somIsInstanceOf SOMObject_somIsInstanceOf
  209. #define somf_TDequeIterator_somRespondsTo SOMObject_somRespondsTo
  210. #define somf_TDequeIterator_somDispatch SOMObject_somDispatch
  211. #define somf_TDequeIterator_somClassDispatch SOMObject_somClassDispatch
  212. #define somf_TDequeIterator_somCastObj SOMObject_somCastObj
  213. #define somf_TDequeIterator_somResetObj SOMObject_somResetObj
  214. #define somf_TDequeIterator_somDispatchV SOMObject_somDispatchV
  215. #define somf_TDequeIterator_somDispatchL SOMObject_somDispatchL
  216. #define somf_TDequeIterator_somDispatchA SOMObject_somDispatchA
  217. #define somf_TDequeIterator_somDispatchD SOMObject_somDispatchD
  218. #define somf_TDequeIterator_somPrintSelf SOMObject_somPrintSelf
  219. #define somf_TDequeIterator_somDumpSelf SOMObject_somDumpSelf
  220. #define somf_TDequeIterator_somDumpSelfInt SOMObject_somDumpSelfInt
  221. #endif /* SOM_DONT_USE_INHERITED_MACROS */
  222.  
  223. #endif       /* SOM_somf_TDequeIterator_h */
  224.