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

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: scstring.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_SOMTStringEntryC_xh
  27. #define SOM_SOMTStringEntryC_xh
  28.  
  29. class SOMTStringEntryC;
  30.  
  31. #define SOMTStringEntryC_MajorVersion 2
  32. #define SOMTStringEntryC_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 SOMTStringEntryC_API
  44. #define SOMTStringEntryC_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 SOMTStringEntryC Class */
  82. SOMEXTERN SOMClass * SOMLINK SOMTStringEntryCNewClass(
  83.         integer4 majorVersion,
  84.         integer4 minorVersion);
  85.  
  86. /* The API to the SOMTStringEntryC class object, and the methods it introduces. */
  87. SOMEXTERN struct SOMTStringEntryCClassDataStructure {
  88.     SOMClass *classObject;
  89.     somMToken _get_somtStringLength;
  90. } SOMDLINK SOMTStringEntryCClassData;
  91. #define _SOMTStringEntryC SOMTStringEntryCClassData.classObject
  92.  
  93. /* The API to parentMtabs for SOMTStringEntryC, and the instance data it introduces. */
  94. SOMEXTERN struct SOMTStringEntryCCClassDataStructure {
  95.     somMethodTabs parentMtab;
  96.     somDToken              instanceDataToken;
  97. } SOMDLINK SOMTStringEntryCCClassData;
  98.  
  99. /*
  100.  * -- Typedefs for SOMTStringEntryC Method Procedures
  101.  */
  102. SOMEXTERN {
  103. typedef long   SOMLINK somTP_SOMTStringEntryC__get_somtStringLength(SOMTStringEntryC *somSelf);
  104. typedef somTP_SOMTStringEntryC__get_somtStringLength *somTD_SOMTStringEntryC__get_somtStringLength;
  105.  
  106. /*
  107.  * -- Typedefs for Reintroduced Wrapper Methods
  108.  */
  109. typedef string   SOMLINK somTP_SOMTStringEntryC__get_somtEntryName(SOMTStringEntryC *somSelf);
  110. typedef somTP_SOMTStringEntryC__get_somtEntryName *somTD_SOMTStringEntryC__get_somtEntryName;
  111. typedef void   SOMLINK somTP_SOMTStringEntryC__set_somtEntryName(SOMTStringEntryC *somSelf, 
  112.         string somtEntryName);
  113. typedef somTP_SOMTStringEntryC__set_somtEntryName *somTD_SOMTStringEntryC__set_somtEntryName;
  114. typedef SOMTTypes   SOMLINK somTP_SOMTStringEntryC__get_somtElementType(SOMTStringEntryC *somSelf);
  115. typedef somTP_SOMTStringEntryC__get_somtElementType *somTD_SOMTStringEntryC__get_somtElementType;
  116. typedef void   SOMLINK somTP_SOMTStringEntryC__set_somtElementType(SOMTStringEntryC *somSelf, 
  117.         SOMTTypes somtElementType);
  118. typedef somTP_SOMTStringEntryC__set_somtElementType *somTD_SOMTStringEntryC__set_somtElementType;
  119. typedef string   SOMLINK somTP_SOMTStringEntryC__get_somtElementTypeName(SOMTStringEntryC *somSelf);
  120. typedef somTP_SOMTStringEntryC__get_somtElementTypeName *somTD_SOMTStringEntryC__get_somtElementTypeName;
  121. typedef string   SOMLINK somTP_SOMTStringEntryC__get_somtEntryComment(SOMTStringEntryC *somSelf);
  122. typedef somTP_SOMTStringEntryC__get_somtEntryComment *somTD_SOMTStringEntryC__get_somtEntryComment;
  123. typedef unsigned long   SOMLINK somTP_SOMTStringEntryC__get_somtSourceLineNumber(SOMTStringEntryC *somSelf);
  124. typedef somTP_SOMTStringEntryC__get_somtSourceLineNumber *somTD_SOMTStringEntryC__get_somtSourceLineNumber;
  125. typedef TypeCode   SOMLINK somTP_SOMTStringEntryC__get_somtTypeCode(SOMTStringEntryC *somSelf);
  126. typedef somTP_SOMTStringEntryC__get_somtTypeCode *somTD_SOMTStringEntryC__get_somtTypeCode;
  127. typedef boolean   SOMLINK somTP_SOMTStringEntryC__get_somtIsReference(SOMTStringEntryC *somSelf);
  128. typedef somTP_SOMTStringEntryC__get_somtIsReference *somTD_SOMTStringEntryC__get_somtIsReference;
  129. typedef string   SOMLINK somTP_SOMTStringEntryC__get_somtIDLScopedName(SOMTStringEntryC *somSelf);
  130. typedef somTP_SOMTStringEntryC__get_somtIDLScopedName *somTD_SOMTStringEntryC__get_somtIDLScopedName;
  131. typedef string   SOMLINK somTP_SOMTStringEntryC__get_somtCScopedName(SOMTStringEntryC *somSelf);
  132. typedef somTP_SOMTStringEntryC__get_somtCScopedName *somTD_SOMTStringEntryC__get_somtCScopedName;
  133. typedef string   SOMLINK somTP_SOMTStringEntryC_somtGetModifierValue(SOMTStringEntryC *somSelf, 
  134.         string modifierName);
  135. typedef somTP_SOMTStringEntryC_somtGetModifierValue *somTD_SOMTStringEntryC_somtGetModifierValue;
  136. typedef boolean   SOMLINK somTP_SOMTStringEntryC_somtGetFirstModifier(SOMTStringEntryC *somSelf, 
  137.         string* modifierName, 
  138.         string* modifierValue);
  139. typedef somTP_SOMTStringEntryC_somtGetFirstModifier *somTD_SOMTStringEntryC_somtGetFirstModifier;
  140. typedef boolean   SOMLINK somTP_SOMTStringEntryC_somtGetNextModifier(SOMTStringEntryC *somSelf, 
  141.         string* modifierName, 
  142.         string* modifierValue);
  143. typedef somTP_SOMTStringEntryC_somtGetNextModifier *somTD_SOMTStringEntryC_somtGetNextModifier;
  144. typedef long   SOMLINK somTP_SOMTStringEntryC_somtFormatModifier(SOMTStringEntryC *somSelf, 
  145.         string buffer, 
  146.         string name, 
  147.         string value);
  148. typedef somTP_SOMTStringEntryC_somtFormatModifier *somTD_SOMTStringEntryC_somtFormatModifier;
  149. typedef long   SOMLINK somTP_SOMTStringEntryC_somtGetModifierList(SOMTStringEntryC *somSelf, 
  150.         string buffer);
  151. typedef somTP_SOMTStringEntryC_somtGetModifierList *somTD_SOMTStringEntryC_somtGetModifierList;
  152. typedef long   SOMLINK somTP_SOMTStringEntryC_somtSetSymbolsOnEntry(SOMTStringEntryC *somSelf, 
  153.         SOMTEmitC* emitter, 
  154.         string prefix);
  155. typedef somTP_SOMTStringEntryC_somtSetSymbolsOnEntry *somTD_SOMTStringEntryC_somtSetSymbolsOnEntry;
  156. typedef void   SOMLINK somTP_SOMTStringEntryC_somtSetEntryStruct(SOMTStringEntryC *somSelf, 
  157.         Entry* es);
  158. typedef somTP_SOMTStringEntryC_somtSetEntryStruct *somTD_SOMTStringEntryC_somtSetEntryStruct;
  159. typedef void   SOMLINK somTP_SOMTStringEntryC_somInit(SOMTStringEntryC *somSelf);
  160. typedef somTP_SOMTStringEntryC_somInit *somTD_SOMTStringEntryC_somInit;
  161. typedef void   SOMLINK somTP_SOMTStringEntryC_somUninit(SOMTStringEntryC *somSelf);
  162. typedef somTP_SOMTStringEntryC_somUninit *somTD_SOMTStringEntryC_somUninit;
  163. typedef SOMObject*   SOMLINK somTP_SOMTStringEntryC_somPrintSelf(SOMTStringEntryC *somSelf);
  164. typedef somTP_SOMTStringEntryC_somPrintSelf *somTD_SOMTStringEntryC_somPrintSelf;
  165. typedef void   SOMLINK somTP_SOMTStringEntryC_somDumpSelfInt(SOMTStringEntryC *somSelf, 
  166.         long level);
  167. typedef somTP_SOMTStringEntryC_somDumpSelfInt *somTD_SOMTStringEntryC_somDumpSelfInt;
  168. typedef void   SOMLINK somTP_SOMTStringEntryC_somDumpSelf(SOMTStringEntryC *somSelf, 
  169.         long level);
  170. typedef somTP_SOMTStringEntryC_somDumpSelf *somTD_SOMTStringEntryC_somDumpSelf;
  171. typedef void   SOMLINK somTP_SOMTStringEntryC_somDefaultInit(SOMTStringEntryC *somSelf, 
  172.         som3InitCtrl* ctrl);
  173. typedef somTP_SOMTStringEntryC_somDefaultInit *somTD_SOMTStringEntryC_somDefaultInit;
  174. typedef void   SOMLINK somTP_SOMTStringEntryC_somDestruct(SOMTStringEntryC *somSelf, 
  175.         octet doFree, 
  176.         som3DestructCtrl* ctrl);
  177. typedef somTP_SOMTStringEntryC_somDestruct *somTD_SOMTStringEntryC_somDestruct;
  178. typedef void   SOMLINK somTP_SOMTStringEntryC_somDefaultCopyInit(SOMTStringEntryC *somSelf, 
  179.         som3InitCtrl* ctrl, 
  180.         SOMObject* fromObj);
  181. typedef somTP_SOMTStringEntryC_somDefaultCopyInit *somTD_SOMTStringEntryC_somDefaultCopyInit;
  182. typedef SOMTStringEntryC*   SOMLINK somTP_SOMTStringEntryC_somDefaultAssign(SOMTStringEntryC *somSelf, 
  183.         som3AssignCtrl* ctrl, 
  184.         SOMObject* fromObj);
  185. typedef somTP_SOMTStringEntryC_somDefaultAssign *somTD_SOMTStringEntryC_somDefaultAssign;
  186. typedef void   SOMLINK somTP_SOMTStringEntryC_somDefaultConstCopyInit(SOMTStringEntryC *somSelf, 
  187.         som3InitCtrl* ctrl, 
  188.         SOMObject* fromObj);
  189. typedef somTP_SOMTStringEntryC_somDefaultConstCopyInit *somTD_SOMTStringEntryC_somDefaultConstCopyInit;
  190. typedef void   SOMLINK somTP_SOMTStringEntryC_somDefaultVCopyInit(SOMTStringEntryC *somSelf, 
  191.         som3InitCtrl* ctrl, 
  192.         SOMObject* fromObj);
  193. typedef somTP_SOMTStringEntryC_somDefaultVCopyInit *somTD_SOMTStringEntryC_somDefaultVCopyInit;
  194. typedef void   SOMLINK somTP_SOMTStringEntryC_somDefaultConstVCopyInit(SOMTStringEntryC *somSelf, 
  195.         som3InitCtrl* ctrl, 
  196.         SOMObject* fromObj);
  197. typedef somTP_SOMTStringEntryC_somDefaultConstVCopyInit *somTD_SOMTStringEntryC_somDefaultConstVCopyInit;
  198. typedef SOMTStringEntryC*   SOMLINK somTP_SOMTStringEntryC_somDefaultConstAssign(SOMTStringEntryC *somSelf, 
  199.         som3AssignCtrl* ctrl, 
  200.         SOMObject* fromObj);
  201. typedef somTP_SOMTStringEntryC_somDefaultConstAssign *somTD_SOMTStringEntryC_somDefaultConstAssign;
  202. typedef SOMTStringEntryC*   SOMLINK somTP_SOMTStringEntryC_somDefaultVAssign(SOMTStringEntryC *somSelf, 
  203.         som3AssignCtrl* ctrl, 
  204.         SOMObject* fromObj);
  205. typedef somTP_SOMTStringEntryC_somDefaultVAssign *somTD_SOMTStringEntryC_somDefaultVAssign;
  206. typedef SOMTStringEntryC*   SOMLINK somTP_SOMTStringEntryC_somDefaultConstVAssign(SOMTStringEntryC *somSelf, 
  207.         som3AssignCtrl* ctrl, 
  208.         SOMObject* fromObj);
  209. typedef somTP_SOMTStringEntryC_somDefaultConstVAssign *somTD_SOMTStringEntryC_somDefaultConstVAssign;
  210. typedef void   SOMLINK somTP_SOMTStringEntryC_somFree(SOMTStringEntryC *somSelf);
  211. typedef somTP_SOMTStringEntryC_somFree *somTD_SOMTStringEntryC_somFree;
  212. typedef SOMClass*   SOMLINK somTP_SOMTStringEntryC_somGetClass(SOMTStringEntryC *somSelf);
  213. typedef somTP_SOMTStringEntryC_somGetClass *somTD_SOMTStringEntryC_somGetClass;
  214. typedef string   SOMLINK somTP_SOMTStringEntryC_somGetClassName(SOMTStringEntryC *somSelf);
  215. typedef somTP_SOMTStringEntryC_somGetClassName *somTD_SOMTStringEntryC_somGetClassName;
  216. typedef long   SOMLINK somTP_SOMTStringEntryC_somGetSize(SOMTStringEntryC *somSelf);
  217. typedef somTP_SOMTStringEntryC_somGetSize *somTD_SOMTStringEntryC_somGetSize;
  218. typedef boolean   SOMLINK somTP_SOMTStringEntryC_somIsA(SOMTStringEntryC *somSelf, 
  219.         SOMClass* aClassObj);
  220. typedef somTP_SOMTStringEntryC_somIsA *somTD_SOMTStringEntryC_somIsA;
  221. typedef boolean   SOMLINK somTP_SOMTStringEntryC_somIsInstanceOf(SOMTStringEntryC *somSelf, 
  222.         SOMClass* aClassObj);
  223. typedef somTP_SOMTStringEntryC_somIsInstanceOf *somTD_SOMTStringEntryC_somIsInstanceOf;
  224. typedef boolean   SOMLINK somTP_SOMTStringEntryC_somRespondsTo(SOMTStringEntryC *somSelf, 
  225.         somId mId);
  226. typedef somTP_SOMTStringEntryC_somRespondsTo *somTD_SOMTStringEntryC_somRespondsTo;
  227. typedef boolean   SOMLINK somTP_SOMTStringEntryC_somDispatch(SOMTStringEntryC *somSelf, 
  228.         somToken* retValue, 
  229.         somId methodId, 
  230.         va_list ap);
  231. typedef somTP_SOMTStringEntryC_somDispatch *somTD_SOMTStringEntryC_somDispatch;
  232. typedef boolean   SOMLINK somTP_SOMTStringEntryC_somClassDispatch(SOMTStringEntryC *somSelf, 
  233.         SOMClass* clsObj, 
  234.         somToken* retValue, 
  235.         somId methodId, 
  236.         va_list ap);
  237. typedef somTP_SOMTStringEntryC_somClassDispatch *somTD_SOMTStringEntryC_somClassDispatch;
  238. typedef boolean   SOMLINK somTP_SOMTStringEntryC_somCastObj(SOMTStringEntryC *somSelf, 
  239.         SOMClass* cls);
  240. typedef somTP_SOMTStringEntryC_somCastObj *somTD_SOMTStringEntryC_somCastObj;
  241. typedef boolean   SOMLINK somTP_SOMTStringEntryC_somResetObj(SOMTStringEntryC *somSelf);
  242. typedef somTP_SOMTStringEntryC_somResetObj *somTD_SOMTStringEntryC_somResetObj;
  243. typedef void   SOMLINK somTP_SOMTStringEntryC_somDispatchV(SOMTStringEntryC *somSelf, 
  244.         somId methodId, 
  245.         somId descriptor, 
  246.         va_list ap);
  247. typedef somTP_SOMTStringEntryC_somDispatchV *somTD_SOMTStringEntryC_somDispatchV;
  248. typedef long   SOMLINK somTP_SOMTStringEntryC_somDispatchL(SOMTStringEntryC *somSelf, 
  249.         somId methodId, 
  250.         somId descriptor, 
  251.         va_list ap);
  252. typedef somTP_SOMTStringEntryC_somDispatchL *somTD_SOMTStringEntryC_somDispatchL;
  253. typedef void*   SOMLINK somTP_SOMTStringEntryC_somDispatchA(SOMTStringEntryC *somSelf, 
  254.         somId methodId, 
  255.         somId descriptor, 
  256.         va_list ap);
  257. typedef somTP_SOMTStringEntryC_somDispatchA *somTD_SOMTStringEntryC_somDispatchA;
  258. typedef double   SOMLINK somTP_SOMTStringEntryC_somDispatchD(SOMTStringEntryC *somSelf, 
  259.         somId methodId, 
  260.         somId descriptor, 
  261.         va_list ap);
  262. typedef somTP_SOMTStringEntryC_somDispatchD *somTD_SOMTStringEntryC_somDispatchD;
  263. }
  264.  
  265. #endif /* SOMTStringEntryC_API */
  266.  
  267.  
  268. /*
  269.  * -- This emitter treats Method Tokens as Thunks by default.
  270.  * -- Use the sc modifier "nothunks" to change this default
  271.  */
  272. #undef somresolve_
  273. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  274.  
  275. /*
  276.  * -- The C++ Wrapper Class for SOMTStringEntryC
  277.  */
  278. class SOMTStringEntryC : public SOMTEntryC
  279. {
  280. public:
  281.  
  282. // SOMTStringEntryC::new creates the class object if necessary, and then uses somNewNoInit
  283. // to allocate memory and create the object. Initialization is in ctors.
  284. void *operator new(size_t)
  285. {
  286.    if (!_SOMTStringEntryC) SOMTStringEntryCNewClass(SOMTStringEntryC_MajorVersion,SOMTStringEntryC_MinorVersion);
  287.    return (void*)
  288.       SOM_Resolve(_SOMTStringEntryC,SOMClass,somNewNoInit)
  289.          ((SOMClass *)((void*)_SOMTStringEntryC));
  290. }
  291.  
  292. // SOMTStringEntryC::delete uses somDestruct.
  293. void operator delete(void * obj)
  294. {
  295.    if (obj && *(void**)obj) {
  296.       SOM_Resolve(obj,SOMObject,somFree)
  297.          ((SOMObject*)obj);
  298.    }
  299. }
  300.  
  301. SOMTStringEntryC& operator=(SOMTStringEntryC& fromObj)
  302. {
  303.    this->somDefaultAssign(0,(SOMObject*)((void*)&fromObj));
  304.    return *this;
  305. }
  306.  
  307. SOMTStringEntryC()
  308. {
  309.    if (*(void**)this != 
  310.        ((somParentMtabStructPtr)
  311.         (SOMTStringEntryCCClassData.parentMtab))->mtab)
  312.       return;
  313.    ((SOMObject*)((void*)this))->somDefaultInit(0);
  314. }
  315.  
  316. SOMTStringEntryC(SOMTStringEntryC* fromObj)
  317. {
  318.    if (*(void**)this != 
  319.        ((somParentMtabStructPtr)
  320.         (SOMTStringEntryCCClassData.parentMtab))->mtab)
  321.       return;
  322.    ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  323. }
  324.  
  325. #ifdef __IBMCPP__
  326. #pragma info(nocnv,nopar)
  327. #endif
  328. SOMTStringEntryC(const SOMTStringEntryC* fromObj)
  329. {
  330.    if (*(void**)this != 
  331.        ((somParentMtabStructPtr)
  332.         (SOMTStringEntryCCClassData.parentMtab))->mtab)
  333.       return;
  334.    ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
  335. }
  336. #ifdef __IBMCPP__
  337. #pragma info(restore)
  338. #endif
  339.  
  340.  
  341. /* method: _get_somtStringLength */
  342. long   _get_somtStringLength()
  343. {
  344. /*
  345.  *  The length of the string.
  346.  */
  347.    return SOM_ResolveD(this,SOMTStringEntryC,SOMTStringEntryC,_get_somtStringLength)
  348.     (this);
  349. }
  350.  
  351.  
  352. /*
  353.  * Reintroduce inherited methods
  354.  */
  355.  
  356. /* method: _get_somtEntryName */
  357. string   _get_somtEntryName()
  358. {
  359. /*
  360.  *  The name associated with this entry.  Eg, the name of
  361.  *  the data item, the class, the method, the type, etc.
  362.  */
  363.    return SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,_get_somtEntryName)
  364.     (this);
  365. }
  366.  
  367.  
  368. /* method: _set_somtEntryName */
  369. void   _set_somtEntryName(string somtEntryName)
  370. {
  371. /*
  372.  *  The name associated with this entry.  Eg, the name of
  373.  *  the data item, the class, the method, the type, etc.
  374.  */
  375.    SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,_set_somtEntryName)
  376.     (this,somtEntryName);
  377. }
  378.  
  379.  
  380. /* method: _get_somtElementType */
  381. SOMTTypes   _get_somtElementType()
  382. {
  383. /*
  384.  *  Returns the type of this entry.
  385.  *  This is not datatype, but entry type (method, class,
  386.  *  passthru, etc.). The value is defined by SOMTTypes.
  387.  */
  388.    return SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,_get_somtElementType)
  389.     (this);
  390. }
  391.  
  392.  
  393. /* method: _set_somtElementType */
  394. void   _set_somtElementType(SOMTTypes somtElementType)
  395. {
  396. /*
  397.  *  Returns the type of this entry.
  398.  *  This is not datatype, but entry type (method, class,
  399.  *  passthru, etc.). The value is defined by SOMTTypes.
  400.  */
  401.    SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,_set_somtElementType)
  402.     (this,somtElementType);
  403. }
  404.  
  405.  
  406. /* method: _get_somtElementTypeName */
  407. string   _get_somtElementTypeName()
  408. {
  409. /*
  410.  *  String version of somtElementType.
  411.  */
  412.    return SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,_get_somtElementTypeName)
  413.     (this);
  414. }
  415.  
  416.  
  417. /* method: _get_somtEntryComment */
  418. string   _get_somtEntryComment()
  419. {
  420. /*
  421.  *  Returns the comment associated with this entry, or NULL is this
  422.  *  entry has no associated comment.  Comments will have comment
  423.  *  delimitors removed, but will retain newline characters as
  424.  *  specified in the source file. (use smLookupComment)
  425.  */
  426.    return SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,_get_somtEntryComment)
  427.     (this);
  428. }
  429.  
  430.  
  431. /* method: _get_somtSourceLineNumber */
  432. unsigned long   _get_somtSourceLineNumber()
  433. {
  434. /*
  435.  *  Returns the line number in the source file where this entry's
  436.  *  syntactic form ended.
  437.  */
  438.    return SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,_get_somtSourceLineNumber)
  439.     (this);
  440. }
  441.  
  442.  
  443. /* method: _get_somtTypeCode */
  444. TypeCode   _get_somtTypeCode()
  445. {
  446. /*
  447.  *  The typecode, if appropriate, or NULL.
  448.  */
  449.    return SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,_get_somtTypeCode)
  450.     (this);
  451. }
  452.  
  453.  
  454. /* method: _get_somtIsReference */
  455. boolean   _get_somtIsReference()
  456. {
  457. /*
  458.  *  Whether the entry is just a reference to the real type (TRUE)
  459.  *  rather than a declaration of it (FALSE).
  460.  */
  461.    return SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,_get_somtIsReference)
  462.     (this);
  463. }
  464.  
  465.  
  466. /* method: _get_somtIDLScopedName */
  467. string   _get_somtIDLScopedName()
  468. {
  469. /*
  470.  *  The IDL scoped name of the entry (using double colon as delimiter).
  471.  */
  472.    return SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,_get_somtIDLScopedName)
  473.     (this);
  474. }
  475.  
  476.  
  477. /* method: _get_somtCScopedName */
  478. string   _get_somtCScopedName()
  479. {
  480. /*
  481.  *  The C scoped name of the entry (using underscore as delimiter).
  482.  */
  483.    return SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,_get_somtCScopedName)
  484.     (this);
  485. }
  486.  
  487.  
  488. /* method: somtGetModifierValue */
  489. string   somtGetModifierValue(string modifierName)
  490. {
  491. /*
  492.  *  Returns the value of the named modifier if this entry has the
  493.  *  named modifier and NULL otherwise. Note: if the modifier is
  494.  *  present but does not have a value then a value of <'\1'> is
  495.  *  returned.
  496.  */
  497.    return SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,somtGetModifierValue)
  498.     (this,modifierName);
  499. }
  500.  
  501.  
  502. /* method: somtGetFirstModifier */
  503. boolean   somtGetFirstModifier(string* modifierName, 
  504.         string* modifierValue)
  505. {
  506. /*
  507.  *  Returns the first modifier associated with this entry.  1 (true)
  508.  *  is returned if the entry has at least one modifier and 0 (false)
  509.  *  otherwise.
  510.  */
  511.    return SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,somtGetFirstModifier)
  512.     (this,modifierName,modifierValue);
  513. }
  514.  
  515.  
  516. /* method: somtGetNextModifier */
  517. boolean   somtGetNextModifier(string* modifierName, 
  518.         string* modifierValue)
  519. {
  520. /*
  521.  *  Returns the next modifier (with respect to the last call to
  522.  *  <somtGetNextModifier> or <somtGetFirstModifier>)
  523.  *  associated with this entry.  1 (true) is returned if the entry
  524.  *  had another modifier and 0 (false) otherwise.
  525.  */
  526.    return SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,somtGetNextModifier)
  527.     (this,modifierName,modifierValue);
  528. }
  529.  
  530.  
  531. /* method: somtFormatModifier */
  532. long   somtFormatModifier(string buffer, 
  533.         string name, 
  534.         string value)
  535. {
  536. /*
  537.  *  Formats the indicated name/value pair into buffer.  Buffer must
  538.  *  be big enough to hold all the formatted pair, no checks are made.
  539.  *  The number of characters added to buffer are returned (not
  540.  *  including the trailing null character).
  541.  *  Note: value may be null
  542.  *  You will probably never call this method, it is provided so that
  543.  *  you can override it to control the format returned in
  544.  *  <somtGetModifierList>.
  545.  */
  546.    return SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,somtFormatModifier)
  547.     (this,buffer,name,value);
  548. }
  549.  
  550.  
  551. /* method: somtGetModifierList */
  552. long   somtGetModifierList(string buffer)
  553. {
  554. /*
  555.  *  The modifiers for this entry are placed in <buffer> in template
  556.  *  list form (newline separated).  Buffer must be big enough to
  557.  *  hold all the modifiers, no checks are made. The number of
  558.  *  modifiers is returned.
  559.  */
  560.    return SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,somtGetModifierList)
  561.     (this,buffer);
  562. }
  563.  
  564.  
  565. /* method: somtSetSymbolsOnEntry */
  566. long   somtSetSymbolsOnEntry(SOMTEmitC* emitter, 
  567.         string prefix)
  568. {
  569. /*
  570.  *  Places a number of symbol/value pairs in <t>.  All the symbols
  571.  *  will begin with <prefix>.
  572.  */
  573.    return SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,somtSetSymbolsOnEntry)
  574.     (this,emitter,prefix);
  575. }
  576.  
  577.  
  578. /* method: somtSetEntryStruct */
  579. void   somtSetEntryStruct(Entry* es)
  580. {
  581. /*
  582.  *  Sets the entry struct data member.
  583.  *  Note, when overridding this method, it is important to call the
  584.  *  parent version of the method first and then do your processing.
  585.  */
  586.    SOM_ResolveD(this,SOMTStringEntryC,SOMTEntryC,somtSetEntryStruct)
  587.     (this,es);
  588. }
  589.  
  590.  
  591. /* method: somInit */
  592. void   somInit()
  593. {
  594.    SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somInit)
  595.     (this);
  596. }
  597.  
  598.  
  599. /* method: somUninit */
  600. void   somUninit()
  601. {
  602.    SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somUninit)
  603.     (this);
  604. }
  605.  
  606.  
  607. /* method: somPrintSelf */
  608. SOMObject*   somPrintSelf()
  609. {
  610.    return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somPrintSelf)
  611.     (this);
  612. }
  613.  
  614.  
  615. /* method: somDumpSelfInt */
  616. void   somDumpSelfInt(long level)
  617. {
  618.    SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDumpSelfInt)
  619.     (this,level);
  620. }
  621.  
  622.  
  623. /* method: somDumpSelf */
  624. void   somDumpSelf(long level)
  625. {
  626.    SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDumpSelf)
  627.     (this,level);
  628. }
  629.  
  630.  
  631. /* initializer method: somDefaultInit */
  632. void   somDefaultInit(som3InitCtrl* ctrl)
  633. {
  634. /*
  635.  *  A default initializer for a SOM object. Passing a null ctrl
  636.  *  indicates to the receiver that its class is the class of the
  637.  *  object being initialized, whereby the initializer will determine
  638.  *  an appropriate control structure.
  639.  */
  640.    SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDefaultInit)
  641.     (this,ctrl);
  642. }
  643.  
  644.  
  645. /* method: somDestruct */
  646. void   somDestruct(octet doFree, 
  647.         som3DestructCtrl* ctrl)
  648. {
  649. /*
  650.  *  The default destructor for a SOM object. A nonzero <doFree>
  651.  *  indicates that the object storage should be freed by the
  652.  *  object's class (via somDeallocate) after uninitialization.
  653.  *  As with somDefaultInit, a null ctrl can be passed.
  654.  */
  655.    SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDestruct)
  656.     (this,doFree,ctrl);
  657. }
  658.  
  659.  
  660. /* initializer method: somDefaultCopyInit */
  661. void   somDefaultCopyInit(som3InitCtrl* ctrl, 
  662.         SOMObject* fromObj)
  663. {
  664. /*
  665.  *  A default copy constructor. Use this to make copies of objects for
  666.  *  calling methods with "by-value" argument semantics.
  667.  */
  668.    SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDefaultCopyInit)
  669.     (this,ctrl,fromObj);
  670. }
  671.  
  672.  
  673. /* method: somDefaultAssign */
  674. SOMTStringEntryC*  somDefaultAssign(som3AssignCtrl* ctrl, 
  675.         SOMObject* fromObj)
  676. {
  677. /*
  678.  *  A default assignment operator. Use this to "assign" the state of one
  679.  *  object to another.
  680.  */
  681.    return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDefaultAssign)
  682.     (this,ctrl,fromObj);
  683. }
  684.  
  685.  
  686. /* initializer method: somDefaultConstCopyInit */
  687. void   somDefaultConstCopyInit(som3InitCtrl* ctrl, 
  688.         SOMObject* fromObj)
  689. {
  690. /*
  691.  *  A default copy constructor that uses a const fromObj.
  692.  */
  693.    SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDefaultConstCopyInit)
  694.     (this,ctrl,fromObj);
  695. }
  696.  
  697.  
  698. /* initializer method: somDefaultVCopyInit */
  699. void   somDefaultVCopyInit(som3InitCtrl* ctrl, 
  700.         SOMObject* fromObj)
  701. {
  702. /*
  703.  *  A default copy constructor that uses a volatile fromObj.
  704.  */
  705.    SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDefaultVCopyInit)
  706.     (this,ctrl,fromObj);
  707. }
  708.  
  709.  
  710. /* initializer method: somDefaultConstVCopyInit */
  711. void   somDefaultConstVCopyInit(som3InitCtrl* ctrl, 
  712.         SOMObject* fromObj)
  713. {
  714. /*
  715.  *  A default copy constructor that uses a const volatile fromObj.
  716.  */
  717.    SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDefaultConstVCopyInit)
  718.     (this,ctrl,fromObj);
  719. }
  720.  
  721.  
  722. /* method: somDefaultConstAssign */
  723. SOMTStringEntryC*  somDefaultConstAssign(som3AssignCtrl* ctrl, 
  724.         SOMObject* fromObj)
  725. {
  726. /*
  727.  *  A default assignment operator that uses a const fromObj.
  728.  */
  729.    return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDefaultConstAssign)
  730.     (this,ctrl,fromObj);
  731. }
  732.  
  733.  
  734. /* method: somDefaultVAssign */
  735. SOMTStringEntryC*  somDefaultVAssign(som3AssignCtrl* ctrl, 
  736.         SOMObject* fromObj)
  737. {
  738. /*
  739.  *  A default assignment operator that uses a volatile fromObj.
  740.  */
  741.    return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDefaultVAssign)
  742.     (this,ctrl,fromObj);
  743. }
  744.  
  745.  
  746. /* method: somDefaultConstVAssign */
  747. SOMTStringEntryC*  somDefaultConstVAssign(som3AssignCtrl* ctrl, 
  748.         SOMObject* fromObj)
  749. {
  750. /*
  751.  *  A default assignment operator that uses a const volatile fromObj.
  752.  */
  753.    return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDefaultConstVAssign)
  754.     (this,ctrl,fromObj);
  755. }
  756.  
  757.  
  758. /* method: somFree */
  759. void   somFree()
  760. {
  761. /*
  762.  *  Use as directed by framework implementations.
  763.  */
  764.    SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somFree)
  765.     (this);
  766. }
  767.  
  768.  
  769. /* method: somGetClass */
  770. SOMClass*   somGetClass()
  771. {
  772. /*
  773.  *  Return the receiver's class.
  774.  */
  775.    return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somGetClass)
  776.     (this);
  777. }
  778.  
  779.  
  780. /* method: somGetClassName */
  781. string   somGetClassName()
  782. {
  783. /*
  784.  *  Return the name of the receiver's class.
  785.  */
  786.    return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somGetClassName)
  787.     (this);
  788. }
  789.  
  790.  
  791. /* method: somGetSize */
  792. long   somGetSize()
  793. {
  794. /*
  795.  *  Return the size of the receiver.
  796.  */
  797.    return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somGetSize)
  798.     (this);
  799. }
  800.  
  801.  
  802. /* method: somIsA */
  803. boolean   somIsA(SOMClass* aClassObj)
  804. {
  805. /*
  806.  *  Returns 1 (true) if the receiver responds to methods
  807.  *  introduced by <aClassObj>, and 0 (false) otherwise.
  808.  */
  809.    return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somIsA)
  810.     (this,aClassObj);
  811. }
  812.  
  813.  
  814. /* method: somIsInstanceOf */
  815. boolean   somIsInstanceOf(SOMClass* aClassObj)
  816. {
  817. /*
  818.  *  Returns 1 (true) if the receiver is an instance of
  819.  *  <aClassObj> and 0 (false) otherwise.
  820.  */
  821.    return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somIsInstanceOf)
  822.     (this,aClassObj);
  823. }
  824.  
  825.  
  826. /* method: somRespondsTo */
  827. boolean   somRespondsTo(somId mId)
  828. {
  829. /*
  830.  *  Returns 1 (true) if the indicated method can be invoked
  831.  *  on the receiver and 0 (false) otherwise.
  832.  */
  833.    return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somRespondsTo)
  834.     (this,mId);
  835. }
  836.  
  837.  
  838. /* va_list method: somDispatch */
  839.  
  840. /*
  841.  *  This method provides a generic, class-specific dispatch mechanism.
  842.  *  It accepts as input <retValue> a pointer to the memory area to be
  843.  *  loaded with the result of dispatching the method indicated by
  844.  *  <methodId> using the arguments in <ap>. <ap> contains the object
  845.  *  on which the method is to be invoked as the first argument.
  846.  */
  847. /* the va_list invocation form */
  848. boolean   SOMTStringEntryC_somDispatch(somToken* retValue, 
  849.         somId methodId, 
  850.         va_list ap)
  851. {return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDispatch)
  852.     (this,retValue,methodId,ap);
  853. }
  854.  
  855. /* the varargs invocation form */
  856. boolean   somDispatch(somToken* retValue, 
  857.         somId methodId, 
  858.         ...)
  859. {
  860. /*
  861.  *  This method provides a generic, class-specific dispatch mechanism.
  862.  *  It accepts as input <retValue> a pointer to the memory area to be
  863.  *  loaded with the result of dispatching the method indicated by
  864.  *  <methodId> using the arguments in <ap>. <ap> contains the object
  865.  *  on which the method is to be invoked as the first argument.
  866.  */
  867.    va_list ap;
  868.    va_start(ap, methodId);
  869.    boolean __somResult = 
  870.       SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDispatch)
  871.     (this,retValue,methodId,ap);
  872.    va_end(ap);
  873.    return __somResult;
  874. }
  875.  
  876.  
  877. /* va_list method: somClassDispatch */
  878.  
  879. /*
  880.  *  Like somDispatch, but method resolution for static methods is done
  881.  *  according to the clsObj instance method table.
  882.  */
  883. /* the va_list invocation form */
  884. boolean   SOMTStringEntryC_somClassDispatch(SOMClass* clsObj, 
  885.         somToken* retValue, 
  886.         somId methodId, 
  887.         va_list ap)
  888. {return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somClassDispatch)
  889.     (this,clsObj,retValue,methodId,ap);
  890. }
  891.  
  892. /* the varargs invocation form */
  893. boolean   somClassDispatch(SOMClass* clsObj, 
  894.         somToken* retValue, 
  895.         somId methodId, 
  896.         ...)
  897. {
  898. /*
  899.  *  Like somDispatch, but method resolution for static methods is done
  900.  *  according to the clsObj instance method table.
  901.  */
  902.    va_list ap;
  903.    va_start(ap, methodId);
  904.    boolean __somResult = 
  905.       SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somClassDispatch)
  906.     (this,clsObj,retValue,methodId,ap);
  907.    va_end(ap);
  908.    return __somResult;
  909. }
  910.  
  911.  
  912. /* method: somCastObj */
  913. boolean   somCastObj(SOMClass* cls)
  914. {
  915. /*
  916.  *  cast the receiving object to cls (which must be an ancestor of the
  917.  *  objects true class. Returns true on success.
  918.  */
  919.    return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somCastObj)
  920.     (this,cls);
  921. }
  922.  
  923.  
  924. /* method: somResetObj */
  925. boolean   somResetObj()
  926. {
  927. /*
  928.  *  reset an object to its true class. Returns true always.
  929.  */
  930.    return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somResetObj)
  931.     (this);
  932. }
  933.  
  934.  
  935. /* va_list method: somDispatchV */
  936.  
  937. /*
  938.  *  Obsolete. Use somDispatch instead.
  939.  */
  940. /* the va_list invocation form */
  941. void   SOMTStringEntryC_somDispatchV(somId methodId, 
  942.         somId descriptor, 
  943.         va_list ap)
  944. {   SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDispatchV)
  945.     (this,methodId,descriptor,ap);
  946. }
  947.  
  948. /* the varargs invocation form */
  949. void   somDispatchV(somId methodId, 
  950.         somId descriptor, 
  951.         ...)
  952. {
  953. /*
  954.  *  Obsolete. Use somDispatch instead.
  955.  */
  956.    va_list ap;
  957.    va_start(ap, descriptor);
  958.    SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDispatchV)
  959.     (this,methodId,descriptor,ap);
  960.    va_end(ap);
  961. }
  962.  
  963.  
  964. /* va_list method: somDispatchL */
  965.  
  966. /*
  967.  *  Obsolete. Use somDispatch instead.
  968.  */
  969. /* the va_list invocation form */
  970. long   SOMTStringEntryC_somDispatchL(somId methodId, 
  971.         somId descriptor, 
  972.         va_list ap)
  973. {return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDispatchL)
  974.     (this,methodId,descriptor,ap);
  975. }
  976.  
  977. /* the varargs invocation form */
  978. long   somDispatchL(somId methodId, 
  979.         somId descriptor, 
  980.         ...)
  981. {
  982. /*
  983.  *  Obsolete. Use somDispatch instead.
  984.  */
  985.    va_list ap;
  986.    va_start(ap, descriptor);
  987.    long __somResult = 
  988.       SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDispatchL)
  989.     (this,methodId,descriptor,ap);
  990.    va_end(ap);
  991.    return __somResult;
  992. }
  993.  
  994.  
  995. /* va_list method: somDispatchA */
  996.  
  997. /*
  998.  *  Obsolete. Use somDispatch instead.
  999.  */
  1000. /* the va_list invocation form */
  1001. void*   SOMTStringEntryC_somDispatchA(somId methodId, 
  1002.         somId descriptor, 
  1003.         va_list ap)
  1004. {return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDispatchA)
  1005.     (this,methodId,descriptor,ap);
  1006. }
  1007.  
  1008. /* the varargs invocation form */
  1009. void*   somDispatchA(somId methodId, 
  1010.         somId descriptor, 
  1011.         ...)
  1012. {
  1013. /*
  1014.  *  Obsolete. Use somDispatch instead.
  1015.  */
  1016.    va_list ap;
  1017.    va_start(ap, descriptor);
  1018.    void* __somResult = 
  1019.       SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDispatchA)
  1020.     (this,methodId,descriptor,ap);
  1021.    va_end(ap);
  1022.    return __somResult;
  1023. }
  1024.  
  1025.  
  1026. /* va_list method: somDispatchD */
  1027.  
  1028. /*
  1029.  *  Obsolete. Use somDispatch instead.
  1030.  */
  1031. /* the va_list invocation form */
  1032. double   SOMTStringEntryC_somDispatchD(somId methodId, 
  1033.         somId descriptor, 
  1034.         va_list ap)
  1035. {return SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDispatchD)
  1036.     (this,methodId,descriptor,ap);
  1037. }
  1038.  
  1039. /* the varargs invocation form */
  1040. double   somDispatchD(somId methodId, 
  1041.         somId descriptor, 
  1042.         ...)
  1043. {
  1044. /*
  1045.  *  Obsolete. Use somDispatch instead.
  1046.  */
  1047.    va_list ap;
  1048.    va_start(ap, descriptor);
  1049.    double __somResult = 
  1050.       SOM_ResolveD(this,SOMTStringEntryC,SOMObject,somDispatchD)
  1051.     (this,methodId,descriptor,ap);
  1052.    va_end(ap);
  1053.    return __somResult;
  1054. }
  1055.  
  1056.  
  1057.  
  1058. };   /* SOMTStringEntryC */
  1059.  
  1060.  
  1061.  
  1062. #endif       /* SOM_SOMTStringEntryC_xh */
  1063.