home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / tolkit45.zip / os2tk45 / som / include / scmeta.xh < prev    next >
Text File  |  1999-02-22  |  34KB  |  1,079 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: scmeta.xh.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.29.1.17
  7.  *     SOM Emitter emitxh: 2.47
  8.  */
  9.  
  10. /*
  11.  *   COMPONENT_NAME: some
  12.  * 
  13.  *   ORIGINS: 27
  14.  * 
  15.  * 
  16.  *    25H7912  (C)  COPYRIGHT International Business Machines Corp. 1992,1994,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.  *  @(#) somc/sctypes.h 2.7 12/26/95 16:26:17 [7/30/96 14:46:04]
  22.  * 
  23.  */
  24.  
  25.  
  26. #ifndef SOM_SOMTMetaClassEntryC_xh
  27. #define SOM_SOMTMetaClassEntryC_xh
  28.  
  29. class SOMTMetaClassEntryC;
  30.  
  31. #define SOMTMetaClassEntryC_MajorVersion 2
  32. #define SOMTMetaClassEntryC_MinorVersion 1
  33.  
  34. /* C++ SOM defs */
  35. #include <somcls.xh>
  36. #include <somcm.xh>
  37.  
  38. /* C++ parent defs */
  39. #ifndef SOM_SOMTEntryC_xh
  40. #include <scentry.xh>
  41. #endif
  42.  
  43. #ifndef SOMTMetaClassEntryC_API
  44. #define SOMTMetaClassEntryC_API
  45. /*
  46.  * -- The Class API
  47.  */
  48.  
  49. /*
  50.  * Start of bindings for IDL types
  51.  */
  52.  
  53. class SOMClass;
  54. class SOMObject;
  55. class SOMTEntryC;
  56. class SOMTEmitC;
  57. class SOMTMetaClassEntryC;
  58. class SOMTAttributeEntryC;
  59. class SOMTTypedefEntryC;
  60. class SOMTBaseClassEntryC;
  61. class SOMTPassthruEntryC;
  62. class SOMTDataEntryC;
  63. class SOMTMethodEntryC;
  64. class SOMTClassEntryC;
  65. class SOMTModuleEntryC;
  66. class SOMTParameterEntryC;
  67. class SOMTStructEntryC;
  68. class SOMTUnionEntryC;
  69. class SOMTEnumEntryC;
  70. class SOMTConstEntryC;
  71. class SOMTSequenceEntryC;
  72. class SOMTStringEntryC;
  73. class SOMTEnumNameEntryC;
  74. class SOMTCommonEntryC;
  75. class SOMTUserDefinedTypeEntryC;
  76.  
  77. /*
  78.  * End of bindings for IDL types.
  79.  */
  80.  
  81. /* A procedure to create the SOMTMetaClassEntryC Class */
  82. SOMEXTERN SOMClass * SOMLINK SOMTMetaClassEntryCNewClass(
  83.         integer4 majorVersion,
  84.         integer4 minorVersion);
  85.  
  86. /* The API to the SOMTMetaClassEntryC class object, and the methods it introduces. */
  87. SOMEXTERN struct SOMTMetaClassEntryCClassDataStructure {
  88.     SOMClass *classObject;
  89.     somMToken _get_somtMetaFile;
  90.     somMToken _get_somtMetaClassDef;
  91. } SOMDLINK SOMTMetaClassEntryCClassData;
  92. #define _SOMTMetaClassEntryC SOMTMetaClassEntryCClassData.classObject
  93.  
  94. /* The API to parentMtabs for SOMTMetaClassEntryC, and the instance data it introduces. */
  95. SOMEXTERN struct SOMTMetaClassEntryCCClassDataStructure {
  96.     somMethodTabs parentMtab;
  97.     somDToken              instanceDataToken;
  98. } SOMDLINK SOMTMetaClassEntryCCClassData;
  99.  
  100. /*
  101.  * -- Typedefs for SOMTMetaClassEntryC Method Procedures
  102.  */
  103. SOMEXTERN {
  104. typedef string   SOMLINK somTP_SOMTMetaClassEntryC__get_somtMetaFile(SOMTMetaClassEntryC *somSelf);
  105. typedef somTP_SOMTMetaClassEntryC__get_somtMetaFile *somTD_SOMTMetaClassEntryC__get_somtMetaFile;
  106. typedef SOMTClassEntryC*   SOMLINK somTP_SOMTMetaClassEntryC__get_somtMetaClassDef(SOMTMetaClassEntryC *somSelf);
  107. typedef somTP_SOMTMetaClassEntryC__get_somtMetaClassDef *somTD_SOMTMetaClassEntryC__get_somtMetaClassDef;
  108.  
  109. /*
  110.  * -- Typedefs for Reintroduced Wrapper Methods
  111.  */
  112. typedef string   SOMLINK somTP_SOMTMetaClassEntryC__get_somtEntryName(SOMTMetaClassEntryC *somSelf);
  113. typedef somTP_SOMTMetaClassEntryC__get_somtEntryName *somTD_SOMTMetaClassEntryC__get_somtEntryName;
  114. typedef void   SOMLINK somTP_SOMTMetaClassEntryC__set_somtEntryName(SOMTMetaClassEntryC *somSelf, 
  115.         string somtEntryName);
  116. typedef somTP_SOMTMetaClassEntryC__set_somtEntryName *somTD_SOMTMetaClassEntryC__set_somtEntryName;
  117. typedef SOMTTypes   SOMLINK somTP_SOMTMetaClassEntryC__get_somtElementType(SOMTMetaClassEntryC *somSelf);
  118. typedef somTP_SOMTMetaClassEntryC__get_somtElementType *somTD_SOMTMetaClassEntryC__get_somtElementType;
  119. typedef void   SOMLINK somTP_SOMTMetaClassEntryC__set_somtElementType(SOMTMetaClassEntryC *somSelf, 
  120.         SOMTTypes somtElementType);
  121. typedef somTP_SOMTMetaClassEntryC__set_somtElementType *somTD_SOMTMetaClassEntryC__set_somtElementType;
  122. typedef string   SOMLINK somTP_SOMTMetaClassEntryC__get_somtElementTypeName(SOMTMetaClassEntryC *somSelf);
  123. typedef somTP_SOMTMetaClassEntryC__get_somtElementTypeName *somTD_SOMTMetaClassEntryC__get_somtElementTypeName;
  124. typedef string   SOMLINK somTP_SOMTMetaClassEntryC__get_somtEntryComment(SOMTMetaClassEntryC *somSelf);
  125. typedef somTP_SOMTMetaClassEntryC__get_somtEntryComment *somTD_SOMTMetaClassEntryC__get_somtEntryComment;
  126. typedef unsigned long   SOMLINK somTP_SOMTMetaClassEntryC__get_somtSourceLineNumber(SOMTMetaClassEntryC *somSelf);
  127. typedef somTP_SOMTMetaClassEntryC__get_somtSourceLineNumber *somTD_SOMTMetaClassEntryC__get_somtSourceLineNumber;
  128. typedef TypeCode   SOMLINK somTP_SOMTMetaClassEntryC__get_somtTypeCode(SOMTMetaClassEntryC *somSelf);
  129. typedef somTP_SOMTMetaClassEntryC__get_somtTypeCode *somTD_SOMTMetaClassEntryC__get_somtTypeCode;
  130. typedef boolean   SOMLINK somTP_SOMTMetaClassEntryC__get_somtIsReference(SOMTMetaClassEntryC *somSelf);
  131. typedef somTP_SOMTMetaClassEntryC__get_somtIsReference *somTD_SOMTMetaClassEntryC__get_somtIsReference;
  132. typedef string   SOMLINK somTP_SOMTMetaClassEntryC__get_somtIDLScopedName(SOMTMetaClassEntryC *somSelf);
  133. typedef somTP_SOMTMetaClassEntryC__get_somtIDLScopedName *somTD_SOMTMetaClassEntryC__get_somtIDLScopedName;
  134. typedef string   SOMLINK somTP_SOMTMetaClassEntryC__get_somtCScopedName(SOMTMetaClassEntryC *somSelf);
  135. typedef somTP_SOMTMetaClassEntryC__get_somtCScopedName *somTD_SOMTMetaClassEntryC__get_somtCScopedName;
  136. typedef string   SOMLINK somTP_SOMTMetaClassEntryC_somtGetModifierValue(SOMTMetaClassEntryC *somSelf, 
  137.         string modifierName);
  138. typedef somTP_SOMTMetaClassEntryC_somtGetModifierValue *somTD_SOMTMetaClassEntryC_somtGetModifierValue;
  139. typedef boolean   SOMLINK somTP_SOMTMetaClassEntryC_somtGetFirstModifier(SOMTMetaClassEntryC *somSelf, 
  140.         string* modifierName, 
  141.         string* modifierValue);
  142. typedef somTP_SOMTMetaClassEntryC_somtGetFirstModifier *somTD_SOMTMetaClassEntryC_somtGetFirstModifier;
  143. typedef boolean   SOMLINK somTP_SOMTMetaClassEntryC_somtGetNextModifier(SOMTMetaClassEntryC *somSelf, 
  144.         string* modifierName, 
  145.         string* modifierValue);
  146. typedef somTP_SOMTMetaClassEntryC_somtGetNextModifier *somTD_SOMTMetaClassEntryC_somtGetNextModifier;
  147. typedef long   SOMLINK somTP_SOMTMetaClassEntryC_somtFormatModifier(SOMTMetaClassEntryC *somSelf, 
  148.         string buffer, 
  149.         string name, 
  150.         string value);
  151. typedef somTP_SOMTMetaClassEntryC_somtFormatModifier *somTD_SOMTMetaClassEntryC_somtFormatModifier;
  152. typedef long   SOMLINK somTP_SOMTMetaClassEntryC_somtGetModifierList(SOMTMetaClassEntryC *somSelf, 
  153.         string buffer);
  154. typedef somTP_SOMTMetaClassEntryC_somtGetModifierList *somTD_SOMTMetaClassEntryC_somtGetModifierList;
  155. typedef long   SOMLINK somTP_SOMTMetaClassEntryC_somtSetSymbolsOnEntry(SOMTMetaClassEntryC *somSelf, 
  156.         SOMTEmitC* emitter, 
  157.         string prefix);
  158. typedef somTP_SOMTMetaClassEntryC_somtSetSymbolsOnEntry *somTD_SOMTMetaClassEntryC_somtSetSymbolsOnEntry;
  159. typedef void   SOMLINK somTP_SOMTMetaClassEntryC_somtSetEntryStruct(SOMTMetaClassEntryC *somSelf, 
  160.         Entry* es);
  161. typedef somTP_SOMTMetaClassEntryC_somtSetEntryStruct *somTD_SOMTMetaClassEntryC_somtSetEntryStruct;
  162. typedef void   SOMLINK somTP_SOMTMetaClassEntryC_somInit(SOMTMetaClassEntryC *somSelf);
  163. typedef somTP_SOMTMetaClassEntryC_somInit *somTD_SOMTMetaClassEntryC_somInit;
  164. typedef void   SOMLINK somTP_SOMTMetaClassEntryC_somUninit(SOMTMetaClassEntryC *somSelf);
  165. typedef somTP_SOMTMetaClassEntryC_somUninit *somTD_SOMTMetaClassEntryC_somUninit;
  166. typedef SOMObject*   SOMLINK somTP_SOMTMetaClassEntryC_somPrintSelf(SOMTMetaClassEntryC *somSelf);
  167. typedef somTP_SOMTMetaClassEntryC_somPrintSelf *somTD_SOMTMetaClassEntryC_somPrintSelf;
  168. typedef void   SOMLINK somTP_SOMTMetaClassEntryC_somDumpSelfInt(SOMTMetaClassEntryC *somSelf, 
  169.         long level);
  170. typedef somTP_SOMTMetaClassEntryC_somDumpSelfInt *somTD_SOMTMetaClassEntryC_somDumpSelfInt;
  171. typedef void   SOMLINK somTP_SOMTMetaClassEntryC_somDumpSelf(SOMTMetaClassEntryC *somSelf, 
  172.         long level);
  173. typedef somTP_SOMTMetaClassEntryC_somDumpSelf *somTD_SOMTMetaClassEntryC_somDumpSelf;
  174. typedef void   SOMLINK somTP_SOMTMetaClassEntryC_somDefaultInit(SOMTMetaClassEntryC *somSelf, 
  175.         som3InitCtrl* ctrl);
  176. typedef somTP_SOMTMetaClassEntryC_somDefaultInit *somTD_SOMTMetaClassEntryC_somDefaultInit;
  177. typedef void   SOMLINK somTP_SOMTMetaClassEntryC_somDestruct(SOMTMetaClassEntryC *somSelf, 
  178.         octet doFree, 
  179.         som3DestructCtrl* ctrl);
  180. typedef somTP_SOMTMetaClassEntryC_somDestruct *somTD_SOMTMetaClassEntryC_somDestruct;
  181. typedef void   SOMLINK somTP_SOMTMetaClassEntryC_somDefaultCopyInit(SOMTMetaClassEntryC *somSelf, 
  182.         som3InitCtrl* ctrl, 
  183.         SOMObject* fromObj);
  184. typedef somTP_SOMTMetaClassEntryC_somDefaultCopyInit *somTD_SOMTMetaClassEntryC_somDefaultCopyInit;
  185. typedef SOMTMetaClassEntryC*   SOMLINK somTP_SOMTMetaClassEntryC_somDefaultAssign(SOMTMetaClassEntryC *somSelf, 
  186.         som3AssignCtrl* ctrl, 
  187.         SOMObject* fromObj);
  188. typedef somTP_SOMTMetaClassEntryC_somDefaultAssign *somTD_SOMTMetaClassEntryC_somDefaultAssign;
  189. typedef void   SOMLINK somTP_SOMTMetaClassEntryC_somDefaultConstCopyInit(SOMTMetaClassEntryC *somSelf, 
  190.         som3InitCtrl* ctrl, 
  191.         SOMObject* fromObj);
  192. typedef somTP_SOMTMetaClassEntryC_somDefaultConstCopyInit *somTD_SOMTMetaClassEntryC_somDefaultConstCopyInit;
  193. typedef void   SOMLINK somTP_SOMTMetaClassEntryC_somDefaultVCopyInit(SOMTMetaClassEntryC *somSelf, 
  194.         som3InitCtrl* ctrl, 
  195.         SOMObject* fromObj);
  196. typedef somTP_SOMTMetaClassEntryC_somDefaultVCopyInit *somTD_SOMTMetaClassEntryC_somDefaultVCopyInit;
  197. typedef void   SOMLINK somTP_SOMTMetaClassEntryC_somDefaultConstVCopyInit(SOMTMetaClassEntryC *somSelf, 
  198.         som3InitCtrl* ctrl, 
  199.         SOMObject* fromObj);
  200. typedef somTP_SOMTMetaClassEntryC_somDefaultConstVCopyInit *somTD_SOMTMetaClassEntryC_somDefaultConstVCopyInit;
  201. typedef SOMTMetaClassEntryC*   SOMLINK somTP_SOMTMetaClassEntryC_somDefaultConstAssign(SOMTMetaClassEntryC *somSelf, 
  202.         som3AssignCtrl* ctrl, 
  203.         SOMObject* fromObj);
  204. typedef somTP_SOMTMetaClassEntryC_somDefaultConstAssign *somTD_SOMTMetaClassEntryC_somDefaultConstAssign;
  205. typedef SOMTMetaClassEntryC*   SOMLINK somTP_SOMTMetaClassEntryC_somDefaultVAssign(SOMTMetaClassEntryC *somSelf, 
  206.         som3AssignCtrl* ctrl, 
  207.         SOMObject* fromObj);
  208. typedef somTP_SOMTMetaClassEntryC_somDefaultVAssign *somTD_SOMTMetaClassEntryC_somDefaultVAssign;
  209. typedef SOMTMetaClassEntryC*   SOMLINK somTP_SOMTMetaClassEntryC_somDefaultConstVAssign(SOMTMetaClassEntryC *somSelf, 
  210.         som3AssignCtrl* ctrl, 
  211.         SOMObject* fromObj);
  212. typedef somTP_SOMTMetaClassEntryC_somDefaultConstVAssign *somTD_SOMTMetaClassEntryC_somDefaultConstVAssign;
  213. typedef void   SOMLINK somTP_SOMTMetaClassEntryC_somFree(SOMTMetaClassEntryC *somSelf);
  214. typedef somTP_SOMTMetaClassEntryC_somFree *somTD_SOMTMetaClassEntryC_somFree;
  215. typedef SOMClass*   SOMLINK somTP_SOMTMetaClassEntryC_somGetClass(SOMTMetaClassEntryC *somSelf);
  216. typedef somTP_SOMTMetaClassEntryC_somGetClass *somTD_SOMTMetaClassEntryC_somGetClass;
  217. typedef string   SOMLINK somTP_SOMTMetaClassEntryC_somGetClassName(SOMTMetaClassEntryC *somSelf);
  218. typedef somTP_SOMTMetaClassEntryC_somGetClassName *somTD_SOMTMetaClassEntryC_somGetClassName;
  219. typedef long   SOMLINK somTP_SOMTMetaClassEntryC_somGetSize(SOMTMetaClassEntryC *somSelf);
  220. typedef somTP_SOMTMetaClassEntryC_somGetSize *somTD_SOMTMetaClassEntryC_somGetSize;
  221. typedef boolean   SOMLINK somTP_SOMTMetaClassEntryC_somIsA(SOMTMetaClassEntryC *somSelf, 
  222.         SOMClass* aClassObj);
  223. typedef somTP_SOMTMetaClassEntryC_somIsA *somTD_SOMTMetaClassEntryC_somIsA;
  224. typedef boolean   SOMLINK somTP_SOMTMetaClassEntryC_somIsInstanceOf(SOMTMetaClassEntryC *somSelf, 
  225.         SOMClass* aClassObj);
  226. typedef somTP_SOMTMetaClassEntryC_somIsInstanceOf *somTD_SOMTMetaClassEntryC_somIsInstanceOf;
  227. typedef boolean   SOMLINK somTP_SOMTMetaClassEntryC_somRespondsTo(SOMTMetaClassEntryC *somSelf, 
  228.         somId mId);
  229. typedef somTP_SOMTMetaClassEntryC_somRespondsTo *somTD_SOMTMetaClassEntryC_somRespondsTo;
  230. typedef boolean   SOMLINK somTP_SOMTMetaClassEntryC_somDispatch(SOMTMetaClassEntryC *somSelf, 
  231.         somToken* retValue, 
  232.         somId methodId, 
  233.         va_list ap);
  234. typedef somTP_SOMTMetaClassEntryC_somDispatch *somTD_SOMTMetaClassEntryC_somDispatch;
  235. typedef boolean   SOMLINK somTP_SOMTMetaClassEntryC_somClassDispatch(SOMTMetaClassEntryC *somSelf, 
  236.         SOMClass* clsObj, 
  237.         somToken* retValue, 
  238.         somId methodId, 
  239.         va_list ap);
  240. typedef somTP_SOMTMetaClassEntryC_somClassDispatch *somTD_SOMTMetaClassEntryC_somClassDispatch;
  241. typedef boolean   SOMLINK somTP_SOMTMetaClassEntryC_somCastObj(SOMTMetaClassEntryC *somSelf, 
  242.         SOMClass* cls);
  243. typedef somTP_SOMTMetaClassEntryC_somCastObj *somTD_SOMTMetaClassEntryC_somCastObj;
  244. typedef boolean   SOMLINK somTP_SOMTMetaClassEntryC_somResetObj(SOMTMetaClassEntryC *somSelf);
  245. typedef somTP_SOMTMetaClassEntryC_somResetObj *somTD_SOMTMetaClassEntryC_somResetObj;
  246. typedef void   SOMLINK somTP_SOMTMetaClassEntryC_somDispatchV(SOMTMetaClassEntryC *somSelf, 
  247.         somId methodId, 
  248.         somId descriptor, 
  249.         va_list ap);
  250. typedef somTP_SOMTMetaClassEntryC_somDispatchV *somTD_SOMTMetaClassEntryC_somDispatchV;
  251. typedef long   SOMLINK somTP_SOMTMetaClassEntryC_somDispatchL(SOMTMetaClassEntryC *somSelf, 
  252.         somId methodId, 
  253.         somId descriptor, 
  254.         va_list ap);
  255. typedef somTP_SOMTMetaClassEntryC_somDispatchL *somTD_SOMTMetaClassEntryC_somDispatchL;
  256. typedef void*   SOMLINK somTP_SOMTMetaClassEntryC_somDispatchA(SOMTMetaClassEntryC *somSelf, 
  257.         somId methodId, 
  258.         somId descriptor, 
  259.         va_list ap);
  260. typedef somTP_SOMTMetaClassEntryC_somDispatchA *somTD_SOMTMetaClassEntryC_somDispatchA;
  261. typedef double   SOMLINK somTP_SOMTMetaClassEntryC_somDispatchD(SOMTMetaClassEntryC *somSelf, 
  262.         somId methodId, 
  263.         somId descriptor, 
  264.         va_list ap);
  265. typedef somTP_SOMTMetaClassEntryC_somDispatchD *somTD_SOMTMetaClassEntryC_somDispatchD;
  266. }
  267.  
  268. #endif /* SOMTMetaClassEntryC_API */
  269.  
  270.  
  271. /*
  272.  * -- This emitter treats Method Tokens as Thunks by default.
  273.  * -- Use the sc modifier "nothunks" to change this default
  274.  */
  275. #undef somresolve_
  276. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  277.  
  278. /*
  279.  * -- The C++ Wrapper Class for SOMTMetaClassEntryC
  280.  */
  281. class SOMTMetaClassEntryC : public SOMTEntryC
  282. {
  283. public:
  284.  
  285. // SOMTMetaClassEntryC::new creates the class object if necessary, and then uses somNewNoInit
  286. // to allocate memory and create the object. Initialization is in ctors.
  287. void *operator new(size_t)
  288. {
  289.    if (!_SOMTMetaClassEntryC) SOMTMetaClassEntryCNewClass(SOMTMetaClassEntryC_MajorVersion,SOMTMetaClassEntryC_MinorVersion);
  290.    return (void*)
  291.       SOM_Resolve(_SOMTMetaClassEntryC,SOMClass,somNewNoInit)
  292.          ((SOMClass *)((void*)_SOMTMetaClassEntryC));
  293. }
  294.  
  295. // SOMTMetaClassEntryC::delete uses somDestruct.
  296. void operator delete(void * obj)
  297. {
  298.    if (obj && *(void**)obj) {
  299.       SOM_Resolve(obj,SOMObject,somFree)
  300.          ((SOMObject*)obj);
  301.    }
  302. }
  303.  
  304. SOMTMetaClassEntryC& operator=(SOMTMetaClassEntryC& fromObj)
  305. {
  306.    this->somDefaultAssign(0,(SOMObject*)((void*)&fromObj));
  307.    return *this;
  308. }
  309.  
  310. SOMTMetaClassEntryC()
  311. {
  312.    if (*(void**)this != 
  313.        ((somParentMtabStructPtr)
  314.         (SOMTMetaClassEntryCCClassData.parentMtab))->mtab)
  315.       return;
  316.    ((SOMObject*)((void*)this))->somDefaultInit(0);
  317. }
  318.  
  319. SOMTMetaClassEntryC(SOMTMetaClassEntryC* fromObj)
  320. {
  321.    if (*(void**)this != 
  322.        ((somParentMtabStructPtr)
  323.         (SOMTMetaClassEntryCCClassData.parentMtab))->mtab)
  324.       return;
  325.    ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  326. }
  327.  
  328. #ifdef __IBMCPP__
  329. #pragma info(nocnv,nopar)
  330. #endif
  331. SOMTMetaClassEntryC(const SOMTMetaClassEntryC* fromObj)
  332. {
  333.    if (*(void**)this != 
  334.        ((somParentMtabStructPtr)
  335.         (SOMTMetaClassEntryCCClassData.parentMtab))->mtab)
  336.       return;
  337.    ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
  338. }
  339. #ifdef __IBMCPP__
  340. #pragma info(restore)
  341. #endif
  342.  
  343.  
  344. /* method: _get_somtMetaFile */
  345. string   _get_somtMetaFile()
  346. {
  347. /*
  348.  *  Returns the name of the file containing the definition of the
  349.  *  meta class named in this entry.
  350.  */
  351.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTMetaClassEntryC,_get_somtMetaFile)
  352.     (this);
  353. }
  354.  
  355.  
  356. /* method: _get_somtMetaClassDef */
  357. SOMTClassEntryC*   _get_somtMetaClassDef()
  358. {
  359. /*
  360.  *  Returns the class definition entry for the meta class named in
  361.  *  this entry.
  362.  */
  363.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTMetaClassEntryC,_get_somtMetaClassDef)
  364.     (this);
  365. }
  366.  
  367.  
  368. /*
  369.  * Reintroduce inherited methods
  370.  */
  371.  
  372. /* method: _get_somtEntryName */
  373. string   _get_somtEntryName()
  374. {
  375. /*
  376.  *  The name associated with this entry.  Eg, the name of
  377.  *  the data item, the class, the method, the type, etc.
  378.  */
  379.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,_get_somtEntryName)
  380.     (this);
  381. }
  382.  
  383.  
  384. /* method: _set_somtEntryName */
  385. void   _set_somtEntryName(string somtEntryName)
  386. {
  387. /*
  388.  *  The name associated with this entry.  Eg, the name of
  389.  *  the data item, the class, the method, the type, etc.
  390.  */
  391.    SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,_set_somtEntryName)
  392.     (this,somtEntryName);
  393. }
  394.  
  395.  
  396. /* method: _get_somtElementType */
  397. SOMTTypes   _get_somtElementType()
  398. {
  399. /*
  400.  *  Returns the type of this entry.
  401.  *  This is not datatype, but entry type (method, class,
  402.  *  passthru, etc.). The value is defined by SOMTTypes.
  403.  */
  404.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,_get_somtElementType)
  405.     (this);
  406. }
  407.  
  408.  
  409. /* method: _set_somtElementType */
  410. void   _set_somtElementType(SOMTTypes somtElementType)
  411. {
  412. /*
  413.  *  Returns the type of this entry.
  414.  *  This is not datatype, but entry type (method, class,
  415.  *  passthru, etc.). The value is defined by SOMTTypes.
  416.  */
  417.    SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,_set_somtElementType)
  418.     (this,somtElementType);
  419. }
  420.  
  421.  
  422. /* method: _get_somtElementTypeName */
  423. string   _get_somtElementTypeName()
  424. {
  425. /*
  426.  *  String version of somtElementType.
  427.  */
  428.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,_get_somtElementTypeName)
  429.     (this);
  430. }
  431.  
  432.  
  433. /* method: _get_somtEntryComment */
  434. string   _get_somtEntryComment()
  435. {
  436. /*
  437.  *  Returns the comment associated with this entry, or NULL is this
  438.  *  entry has no associated comment.  Comments will have comment
  439.  *  delimitors removed, but will retain newline characters as
  440.  *  specified in the source file. (use smLookupComment)
  441.  */
  442.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,_get_somtEntryComment)
  443.     (this);
  444. }
  445.  
  446.  
  447. /* method: _get_somtSourceLineNumber */
  448. unsigned long   _get_somtSourceLineNumber()
  449. {
  450. /*
  451.  *  Returns the line number in the source file where this entry's
  452.  *  syntactic form ended.
  453.  */
  454.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,_get_somtSourceLineNumber)
  455.     (this);
  456. }
  457.  
  458.  
  459. /* method: _get_somtTypeCode */
  460. TypeCode   _get_somtTypeCode()
  461. {
  462. /*
  463.  *  The typecode, if appropriate, or NULL.
  464.  */
  465.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,_get_somtTypeCode)
  466.     (this);
  467. }
  468.  
  469.  
  470. /* method: _get_somtIsReference */
  471. boolean   _get_somtIsReference()
  472. {
  473. /*
  474.  *  Whether the entry is just a reference to the real type (TRUE)
  475.  *  rather than a declaration of it (FALSE).
  476.  */
  477.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,_get_somtIsReference)
  478.     (this);
  479. }
  480.  
  481.  
  482. /* method: _get_somtIDLScopedName */
  483. string   _get_somtIDLScopedName()
  484. {
  485. /*
  486.  *  The IDL scoped name of the entry (using double colon as delimiter).
  487.  */
  488.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,_get_somtIDLScopedName)
  489.     (this);
  490. }
  491.  
  492.  
  493. /* method: _get_somtCScopedName */
  494. string   _get_somtCScopedName()
  495. {
  496. /*
  497.  *  The C scoped name of the entry (using underscore as delimiter).
  498.  */
  499.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,_get_somtCScopedName)
  500.     (this);
  501. }
  502.  
  503.  
  504. /* method: somtGetModifierValue */
  505. string   somtGetModifierValue(string modifierName)
  506. {
  507. /*
  508.  *  Returns the value of the named modifier if this entry has the
  509.  *  named modifier and NULL otherwise. Note: if the modifier is
  510.  *  present but does not have a value then a value of <'\1'> is
  511.  *  returned.
  512.  */
  513.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,somtGetModifierValue)
  514.     (this,modifierName);
  515. }
  516.  
  517.  
  518. /* method: somtGetFirstModifier */
  519. boolean   somtGetFirstModifier(string* modifierName, 
  520.         string* modifierValue)
  521. {
  522. /*
  523.  *  Returns the first modifier associated with this entry.  1 (true)
  524.  *  is returned if the entry has at least one modifier and 0 (false)
  525.  *  otherwise.
  526.  */
  527.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,somtGetFirstModifier)
  528.     (this,modifierName,modifierValue);
  529. }
  530.  
  531.  
  532. /* method: somtGetNextModifier */
  533. boolean   somtGetNextModifier(string* modifierName, 
  534.         string* modifierValue)
  535. {
  536. /*
  537.  *  Returns the next modifier (with respect to the last call to
  538.  *  <somtGetNextModifier> or <somtGetFirstModifier>)
  539.  *  associated with this entry.  1 (true) is returned if the entry
  540.  *  had another modifier and 0 (false) otherwise.
  541.  */
  542.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,somtGetNextModifier)
  543.     (this,modifierName,modifierValue);
  544. }
  545.  
  546.  
  547. /* method: somtFormatModifier */
  548. long   somtFormatModifier(string buffer, 
  549.         string name, 
  550.         string value)
  551. {
  552. /*
  553.  *  Formats the indicated name/value pair into buffer.  Buffer must
  554.  *  be big enough to hold all the formatted pair, no checks are made.
  555.  *  The number of characters added to buffer are returned (not
  556.  *  including the trailing null character).
  557.  *  Note: value may be null
  558.  *  You will probably never call this method, it is provided so that
  559.  *  you can override it to control the format returned in
  560.  *  <somtGetModifierList>.
  561.  */
  562.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,somtFormatModifier)
  563.     (this,buffer,name,value);
  564. }
  565.  
  566.  
  567. /* method: somtGetModifierList */
  568. long   somtGetModifierList(string buffer)
  569. {
  570. /*
  571.  *  The modifiers for this entry are placed in <buffer> in template
  572.  *  list form (newline separated).  Buffer must be big enough to
  573.  *  hold all the modifiers, no checks are made. The number of
  574.  *  modifiers is returned.
  575.  */
  576.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,somtGetModifierList)
  577.     (this,buffer);
  578. }
  579.  
  580.  
  581. /* method: somtSetSymbolsOnEntry */
  582. long   somtSetSymbolsOnEntry(SOMTEmitC* emitter, 
  583.         string prefix)
  584. {
  585. /*
  586.  *  Places a number of symbol/value pairs in <t>.  All the symbols
  587.  *  will begin with <prefix>.
  588.  */
  589.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,somtSetSymbolsOnEntry)
  590.     (this,emitter,prefix);
  591. }
  592.  
  593.  
  594. /* method: somtSetEntryStruct */
  595. void   somtSetEntryStruct(Entry* es)
  596. {
  597. /*
  598.  *  Sets the entry struct data member.
  599.  *  Note, when overridding this method, it is important to call the
  600.  *  parent version of the method first and then do your processing.
  601.  */
  602.    SOM_ResolveD(this,SOMTMetaClassEntryC,SOMTEntryC,somtSetEntryStruct)
  603.     (this,es);
  604. }
  605.  
  606.  
  607. /* method: somInit */
  608. void   somInit()
  609. {
  610.    SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somInit)
  611.     (this);
  612. }
  613.  
  614.  
  615. /* method: somUninit */
  616. void   somUninit()
  617. {
  618.    SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somUninit)
  619.     (this);
  620. }
  621.  
  622.  
  623. /* method: somPrintSelf */
  624. SOMObject*   somPrintSelf()
  625. {
  626.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somPrintSelf)
  627.     (this);
  628. }
  629.  
  630.  
  631. /* method: somDumpSelfInt */
  632. void   somDumpSelfInt(long level)
  633. {
  634.    SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDumpSelfInt)
  635.     (this,level);
  636. }
  637.  
  638.  
  639. /* method: somDumpSelf */
  640. void   somDumpSelf(long level)
  641. {
  642.    SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDumpSelf)
  643.     (this,level);
  644. }
  645.  
  646.  
  647. /* initializer method: somDefaultInit */
  648. void   somDefaultInit(som3InitCtrl* ctrl)
  649. {
  650. /*
  651.  *  A default initializer for a SOM object. Passing a null ctrl
  652.  *  indicates to the receiver that its class is the class of the
  653.  *  object being initialized, whereby the initializer will determine
  654.  *  an appropriate control structure.
  655.  */
  656.    SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDefaultInit)
  657.     (this,ctrl);
  658. }
  659.  
  660.  
  661. /* method: somDestruct */
  662. void   somDestruct(octet doFree, 
  663.         som3DestructCtrl* ctrl)
  664. {
  665. /*
  666.  *  The default destructor for a SOM object. A nonzero <doFree>
  667.  *  indicates that the object storage should be freed by the
  668.  *  object's class (via somDeallocate) after uninitialization.
  669.  *  As with somDefaultInit, a null ctrl can be passed.
  670.  */
  671.    SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDestruct)
  672.     (this,doFree,ctrl);
  673. }
  674.  
  675.  
  676. /* initializer method: somDefaultCopyInit */
  677. void   somDefaultCopyInit(som3InitCtrl* ctrl, 
  678.         SOMObject* fromObj)
  679. {
  680. /*
  681.  *  A default copy constructor. Use this to make copies of objects for
  682.  *  calling methods with "by-value" argument semantics.
  683.  */
  684.    SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDefaultCopyInit)
  685.     (this,ctrl,fromObj);
  686. }
  687.  
  688.  
  689. /* method: somDefaultAssign */
  690. SOMTMetaClassEntryC*  somDefaultAssign(som3AssignCtrl* ctrl, 
  691.         SOMObject* fromObj)
  692. {
  693. /*
  694.  *  A default assignment operator. Use this to "assign" the state of one
  695.  *  object to another.
  696.  */
  697.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDefaultAssign)
  698.     (this,ctrl,fromObj);
  699. }
  700.  
  701.  
  702. /* initializer method: somDefaultConstCopyInit */
  703. void   somDefaultConstCopyInit(som3InitCtrl* ctrl, 
  704.         SOMObject* fromObj)
  705. {
  706. /*
  707.  *  A default copy constructor that uses a const fromObj.
  708.  */
  709.    SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDefaultConstCopyInit)
  710.     (this,ctrl,fromObj);
  711. }
  712.  
  713.  
  714. /* initializer method: somDefaultVCopyInit */
  715. void   somDefaultVCopyInit(som3InitCtrl* ctrl, 
  716.         SOMObject* fromObj)
  717. {
  718. /*
  719.  *  A default copy constructor that uses a volatile fromObj.
  720.  */
  721.    SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDefaultVCopyInit)
  722.     (this,ctrl,fromObj);
  723. }
  724.  
  725.  
  726. /* initializer method: somDefaultConstVCopyInit */
  727. void   somDefaultConstVCopyInit(som3InitCtrl* ctrl, 
  728.         SOMObject* fromObj)
  729. {
  730. /*
  731.  *  A default copy constructor that uses a const volatile fromObj.
  732.  */
  733.    SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDefaultConstVCopyInit)
  734.     (this,ctrl,fromObj);
  735. }
  736.  
  737.  
  738. /* method: somDefaultConstAssign */
  739. SOMTMetaClassEntryC*  somDefaultConstAssign(som3AssignCtrl* ctrl, 
  740.         SOMObject* fromObj)
  741. {
  742. /*
  743.  *  A default assignment operator that uses a const fromObj.
  744.  */
  745.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDefaultConstAssign)
  746.     (this,ctrl,fromObj);
  747. }
  748.  
  749.  
  750. /* method: somDefaultVAssign */
  751. SOMTMetaClassEntryC*  somDefaultVAssign(som3AssignCtrl* ctrl, 
  752.         SOMObject* fromObj)
  753. {
  754. /*
  755.  *  A default assignment operator that uses a volatile fromObj.
  756.  */
  757.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDefaultVAssign)
  758.     (this,ctrl,fromObj);
  759. }
  760.  
  761.  
  762. /* method: somDefaultConstVAssign */
  763. SOMTMetaClassEntryC*  somDefaultConstVAssign(som3AssignCtrl* ctrl, 
  764.         SOMObject* fromObj)
  765. {
  766. /*
  767.  *  A default assignment operator that uses a const volatile fromObj.
  768.  */
  769.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDefaultConstVAssign)
  770.     (this,ctrl,fromObj);
  771. }
  772.  
  773.  
  774. /* method: somFree */
  775. void   somFree()
  776. {
  777. /*
  778.  *  Use as directed by framework implementations.
  779.  */
  780.    SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somFree)
  781.     (this);
  782. }
  783.  
  784.  
  785. /* method: somGetClass */
  786. SOMClass*   somGetClass()
  787. {
  788. /*
  789.  *  Return the receiver's class.
  790.  */
  791.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somGetClass)
  792.     (this);
  793. }
  794.  
  795.  
  796. /* method: somGetClassName */
  797. string   somGetClassName()
  798. {
  799. /*
  800.  *  Return the name of the receiver's class.
  801.  */
  802.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somGetClassName)
  803.     (this);
  804. }
  805.  
  806.  
  807. /* method: somGetSize */
  808. long   somGetSize()
  809. {
  810. /*
  811.  *  Return the size of the receiver.
  812.  */
  813.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somGetSize)
  814.     (this);
  815. }
  816.  
  817.  
  818. /* method: somIsA */
  819. boolean   somIsA(SOMClass* aClassObj)
  820. {
  821. /*
  822.  *  Returns 1 (true) if the receiver responds to methods
  823.  *  introduced by <aClassObj>, and 0 (false) otherwise.
  824.  */
  825.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somIsA)
  826.     (this,aClassObj);
  827. }
  828.  
  829.  
  830. /* method: somIsInstanceOf */
  831. boolean   somIsInstanceOf(SOMClass* aClassObj)
  832. {
  833. /*
  834.  *  Returns 1 (true) if the receiver is an instance of
  835.  *  <aClassObj> and 0 (false) otherwise.
  836.  */
  837.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somIsInstanceOf)
  838.     (this,aClassObj);
  839. }
  840.  
  841.  
  842. /* method: somRespondsTo */
  843. boolean   somRespondsTo(somId mId)
  844. {
  845. /*
  846.  *  Returns 1 (true) if the indicated method can be invoked
  847.  *  on the receiver and 0 (false) otherwise.
  848.  */
  849.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somRespondsTo)
  850.     (this,mId);
  851. }
  852.  
  853.  
  854. /* va_list method: somDispatch */
  855.  
  856. /*
  857.  *  This method provides a generic, class-specific dispatch mechanism.
  858.  *  It accepts as input <retValue> a pointer to the memory area to be
  859.  *  loaded with the result of dispatching the method indicated by
  860.  *  <methodId> using the arguments in <ap>. <ap> contains the object
  861.  *  on which the method is to be invoked as the first argument.
  862.  */
  863. /* the va_list invocation form */
  864. boolean   SOMTMetaClassEntryC_somDispatch(somToken* retValue, 
  865.         somId methodId, 
  866.         va_list ap)
  867. {return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDispatch)
  868.     (this,retValue,methodId,ap);
  869. }
  870.  
  871. /* the varargs invocation form */
  872. boolean   somDispatch(somToken* retValue, 
  873.         somId methodId, 
  874.         ...)
  875. {
  876. /*
  877.  *  This method provides a generic, class-specific dispatch mechanism.
  878.  *  It accepts as input <retValue> a pointer to the memory area to be
  879.  *  loaded with the result of dispatching the method indicated by
  880.  *  <methodId> using the arguments in <ap>. <ap> contains the object
  881.  *  on which the method is to be invoked as the first argument.
  882.  */
  883.    va_list ap;
  884.    va_start(ap, methodId);
  885.    boolean __somResult = 
  886.       SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDispatch)
  887.     (this,retValue,methodId,ap);
  888.    va_end(ap);
  889.    return __somResult;
  890. }
  891.  
  892.  
  893. /* va_list method: somClassDispatch */
  894.  
  895. /*
  896.  *  Like somDispatch, but method resolution for static methods is done
  897.  *  according to the clsObj instance method table.
  898.  */
  899. /* the va_list invocation form */
  900. boolean   SOMTMetaClassEntryC_somClassDispatch(SOMClass* clsObj, 
  901.         somToken* retValue, 
  902.         somId methodId, 
  903.         va_list ap)
  904. {return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somClassDispatch)
  905.     (this,clsObj,retValue,methodId,ap);
  906. }
  907.  
  908. /* the varargs invocation form */
  909. boolean   somClassDispatch(SOMClass* clsObj, 
  910.         somToken* retValue, 
  911.         somId methodId, 
  912.         ...)
  913. {
  914. /*
  915.  *  Like somDispatch, but method resolution for static methods is done
  916.  *  according to the clsObj instance method table.
  917.  */
  918.    va_list ap;
  919.    va_start(ap, methodId);
  920.    boolean __somResult = 
  921.       SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somClassDispatch)
  922.     (this,clsObj,retValue,methodId,ap);
  923.    va_end(ap);
  924.    return __somResult;
  925. }
  926.  
  927.  
  928. /* method: somCastObj */
  929. boolean   somCastObj(SOMClass* cls)
  930. {
  931. /*
  932.  *  cast the receiving object to cls (which must be an ancestor of the
  933.  *  objects true class. Returns true on success.
  934.  */
  935.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somCastObj)
  936.     (this,cls);
  937. }
  938.  
  939.  
  940. /* method: somResetObj */
  941. boolean   somResetObj()
  942. {
  943. /*
  944.  *  reset an object to its true class. Returns true always.
  945.  */
  946.    return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somResetObj)
  947.     (this);
  948. }
  949.  
  950.  
  951. /* va_list method: somDispatchV */
  952.  
  953. /*
  954.  *  Obsolete. Use somDispatch instead.
  955.  */
  956. /* the va_list invocation form */
  957. void   SOMTMetaClassEntryC_somDispatchV(somId methodId, 
  958.         somId descriptor, 
  959.         va_list ap)
  960. {   SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDispatchV)
  961.     (this,methodId,descriptor,ap);
  962. }
  963.  
  964. /* the varargs invocation form */
  965. void   somDispatchV(somId methodId, 
  966.         somId descriptor, 
  967.         ...)
  968. {
  969. /*
  970.  *  Obsolete. Use somDispatch instead.
  971.  */
  972.    va_list ap;
  973.    va_start(ap, descriptor);
  974.    SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDispatchV)
  975.     (this,methodId,descriptor,ap);
  976.    va_end(ap);
  977. }
  978.  
  979.  
  980. /* va_list method: somDispatchL */
  981.  
  982. /*
  983.  *  Obsolete. Use somDispatch instead.
  984.  */
  985. /* the va_list invocation form */
  986. long   SOMTMetaClassEntryC_somDispatchL(somId methodId, 
  987.         somId descriptor, 
  988.         va_list ap)
  989. {return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDispatchL)
  990.     (this,methodId,descriptor,ap);
  991. }
  992.  
  993. /* the varargs invocation form */
  994. long   somDispatchL(somId methodId, 
  995.         somId descriptor, 
  996.         ...)
  997. {
  998. /*
  999.  *  Obsolete. Use somDispatch instead.
  1000.  */
  1001.    va_list ap;
  1002.    va_start(ap, descriptor);
  1003.    long __somResult = 
  1004.       SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDispatchL)
  1005.     (this,methodId,descriptor,ap);
  1006.    va_end(ap);
  1007.    return __somResult;
  1008. }
  1009.  
  1010.  
  1011. /* va_list method: somDispatchA */
  1012.  
  1013. /*
  1014.  *  Obsolete. Use somDispatch instead.
  1015.  */
  1016. /* the va_list invocation form */
  1017. void*   SOMTMetaClassEntryC_somDispatchA(somId methodId, 
  1018.         somId descriptor, 
  1019.         va_list ap)
  1020. {return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDispatchA)
  1021.     (this,methodId,descriptor,ap);
  1022. }
  1023.  
  1024. /* the varargs invocation form */
  1025. void*   somDispatchA(somId methodId, 
  1026.         somId descriptor, 
  1027.         ...)
  1028. {
  1029. /*
  1030.  *  Obsolete. Use somDispatch instead.
  1031.  */
  1032.    va_list ap;
  1033.    va_start(ap, descriptor);
  1034.    void* __somResult = 
  1035.       SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDispatchA)
  1036.     (this,methodId,descriptor,ap);
  1037.    va_end(ap);
  1038.    return __somResult;
  1039. }
  1040.  
  1041.  
  1042. /* va_list method: somDispatchD */
  1043.  
  1044. /*
  1045.  *  Obsolete. Use somDispatch instead.
  1046.  */
  1047. /* the va_list invocation form */
  1048. double   SOMTMetaClassEntryC_somDispatchD(somId methodId, 
  1049.         somId descriptor, 
  1050.         va_list ap)
  1051. {return SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDispatchD)
  1052.     (this,methodId,descriptor,ap);
  1053. }
  1054.  
  1055. /* the varargs invocation form */
  1056. double   somDispatchD(somId methodId, 
  1057.         somId descriptor, 
  1058.         ...)
  1059. {
  1060. /*
  1061.  *  Obsolete. Use somDispatch instead.
  1062.  */
  1063.    va_list ap;
  1064.    va_start(ap, descriptor);
  1065.    double __somResult = 
  1066.       SOM_ResolveD(this,SOMTMetaClassEntryC,SOMObject,somDispatchD)
  1067.     (this,methodId,descriptor,ap);
  1068.    va_end(ap);
  1069.    return __somResult;
  1070. }
  1071.  
  1072.  
  1073.  
  1074. };   /* SOMTMetaClassEntryC */
  1075.  
  1076.  
  1077.  
  1078. #endif       /* SOM_SOMTMetaClassEntryC_xh */
  1079.