home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
tolkit45.zip
/
os2tk45
/
som
/
include
/
scclass.xh
< prev
next >
Wrap
Text File
|
1999-02-22
|
59KB
|
1,767 lines
/*
* This file was generated by the SOM Compiler.
* FileName: scclass.xh.
* Generated using:
* SOM Precompiler somipc: 2.29.1.17
* SOM Emitter emitxh: 2.47
*/
/*
* COMPONENT_NAME: some
*
* ORIGINS: 27
*
*
* 25H7912 (C) COPYRIGHT International Business Machines Corp. 1992,1994,1996
* All Rights Reserved
* Licensed Materials - Property of IBM
* US Government Users Restricted Rights - Use, duplication or
* disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
* @(#) somc/sctypes.h 2.7 12/26/95 16:26:17 [7/30/96 14:46:04]
*
*/
#ifndef SOM_SOMTClassEntryC_xh
#define SOM_SOMTClassEntryC_xh
class SOMTClassEntryC;
/*
* This entry is the anchor for all information about a class
* definition. The part it inherits from <SOMTEntryC> concerns
* the actual class statement in the interface definition. The new
* methods and attributes provided by the class concern the class
* definition as a whole.
* A number of the possible statements in a class definition are
* optional, when they are missing from the class definition then
* methods that would return an entry for this kind of statement, will
* return NULL.
*/
#define SOMTClassEntryC_MajorVersion 2
#define SOMTClassEntryC_MinorVersion 1
/* C++ SOM defs */
#include <somcls.xh>
#include <somcm.xh>
/* C++ parent defs */
#ifndef SOM_SOMTEntryC_xh
#include <scentry.xh>
#endif
#ifndef SOMTClassEntryC_API
#define SOMTClassEntryC_API
/*
* -- The Class API
*/
/*
* Start of bindings for IDL types
*/
class SOMClass;
class SOMObject;
class SOMTEntryC;
class SOMTEmitC;
class SOMTMetaClassEntryC;
class SOMTAttributeEntryC;
class SOMTTypedefEntryC;
class SOMTBaseClassEntryC;
class SOMTPassthruEntryC;
class SOMTDataEntryC;
class SOMTMethodEntryC;
class SOMTClassEntryC;
class SOMTModuleEntryC;
class SOMTParameterEntryC;
class SOMTStructEntryC;
class SOMTUnionEntryC;
class SOMTEnumEntryC;
class SOMTConstEntryC;
class SOMTSequenceEntryC;
class SOMTStringEntryC;
class SOMTEnumNameEntryC;
class SOMTCommonEntryC;
class SOMTUserDefinedTypeEntryC;
/*
* End of bindings for IDL types.
*/
/* A procedure to create the SOMTClassEntryC Class */
SOMEXTERN SOMClass * SOMLINK SOMTClassEntryCNewClass(
integer4 majorVersion,
integer4 minorVersion);
/* The API to the SOMTClassEntryC class object, and the methods it introduces. */
SOMEXTERN struct SOMTClassEntryCClassDataStructure {
SOMClass *classObject;
somMToken _get_somtSourceFileName;
somMToken _get_somtMetaClassEntry;
somMToken _get_somtNewMethodCount;
somMToken _get_somtLocalInclude;
somMToken _get_somtPrivateMethodCount;
somMToken _get_somtStaticMethodCount;
somMToken _get_somtOverrideMethodCount;
somMToken _get_somtProcMethodCount;
somMToken _get_somtVAMethodCount;
somMToken _get_somtBaseCount;
somMToken _get_somtExternalDataCount;
somMToken _get_somtPublicDataCount;
somMToken _get_somtPrivateDataCount;
somMToken somtGetFirstBaseClass;
somMToken somtGetNextBaseClass;
somMToken somtGetFirstReleaseName;
somMToken somtGetNextReleaseName;
somMToken somtGetReleaseNameList;
somMToken somtGetFirstPassthru;
somMToken somtGetNextPassthru;
somMToken somtGetFirstData;
somMToken somtGetNextData;
somMToken somtGetFirstMethod;
somMToken somtGetNextMethod;
somMToken somtGetFirstInheritedMethod;
somMToken somtGetNextInheritedMethod;
somMToken somtFilterNew;
somMToken somtFilterOverridden;
somMToken somtFilterPrivOrPub;
somMToken _get_somtMetaclassFor;
somMToken _get_somtForwardRef;
somMToken somtGetFirstAttribute;
somMToken somtGetNextAttribute;
somMToken somtGetFirstStruct;
somMToken somtGetNextStruct;
somMToken somtGetFirstTypedef;
somMToken somtGetNextTypedef;
somMToken somtGetFirstUnion;
somMToken somtGetNextUnion;
somMToken somtGetFirstEnum;
somMToken somtGetNextEnum;
somMToken somtGetFirstConstant;
somMToken somtGetNextConstant;
somMToken somtGetFirstSequence;
somMToken somtGetNextSequence;
somMToken _get_somtClassModule;
somMToken somtGetFirstPubdef;
somMToken somtGetNextPubdef;
somMToken somtGetFirstStaticData;
somMToken somtGetNextStaticData;
} SOMDLINK SOMTClassEntryCClassData;
#define _SOMTClassEntryC SOMTClassEntryCClassData.classObject
/* The API to parentMtabs for SOMTClassEntryC, and the instance data it introduces. */
SOMEXTERN struct SOMTClassEntryCCClassDataStructure {
somMethodTabs parentMtab;
somDToken instanceDataToken;
} SOMDLINK SOMTClassEntryCCClassData;
/*
* -- Typedefs for SOMTClassEntryC Method Procedures
*/
SOMEXTERN {
typedef string SOMLINK somTP_SOMTClassEntryC__get_somtSourceFileName(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtSourceFileName *somTD_SOMTClassEntryC__get_somtSourceFileName;
typedef SOMTMetaClassEntryC* SOMLINK somTP_SOMTClassEntryC__get_somtMetaClassEntry(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtMetaClassEntry *somTD_SOMTClassEntryC__get_somtMetaClassEntry;
typedef SOMTModuleEntryC* SOMLINK somTP_SOMTClassEntryC__get_somtClassModule(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtClassModule *somTD_SOMTClassEntryC__get_somtClassModule;
typedef long SOMLINK somTP_SOMTClassEntryC__get_somtNewMethodCount(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtNewMethodCount *somTD_SOMTClassEntryC__get_somtNewMethodCount;
typedef boolean SOMLINK somTP_SOMTClassEntryC__get_somtLocalInclude(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtLocalInclude *somTD_SOMTClassEntryC__get_somtLocalInclude;
typedef long SOMLINK somTP_SOMTClassEntryC__get_somtPrivateMethodCount(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtPrivateMethodCount *somTD_SOMTClassEntryC__get_somtPrivateMethodCount;
typedef long SOMLINK somTP_SOMTClassEntryC__get_somtStaticMethodCount(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtStaticMethodCount *somTD_SOMTClassEntryC__get_somtStaticMethodCount;
typedef long SOMLINK somTP_SOMTClassEntryC__get_somtOverrideMethodCount(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtOverrideMethodCount *somTD_SOMTClassEntryC__get_somtOverrideMethodCount;
typedef long SOMLINK somTP_SOMTClassEntryC__get_somtProcMethodCount(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtProcMethodCount *somTD_SOMTClassEntryC__get_somtProcMethodCount;
typedef long SOMLINK somTP_SOMTClassEntryC__get_somtVAMethodCount(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtVAMethodCount *somTD_SOMTClassEntryC__get_somtVAMethodCount;
typedef long SOMLINK somTP_SOMTClassEntryC__get_somtBaseCount(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtBaseCount *somTD_SOMTClassEntryC__get_somtBaseCount;
typedef long SOMLINK somTP_SOMTClassEntryC__get_somtExternalDataCount(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtExternalDataCount *somTD_SOMTClassEntryC__get_somtExternalDataCount;
typedef long SOMLINK somTP_SOMTClassEntryC__get_somtPublicDataCount(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtPublicDataCount *somTD_SOMTClassEntryC__get_somtPublicDataCount;
typedef long SOMLINK somTP_SOMTClassEntryC__get_somtPrivateDataCount(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtPrivateDataCount *somTD_SOMTClassEntryC__get_somtPrivateDataCount;
typedef SOMTClassEntryC* SOMLINK somTP_SOMTClassEntryC__get_somtMetaclassFor(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtMetaclassFor *somTD_SOMTClassEntryC__get_somtMetaclassFor;
typedef boolean SOMLINK somTP_SOMTClassEntryC__get_somtForwardRef(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtForwardRef *somTD_SOMTClassEntryC__get_somtForwardRef;
typedef SOMTBaseClassEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetFirstBaseClass(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetFirstBaseClass *somTD_SOMTClassEntryC_somtGetFirstBaseClass;
typedef SOMTBaseClassEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetNextBaseClass(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetNextBaseClass *somTD_SOMTClassEntryC_somtGetNextBaseClass;
typedef string SOMLINK somTP_SOMTClassEntryC_somtGetFirstReleaseName(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetFirstReleaseName *somTD_SOMTClassEntryC_somtGetFirstReleaseName;
typedef string SOMLINK somTP_SOMTClassEntryC_somtGetNextReleaseName(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetNextReleaseName *somTD_SOMTClassEntryC_somtGetNextReleaseName;
typedef long SOMLINK somTP_SOMTClassEntryC_somtGetReleaseNameList(SOMTClassEntryC *somSelf,
string buffer);
typedef somTP_SOMTClassEntryC_somtGetReleaseNameList *somTD_SOMTClassEntryC_somtGetReleaseNameList;
typedef SOMTPassthruEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetFirstPassthru(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetFirstPassthru *somTD_SOMTClassEntryC_somtGetFirstPassthru;
typedef SOMTPassthruEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetNextPassthru(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetNextPassthru *somTD_SOMTClassEntryC_somtGetNextPassthru;
typedef SOMTDataEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetFirstData(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetFirstData *somTD_SOMTClassEntryC_somtGetFirstData;
typedef SOMTDataEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetNextData(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetNextData *somTD_SOMTClassEntryC_somtGetNextData;
typedef SOMTDataEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetFirstStaticData(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetFirstStaticData *somTD_SOMTClassEntryC_somtGetFirstStaticData;
typedef SOMTDataEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetNextStaticData(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetNextStaticData *somTD_SOMTClassEntryC_somtGetNextStaticData;
typedef SOMTMethodEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetFirstMethod(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetFirstMethod *somTD_SOMTClassEntryC_somtGetFirstMethod;
typedef SOMTMethodEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetNextMethod(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetNextMethod *somTD_SOMTClassEntryC_somtGetNextMethod;
typedef SOMTMethodEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetFirstInheritedMethod(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetFirstInheritedMethod *somTD_SOMTClassEntryC_somtGetFirstInheritedMethod;
typedef SOMTMethodEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetNextInheritedMethod(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetNextInheritedMethod *somTD_SOMTClassEntryC_somtGetNextInheritedMethod;
typedef SOMTAttributeEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetFirstAttribute(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetFirstAttribute *somTD_SOMTClassEntryC_somtGetFirstAttribute;
typedef SOMTAttributeEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetNextAttribute(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetNextAttribute *somTD_SOMTClassEntryC_somtGetNextAttribute;
typedef SOMTStructEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetFirstStruct(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetFirstStruct *somTD_SOMTClassEntryC_somtGetFirstStruct;
typedef SOMTStructEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetNextStruct(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetNextStruct *somTD_SOMTClassEntryC_somtGetNextStruct;
typedef SOMTTypedefEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetFirstTypedef(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetFirstTypedef *somTD_SOMTClassEntryC_somtGetFirstTypedef;
typedef SOMTTypedefEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetNextTypedef(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetNextTypedef *somTD_SOMTClassEntryC_somtGetNextTypedef;
typedef SOMTUnionEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetFirstUnion(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetFirstUnion *somTD_SOMTClassEntryC_somtGetFirstUnion;
typedef SOMTUnionEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetNextUnion(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetNextUnion *somTD_SOMTClassEntryC_somtGetNextUnion;
typedef SOMTEnumEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetFirstEnum(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetFirstEnum *somTD_SOMTClassEntryC_somtGetFirstEnum;
typedef SOMTEnumEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetNextEnum(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetNextEnum *somTD_SOMTClassEntryC_somtGetNextEnum;
typedef SOMTConstEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetFirstConstant(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetFirstConstant *somTD_SOMTClassEntryC_somtGetFirstConstant;
typedef SOMTConstEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetNextConstant(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetNextConstant *somTD_SOMTClassEntryC_somtGetNextConstant;
typedef SOMTSequenceEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetFirstSequence(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetFirstSequence *somTD_SOMTClassEntryC_somtGetFirstSequence;
typedef SOMTSequenceEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetNextSequence(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetNextSequence *somTD_SOMTClassEntryC_somtGetNextSequence;
typedef SOMTEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetFirstPubdef(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetFirstPubdef *somTD_SOMTClassEntryC_somtGetFirstPubdef;
typedef SOMTEntryC* SOMLINK somTP_SOMTClassEntryC_somtGetNextPubdef(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somtGetNextPubdef *somTD_SOMTClassEntryC_somtGetNextPubdef;
typedef boolean SOMLINK somTP_SOMTClassEntryC_somtFilterNew(SOMTClassEntryC *somSelf,
SOMTMethodEntryC* entry);
typedef somTP_SOMTClassEntryC_somtFilterNew *somTD_SOMTClassEntryC_somtFilterNew;
typedef boolean SOMLINK somTP_SOMTClassEntryC_somtFilterOverridden(SOMTClassEntryC *somSelf,
SOMTMethodEntryC* entry);
typedef somTP_SOMTClassEntryC_somtFilterOverridden *somTD_SOMTClassEntryC_somtFilterOverridden;
typedef boolean SOMLINK somTP_SOMTClassEntryC_somtFilterPrivOrPub(SOMTClassEntryC *somSelf,
SOMTCommonEntryC* entry);
typedef somTP_SOMTClassEntryC_somtFilterPrivOrPub *somTD_SOMTClassEntryC_somtFilterPrivOrPub;
/*
* -- Typedefs for Reintroduced Wrapper Methods
*/
typedef string SOMLINK somTP_SOMTClassEntryC__get_somtEntryName(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtEntryName *somTD_SOMTClassEntryC__get_somtEntryName;
typedef void SOMLINK somTP_SOMTClassEntryC__set_somtEntryName(SOMTClassEntryC *somSelf,
string somtEntryName);
typedef somTP_SOMTClassEntryC__set_somtEntryName *somTD_SOMTClassEntryC__set_somtEntryName;
typedef SOMTTypes SOMLINK somTP_SOMTClassEntryC__get_somtElementType(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtElementType *somTD_SOMTClassEntryC__get_somtElementType;
typedef void SOMLINK somTP_SOMTClassEntryC__set_somtElementType(SOMTClassEntryC *somSelf,
SOMTTypes somtElementType);
typedef somTP_SOMTClassEntryC__set_somtElementType *somTD_SOMTClassEntryC__set_somtElementType;
typedef string SOMLINK somTP_SOMTClassEntryC__get_somtElementTypeName(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtElementTypeName *somTD_SOMTClassEntryC__get_somtElementTypeName;
typedef string SOMLINK somTP_SOMTClassEntryC__get_somtEntryComment(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtEntryComment *somTD_SOMTClassEntryC__get_somtEntryComment;
typedef unsigned long SOMLINK somTP_SOMTClassEntryC__get_somtSourceLineNumber(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtSourceLineNumber *somTD_SOMTClassEntryC__get_somtSourceLineNumber;
typedef TypeCode SOMLINK somTP_SOMTClassEntryC__get_somtTypeCode(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtTypeCode *somTD_SOMTClassEntryC__get_somtTypeCode;
typedef boolean SOMLINK somTP_SOMTClassEntryC__get_somtIsReference(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtIsReference *somTD_SOMTClassEntryC__get_somtIsReference;
typedef string SOMLINK somTP_SOMTClassEntryC__get_somtIDLScopedName(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtIDLScopedName *somTD_SOMTClassEntryC__get_somtIDLScopedName;
typedef string SOMLINK somTP_SOMTClassEntryC__get_somtCScopedName(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC__get_somtCScopedName *somTD_SOMTClassEntryC__get_somtCScopedName;
typedef string SOMLINK somTP_SOMTClassEntryC_somtGetModifierValue(SOMTClassEntryC *somSelf,
string modifierName);
typedef somTP_SOMTClassEntryC_somtGetModifierValue *somTD_SOMTClassEntryC_somtGetModifierValue;
typedef boolean SOMLINK somTP_SOMTClassEntryC_somtGetFirstModifier(SOMTClassEntryC *somSelf,
string* modifierName,
string* modifierValue);
typedef somTP_SOMTClassEntryC_somtGetFirstModifier *somTD_SOMTClassEntryC_somtGetFirstModifier;
typedef boolean SOMLINK somTP_SOMTClassEntryC_somtGetNextModifier(SOMTClassEntryC *somSelf,
string* modifierName,
string* modifierValue);
typedef somTP_SOMTClassEntryC_somtGetNextModifier *somTD_SOMTClassEntryC_somtGetNextModifier;
typedef long SOMLINK somTP_SOMTClassEntryC_somtFormatModifier(SOMTClassEntryC *somSelf,
string buffer,
string name,
string value);
typedef somTP_SOMTClassEntryC_somtFormatModifier *somTD_SOMTClassEntryC_somtFormatModifier;
typedef long SOMLINK somTP_SOMTClassEntryC_somtGetModifierList(SOMTClassEntryC *somSelf,
string buffer);
typedef somTP_SOMTClassEntryC_somtGetModifierList *somTD_SOMTClassEntryC_somtGetModifierList;
typedef long SOMLINK somTP_SOMTClassEntryC_somtSetSymbolsOnEntry(SOMTClassEntryC *somSelf,
SOMTEmitC* emitter,
string prefix);
typedef somTP_SOMTClassEntryC_somtSetSymbolsOnEntry *somTD_SOMTClassEntryC_somtSetSymbolsOnEntry;
typedef void SOMLINK somTP_SOMTClassEntryC_somtSetEntryStruct(SOMTClassEntryC *somSelf,
Entry* es);
typedef somTP_SOMTClassEntryC_somtSetEntryStruct *somTD_SOMTClassEntryC_somtSetEntryStruct;
typedef void SOMLINK somTP_SOMTClassEntryC_somInit(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somInit *somTD_SOMTClassEntryC_somInit;
typedef void SOMLINK somTP_SOMTClassEntryC_somUninit(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somUninit *somTD_SOMTClassEntryC_somUninit;
typedef SOMObject* SOMLINK somTP_SOMTClassEntryC_somPrintSelf(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somPrintSelf *somTD_SOMTClassEntryC_somPrintSelf;
typedef void SOMLINK somTP_SOMTClassEntryC_somDumpSelfInt(SOMTClassEntryC *somSelf,
long level);
typedef somTP_SOMTClassEntryC_somDumpSelfInt *somTD_SOMTClassEntryC_somDumpSelfInt;
typedef void SOMLINK somTP_SOMTClassEntryC_somDumpSelf(SOMTClassEntryC *somSelf,
long level);
typedef somTP_SOMTClassEntryC_somDumpSelf *somTD_SOMTClassEntryC_somDumpSelf;
typedef void SOMLINK somTP_SOMTClassEntryC_somDefaultInit(SOMTClassEntryC *somSelf,
som3InitCtrl* ctrl);
typedef somTP_SOMTClassEntryC_somDefaultInit *somTD_SOMTClassEntryC_somDefaultInit;
typedef void SOMLINK somTP_SOMTClassEntryC_somDestruct(SOMTClassEntryC *somSelf,
octet doFree,
som3DestructCtrl* ctrl);
typedef somTP_SOMTClassEntryC_somDestruct *somTD_SOMTClassEntryC_somDestruct;
typedef void SOMLINK somTP_SOMTClassEntryC_somDefaultCopyInit(SOMTClassEntryC *somSelf,
som3InitCtrl* ctrl,
SOMObject* fromObj);
typedef somTP_SOMTClassEntryC_somDefaultCopyInit *somTD_SOMTClassEntryC_somDefaultCopyInit;
typedef SOMTClassEntryC* SOMLINK somTP_SOMTClassEntryC_somDefaultAssign(SOMTClassEntryC *somSelf,
som3AssignCtrl* ctrl,
SOMObject* fromObj);
typedef somTP_SOMTClassEntryC_somDefaultAssign *somTD_SOMTClassEntryC_somDefaultAssign;
typedef void SOMLINK somTP_SOMTClassEntryC_somDefaultConstCopyInit(SOMTClassEntryC *somSelf,
som3InitCtrl* ctrl,
SOMObject* fromObj);
typedef somTP_SOMTClassEntryC_somDefaultConstCopyInit *somTD_SOMTClassEntryC_somDefaultConstCopyInit;
typedef void SOMLINK somTP_SOMTClassEntryC_somDefaultVCopyInit(SOMTClassEntryC *somSelf,
som3InitCtrl* ctrl,
SOMObject* fromObj);
typedef somTP_SOMTClassEntryC_somDefaultVCopyInit *somTD_SOMTClassEntryC_somDefaultVCopyInit;
typedef void SOMLINK somTP_SOMTClassEntryC_somDefaultConstVCopyInit(SOMTClassEntryC *somSelf,
som3InitCtrl* ctrl,
SOMObject* fromObj);
typedef somTP_SOMTClassEntryC_somDefaultConstVCopyInit *somTD_SOMTClassEntryC_somDefaultConstVCopyInit;
typedef SOMTClassEntryC* SOMLINK somTP_SOMTClassEntryC_somDefaultConstAssign(SOMTClassEntryC *somSelf,
som3AssignCtrl* ctrl,
SOMObject* fromObj);
typedef somTP_SOMTClassEntryC_somDefaultConstAssign *somTD_SOMTClassEntryC_somDefaultConstAssign;
typedef SOMTClassEntryC* SOMLINK somTP_SOMTClassEntryC_somDefaultVAssign(SOMTClassEntryC *somSelf,
som3AssignCtrl* ctrl,
SOMObject* fromObj);
typedef somTP_SOMTClassEntryC_somDefaultVAssign *somTD_SOMTClassEntryC_somDefaultVAssign;
typedef SOMTClassEntryC* SOMLINK somTP_SOMTClassEntryC_somDefaultConstVAssign(SOMTClassEntryC *somSelf,
som3AssignCtrl* ctrl,
SOMObject* fromObj);
typedef somTP_SOMTClassEntryC_somDefaultConstVAssign *somTD_SOMTClassEntryC_somDefaultConstVAssign;
typedef void SOMLINK somTP_SOMTClassEntryC_somFree(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somFree *somTD_SOMTClassEntryC_somFree;
typedef SOMClass* SOMLINK somTP_SOMTClassEntryC_somGetClass(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somGetClass *somTD_SOMTClassEntryC_somGetClass;
typedef string SOMLINK somTP_SOMTClassEntryC_somGetClassName(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somGetClassName *somTD_SOMTClassEntryC_somGetClassName;
typedef long SOMLINK somTP_SOMTClassEntryC_somGetSize(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somGetSize *somTD_SOMTClassEntryC_somGetSize;
typedef boolean SOMLINK somTP_SOMTClassEntryC_somIsA(SOMTClassEntryC *somSelf,
SOMClass* aClassObj);
typedef somTP_SOMTClassEntryC_somIsA *somTD_SOMTClassEntryC_somIsA;
typedef boolean SOMLINK somTP_SOMTClassEntryC_somIsInstanceOf(SOMTClassEntryC *somSelf,
SOMClass* aClassObj);
typedef somTP_SOMTClassEntryC_somIsInstanceOf *somTD_SOMTClassEntryC_somIsInstanceOf;
typedef boolean SOMLINK somTP_SOMTClassEntryC_somRespondsTo(SOMTClassEntryC *somSelf,
somId mId);
typedef somTP_SOMTClassEntryC_somRespondsTo *somTD_SOMTClassEntryC_somRespondsTo;
typedef boolean SOMLINK somTP_SOMTClassEntryC_somDispatch(SOMTClassEntryC *somSelf,
somToken* retValue,
somId methodId,
va_list ap);
typedef somTP_SOMTClassEntryC_somDispatch *somTD_SOMTClassEntryC_somDispatch;
typedef boolean SOMLINK somTP_SOMTClassEntryC_somClassDispatch(SOMTClassEntryC *somSelf,
SOMClass* clsObj,
somToken* retValue,
somId methodId,
va_list ap);
typedef somTP_SOMTClassEntryC_somClassDispatch *somTD_SOMTClassEntryC_somClassDispatch;
typedef boolean SOMLINK somTP_SOMTClassEntryC_somCastObj(SOMTClassEntryC *somSelf,
SOMClass* cls);
typedef somTP_SOMTClassEntryC_somCastObj *somTD_SOMTClassEntryC_somCastObj;
typedef boolean SOMLINK somTP_SOMTClassEntryC_somResetObj(SOMTClassEntryC *somSelf);
typedef somTP_SOMTClassEntryC_somResetObj *somTD_SOMTClassEntryC_somResetObj;
typedef void SOMLINK somTP_SOMTClassEntryC_somDispatchV(SOMTClassEntryC *somSelf,
somId methodId,
somId descriptor,
va_list ap);
typedef somTP_SOMTClassEntryC_somDispatchV *somTD_SOMTClassEntryC_somDispatchV;
typedef long SOMLINK somTP_SOMTClassEntryC_somDispatchL(SOMTClassEntryC *somSelf,
somId methodId,
somId descriptor,
va_list ap);
typedef somTP_SOMTClassEntryC_somDispatchL *somTD_SOMTClassEntryC_somDispatchL;
typedef void* SOMLINK somTP_SOMTClassEntryC_somDispatchA(SOMTClassEntryC *somSelf,
somId methodId,
somId descriptor,
va_list ap);
typedef somTP_SOMTClassEntryC_somDispatchA *somTD_SOMTClassEntryC_somDispatchA;
typedef double SOMLINK somTP_SOMTClassEntryC_somDispatchD(SOMTClassEntryC *somSelf,
somId methodId,
somId descriptor,
va_list ap);
typedef somTP_SOMTClassEntryC_somDispatchD *somTD_SOMTClassEntryC_somDispatchD;
}
#endif /* SOMTClassEntryC_API */
/*
* -- This emitter treats Method Tokens as Thunks by default.
* -- Use the sc modifier "nothunks" to change this default
*/
#undef somresolve_
#define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
/*
* -- The C++ Wrapper Class for SOMTClassEntryC
*/
class SOMTClassEntryC : public SOMTEntryC
{
/*
* This entry is the anchor for all information about a class
* definition. The part it inherits from <SOMTEntryC> concerns
* the actual class statement in the interface definition. The new
* methods and attributes provided by the class concern the class
* definition as a whole.
* A number of the possible statements in a class definition are
* optional, when they are missing from the class definition then
* methods that would return an entry for this kind of statement, will
* return NULL.
*/
public:
// SOMTClassEntryC::new creates the class object if necessary, and then uses somNewNoInit
// to allocate memory and create the object. Initialization is in ctors.
void *operator new(size_t)
{
if (!_SOMTClassEntryC) SOMTClassEntryCNewClass(SOMTClassEntryC_MajorVersion,SOMTClassEntryC_MinorVersion);
return (void*)
SOM_Resolve(_SOMTClassEntryC,SOMClass,somNewNoInit)
((SOMClass *)((void*)_SOMTClassEntryC));
}
// SOMTClassEntryC::delete uses somDestruct.
void operator delete(void * obj)
{
if (obj && *(void**)obj) {
SOM_Resolve(obj,SOMObject,somFree)
((SOMObject*)obj);
}
}
SOMTClassEntryC& operator=(SOMTClassEntryC& fromObj)
{
this->somDefaultAssign(0,(SOMObject*)((void*)&fromObj));
return *this;
}
SOMTClassEntryC()
{
if (*(void**)this !=
((somParentMtabStructPtr)
(SOMTClassEntryCCClassData.parentMtab))->mtab)
return;
((SOMObject*)((void*)this))->somDefaultInit(0);
}
SOMTClassEntryC(SOMTClassEntryC* fromObj)
{
if (*(void**)this !=
((somParentMtabStructPtr)
(SOMTClassEntryCCClassData.parentMtab))->mtab)
return;
((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
}
#ifdef __IBMCPP__
#pragma info(nocnv,nopar)
#endif
SOMTClassEntryC(const SOMTClassEntryC* fromObj)
{
if (*(void**)this !=
((somParentMtabStructPtr)
(SOMTClassEntryCCClassData.parentMtab))->mtab)
return;
((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
}
#ifdef __IBMCPP__
#pragma info(restore)
#endif
/* method: _get_somtSourceFileName */
string _get_somtSourceFileName()
{
/*
* Returns the name of file containing the definition of this class.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,_get_somtSourceFileName)
(this);
}
/* method: _get_somtMetaClassEntry */
SOMTMetaClassEntryC* _get_somtMetaClassEntry()
{
/*
* Returns the entry for the meta class statement in class
* definition or NULL if there is no meta class statement.
* Note: the SOM architecture requires that all classes have a meta
* class, however <SOMClass> is its own metaclass. Thus, any attempt
* to walk up the metaclass chain must terminate when it finds a
* class that is its own meta class, otherwise an infinite loop is
* possible.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,_get_somtMetaClassEntry)
(this);
}
/* method: _get_somtClassModule */
SOMTModuleEntryC* _get_somtClassModule()
{
/*
* The module that contains this class, or NULL if there is not one.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,_get_somtClassModule)
(this);
}
/* method: _get_somtNewMethodCount */
long _get_somtNewMethodCount()
{
/*
* Returns the number of new methods introduced in this class
* definition.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,_get_somtNewMethodCount)
(this);
}
/* method: _get_somtLocalInclude */
boolean _get_somtLocalInclude()
{
/*
* Returns true if the header files associated with this class
* definition should be included using local search, eg, "name.h"
* instead of <name.h>
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,_get_somtLocalInclude)
(this);
}
/* method: _get_somtPrivateMethodCount */
long _get_somtPrivateMethodCount()
{
/*
* Returns number of new private methods in class.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,_get_somtPrivateMethodCount)
(this);
}
/* method: _get_somtStaticMethodCount */
long _get_somtStaticMethodCount()
{
/*
* Returns number of new static methods in class.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,_get_somtStaticMethodCount)
(this);
}
/* method: _get_somtOverrideMethodCount */
long _get_somtOverrideMethodCount()
{
/*
* Returns number of new override methods in class.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,_get_somtOverrideMethodCount)
(this);
}
/* method: _get_somtProcMethodCount */
long _get_somtProcMethodCount()
{
/*
* Returns number of procedure methods for class.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,_get_somtProcMethodCount)
(this);
}
/* method: _get_somtVAMethodCount */
long _get_somtVAMethodCount()
{
/*
* Returns number of VarArg methods for class.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,_get_somtVAMethodCount)
(this);
}
/* method: _get_somtBaseCount */
long _get_somtBaseCount()
{
/*
* Returns number of base classes for class.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,_get_somtBaseCount)
(this);
}
/* method: _get_somtExternalDataCount */
long _get_somtExternalDataCount()
{
/*
* Returns number of external (public or private) data members for class.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,_get_somtExternalDataCount)
(this);
}
/* method: _get_somtPublicDataCount */
long _get_somtPublicDataCount()
{
/*
* Returns number of public data members for class.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,_get_somtPublicDataCount)
(this);
}
/* method: _get_somtPrivateDataCount */
long _get_somtPrivateDataCount()
{
/*
* Returns number of private data members for class.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,_get_somtPrivateDataCount)
(this);
}
/* method: _get_somtMetaclassFor */
SOMTClassEntryC* _get_somtMetaclassFor()
{
/*
* If this is a metaclass, the class for which it is a metaclass, else NULL.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,_get_somtMetaclassFor)
(this);
}
/* method: _get_somtForwardRef */
boolean _get_somtForwardRef()
{
/*
* Whether this is a forward reference or not.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,_get_somtForwardRef)
(this);
}
/* method: somtGetFirstBaseClass */
SOMTBaseClassEntryC* somtGetFirstBaseClass()
{
/*
* Returns the entry for the "left most" direct base class form for
* this class, if it has one and NULL otherwise. Note: <SOMObject>
* does not have any base classes and therefore will terminate an
* attempt to walk up the base class chain.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetFirstBaseClass)
(this);
}
/* method: somtGetNextBaseClass */
SOMTBaseClassEntryC* somtGetNextBaseClass()
{
/*
* Returns the entry for the next direct base class form of this
* class, if it has one and NULL otherwise. The direct base classes
* of a derived class are ordered from "left to right".
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetNextBaseClass)
(this);
}
/* method: somtGetFirstReleaseName */
string somtGetFirstReleaseName()
{
/*
* Returns the first name in the release order statement for this
* entry if it has one and NULL otherwise.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetFirstReleaseName)
(this);
}
/* method: somtGetNextReleaseName */
string somtGetNextReleaseName()
{
/*
* Returns the next name in the release order statement for this
* entry if it has one and NULL otherwise.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetNextReleaseName)
(this);
}
/* method: somtGetReleaseNameList */
long somtGetReleaseNameList(string buffer)
{
/*
* Puts all the release names in <buffer> in template output form,
* buffer must be large enough, no tests are made. The number of
* release names is returned.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetReleaseNameList)
(this,buffer);
}
/* method: somtGetFirstPassthru */
SOMTPassthruEntryC* somtGetFirstPassthru()
{
/*
* Returns the first passthru entry for this class definition if it
* has one and NULL otherwise.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetFirstPassthru)
(this);
}
/* method: somtGetNextPassthru */
SOMTPassthruEntryC* somtGetNextPassthru()
{
/*
* Returns the next passthru entry for this class definition if it
* has one and NULL otherwise. The passthru entry will be returned
* in an order based on the appearence of passthru statements in the
* class definition.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetNextPassthru)
(this);
}
/* method: somtGetFirstData */
SOMTDataEntryC* somtGetFirstData()
{
/*
* Returns the first data entry for this class definition if it has
* one and NULL otherwise.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetFirstData)
(this);
}
/* method: somtGetNextData */
SOMTDataEntryC* somtGetNextData()
{
/*
* Returns the next data entry for this class definition if it has
* one and NULL otherwise. The data entries will be returned in an
* order based on the appearence data member declarations in the
* class definition.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetNextData)
(this);
}
/* method: somtGetFirstStaticData */
SOMTDataEntryC* somtGetFirstStaticData()
{
/*
* Returns the first static data entry for this class definition if it has
* one and NULL otherwise. Static data is handled specialy in SOM so a
* different accessor method is provided.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetFirstStaticData)
(this);
}
/* method: somtGetNextStaticData */
SOMTDataEntryC* somtGetNextStaticData()
{
/*
* Returns the next static data entry for this class definition if it has
* one and NULL otherwise. The data entries will be returned in an
* order based on the release order
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetNextStaticData)
(this);
}
/* method: somtGetFirstMethod */
SOMTMethodEntryC* somtGetFirstMethod()
{
/*
* Returns the first method entry for this class definition if it
* has one and NULL otherwise. Method entries may be for new or
* overridden methods.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetFirstMethod)
(this);
}
/* method: somtGetNextMethod */
SOMTMethodEntryC* somtGetNextMethod()
{
/*
* Returns the next method entry for this class definition if it has
* one and NULL otherwise. The method entries will be returned in an
* order based on the appearence method declarations in the
* class definition. Method entries may be for new or overridden methods.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetNextMethod)
(this);
}
/* method: somtGetFirstInheritedMethod */
SOMTMethodEntryC* somtGetFirstInheritedMethod()
{
/*
* Returns the first inherited and not overridden method entry for
* this class definition if it has one and NULL otherwise.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetFirstInheritedMethod)
(this);
}
/* method: somtGetNextInheritedMethod */
SOMTMethodEntryC* somtGetNextInheritedMethod()
{
/*
* Returns the next inherited and not overridden method entry for
* this class definition if it has one and NULL otherwise. The
* method entries will be returned in an unspecified, but constant
* order.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetNextInheritedMethod)
(this);
}
/* method: somtGetFirstAttribute */
SOMTAttributeEntryC* somtGetFirstAttribute()
{
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetFirstAttribute)
(this);
}
/* method: somtGetNextAttribute */
SOMTAttributeEntryC* somtGetNextAttribute()
{
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetNextAttribute)
(this);
}
/* method: somtGetFirstStruct */
SOMTStructEntryC* somtGetFirstStruct()
{
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetFirstStruct)
(this);
}
/* method: somtGetNextStruct */
SOMTStructEntryC* somtGetNextStruct()
{
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetNextStruct)
(this);
}
/* method: somtGetFirstTypedef */
SOMTTypedefEntryC* somtGetFirstTypedef()
{
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetFirstTypedef)
(this);
}
/* method: somtGetNextTypedef */
SOMTTypedefEntryC* somtGetNextTypedef()
{
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetNextTypedef)
(this);
}
/* method: somtGetFirstUnion */
SOMTUnionEntryC* somtGetFirstUnion()
{
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetFirstUnion)
(this);
}
/* method: somtGetNextUnion */
SOMTUnionEntryC* somtGetNextUnion()
{
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetNextUnion)
(this);
}
/* method: somtGetFirstEnum */
SOMTEnumEntryC* somtGetFirstEnum()
{
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetFirstEnum)
(this);
}
/* method: somtGetNextEnum */
SOMTEnumEntryC* somtGetNextEnum()
{
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetNextEnum)
(this);
}
/* method: somtGetFirstConstant */
SOMTConstEntryC* somtGetFirstConstant()
{
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetFirstConstant)
(this);
}
/* method: somtGetNextConstant */
SOMTConstEntryC* somtGetNextConstant()
{
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetNextConstant)
(this);
}
/* method: somtGetFirstSequence */
SOMTSequenceEntryC* somtGetFirstSequence()
{
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetFirstSequence)
(this);
}
/* method: somtGetNextSequence */
SOMTSequenceEntryC* somtGetNextSequence()
{
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetNextSequence)
(this);
}
/* method: somtGetFirstPubdef */
SOMTEntryC* somtGetFirstPubdef()
{
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetFirstPubdef)
(this);
}
/* method: somtGetNextPubdef */
SOMTEntryC* somtGetNextPubdef()
{
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtGetNextPubdef)
(this);
}
/* method: somtFilterNew */
boolean somtFilterNew(SOMTMethodEntryC* entry)
{
/*
* Returns 1 if entry is new in the class.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtFilterNew)
(this,entry);
}
/* method: somtFilterOverridden */
boolean somtFilterOverridden(SOMTMethodEntryC* entry)
{
/*
* Returns 1 if entry is an overriding method of the class.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtFilterOverridden)
(this,entry);
}
/* method: somtFilterPrivOrPub */
boolean somtFilterPrivOrPub(SOMTCommonEntryC* entry)
{
/*
* Returns TRUE if entry is Private or Public.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTClassEntryC,somtFilterPrivOrPub)
(this,entry);
}
/*
* Reintroduce inherited methods
*/
/* method: _get_somtEntryName */
string _get_somtEntryName()
{
/*
* The name associated with this entry. Eg, the name of
* the data item, the class, the method, the type, etc.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,_get_somtEntryName)
(this);
}
/* method: _set_somtEntryName */
void _set_somtEntryName(string somtEntryName)
{
/*
* The name associated with this entry. Eg, the name of
* the data item, the class, the method, the type, etc.
*/
SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,_set_somtEntryName)
(this,somtEntryName);
}
/* method: _get_somtElementType */
SOMTTypes _get_somtElementType()
{
/*
* Returns the type of this entry.
* This is not datatype, but entry type (method, class,
* passthru, etc.). The value is defined by SOMTTypes.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,_get_somtElementType)
(this);
}
/* method: _set_somtElementType */
void _set_somtElementType(SOMTTypes somtElementType)
{
/*
* Returns the type of this entry.
* This is not datatype, but entry type (method, class,
* passthru, etc.). The value is defined by SOMTTypes.
*/
SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,_set_somtElementType)
(this,somtElementType);
}
/* method: _get_somtElementTypeName */
string _get_somtElementTypeName()
{
/*
* String version of somtElementType.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,_get_somtElementTypeName)
(this);
}
/* method: _get_somtEntryComment */
string _get_somtEntryComment()
{
/*
* Returns the comment associated with this entry, or NULL is this
* entry has no associated comment. Comments will have comment
* delimitors removed, but will retain newline characters as
* specified in the source file. (use smLookupComment)
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,_get_somtEntryComment)
(this);
}
/* method: _get_somtSourceLineNumber */
unsigned long _get_somtSourceLineNumber()
{
/*
* Returns the line number in the source file where this entry's
* syntactic form ended.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,_get_somtSourceLineNumber)
(this);
}
/* method: _get_somtTypeCode */
TypeCode _get_somtTypeCode()
{
/*
* The typecode, if appropriate, or NULL.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,_get_somtTypeCode)
(this);
}
/* method: _get_somtIsReference */
boolean _get_somtIsReference()
{
/*
* Whether the entry is just a reference to the real type (TRUE)
* rather than a declaration of it (FALSE).
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,_get_somtIsReference)
(this);
}
/* method: _get_somtIDLScopedName */
string _get_somtIDLScopedName()
{
/*
* The IDL scoped name of the entry (using double colon as delimiter).
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,_get_somtIDLScopedName)
(this);
}
/* method: _get_somtCScopedName */
string _get_somtCScopedName()
{
/*
* The C scoped name of the entry (using underscore as delimiter).
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,_get_somtCScopedName)
(this);
}
/* method: somtGetModifierValue */
string somtGetModifierValue(string modifierName)
{
/*
* Returns the value of the named modifier if this entry has the
* named modifier and NULL otherwise. Note: if the modifier is
* present but does not have a value then a value of <'\1'> is
* returned.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,somtGetModifierValue)
(this,modifierName);
}
/* method: somtGetFirstModifier */
boolean somtGetFirstModifier(string* modifierName,
string* modifierValue)
{
/*
* Returns the first modifier associated with this entry. 1 (true)
* is returned if the entry has at least one modifier and 0 (false)
* otherwise.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,somtGetFirstModifier)
(this,modifierName,modifierValue);
}
/* method: somtGetNextModifier */
boolean somtGetNextModifier(string* modifierName,
string* modifierValue)
{
/*
* Returns the next modifier (with respect to the last call to
* <somtGetNextModifier> or <somtGetFirstModifier>)
* associated with this entry. 1 (true) is returned if the entry
* had another modifier and 0 (false) otherwise.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,somtGetNextModifier)
(this,modifierName,modifierValue);
}
/* method: somtFormatModifier */
long somtFormatModifier(string buffer,
string name,
string value)
{
/*
* Formats the indicated name/value pair into buffer. Buffer must
* be big enough to hold all the formatted pair, no checks are made.
* The number of characters added to buffer are returned (not
* including the trailing null character).
* Note: value may be null
* You will probably never call this method, it is provided so that
* you can override it to control the format returned in
* <somtGetModifierList>.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,somtFormatModifier)
(this,buffer,name,value);
}
/* method: somtGetModifierList */
long somtGetModifierList(string buffer)
{
/*
* The modifiers for this entry are placed in <buffer> in template
* list form (newline separated). Buffer must be big enough to
* hold all the modifiers, no checks are made. The number of
* modifiers is returned.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,somtGetModifierList)
(this,buffer);
}
/* method: somtSetSymbolsOnEntry */
long somtSetSymbolsOnEntry(SOMTEmitC* emitter,
string prefix)
{
/*
* Places a number of symbol/value pairs in <t>. All the symbols
* will begin with <prefix>.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,somtSetSymbolsOnEntry)
(this,emitter,prefix);
}
/* method: somtSetEntryStruct */
void somtSetEntryStruct(Entry* es)
{
/*
* Sets the entry struct data member.
* Note, when overridding this method, it is important to call the
* parent version of the method first and then do your processing.
*/
SOM_ResolveD(this,SOMTClassEntryC,SOMTEntryC,somtSetEntryStruct)
(this,es);
}
/* method: somInit */
void somInit()
{
SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somInit)
(this);
}
/* method: somUninit */
void somUninit()
{
SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somUninit)
(this);
}
/* method: somPrintSelf */
SOMObject* somPrintSelf()
{
return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somPrintSelf)
(this);
}
/* method: somDumpSelfInt */
void somDumpSelfInt(long level)
{
SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDumpSelfInt)
(this,level);
}
/* method: somDumpSelf */
void somDumpSelf(long level)
{
SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDumpSelf)
(this,level);
}
/* initializer method: somDefaultInit */
void somDefaultInit(som3InitCtrl* ctrl)
{
/*
* A default initializer for a SOM object. Passing a null ctrl
* indicates to the receiver that its class is the class of the
* object being initialized, whereby the initializer will determine
* an appropriate control structure.
*/
SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDefaultInit)
(this,ctrl);
}
/* method: somDestruct */
void somDestruct(octet doFree,
som3DestructCtrl* ctrl)
{
/*
* The default destructor for a SOM object. A nonzero <doFree>
* indicates that the object storage should be freed by the
* object's class (via somDeallocate) after uninitialization.
* As with somDefaultInit, a null ctrl can be passed.
*/
SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDestruct)
(this,doFree,ctrl);
}
/* initializer method: somDefaultCopyInit */
void somDefaultCopyInit(som3InitCtrl* ctrl,
SOMObject* fromObj)
{
/*
* A default copy constructor. Use this to make copies of objects for
* calling methods with "by-value" argument semantics.
*/
SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDefaultCopyInit)
(this,ctrl,fromObj);
}
/* method: somDefaultAssign */
SOMTClassEntryC* somDefaultAssign(som3AssignCtrl* ctrl,
SOMObject* fromObj)
{
/*
* A default assignment operator. Use this to "assign" the state of one
* object to another.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDefaultAssign)
(this,ctrl,fromObj);
}
/* initializer method: somDefaultConstCopyInit */
void somDefaultConstCopyInit(som3InitCtrl* ctrl,
SOMObject* fromObj)
{
/*
* A default copy constructor that uses a const fromObj.
*/
SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDefaultConstCopyInit)
(this,ctrl,fromObj);
}
/* initializer method: somDefaultVCopyInit */
void somDefaultVCopyInit(som3InitCtrl* ctrl,
SOMObject* fromObj)
{
/*
* A default copy constructor that uses a volatile fromObj.
*/
SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDefaultVCopyInit)
(this,ctrl,fromObj);
}
/* initializer method: somDefaultConstVCopyInit */
void somDefaultConstVCopyInit(som3InitCtrl* ctrl,
SOMObject* fromObj)
{
/*
* A default copy constructor that uses a const volatile fromObj.
*/
SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDefaultConstVCopyInit)
(this,ctrl,fromObj);
}
/* method: somDefaultConstAssign */
SOMTClassEntryC* somDefaultConstAssign(som3AssignCtrl* ctrl,
SOMObject* fromObj)
{
/*
* A default assignment operator that uses a const fromObj.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDefaultConstAssign)
(this,ctrl,fromObj);
}
/* method: somDefaultVAssign */
SOMTClassEntryC* somDefaultVAssign(som3AssignCtrl* ctrl,
SOMObject* fromObj)
{
/*
* A default assignment operator that uses a volatile fromObj.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDefaultVAssign)
(this,ctrl,fromObj);
}
/* method: somDefaultConstVAssign */
SOMTClassEntryC* somDefaultConstVAssign(som3AssignCtrl* ctrl,
SOMObject* fromObj)
{
/*
* A default assignment operator that uses a const volatile fromObj.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDefaultConstVAssign)
(this,ctrl,fromObj);
}
/* method: somFree */
void somFree()
{
/*
* Use as directed by framework implementations.
*/
SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somFree)
(this);
}
/* method: somGetClass */
SOMClass* somGetClass()
{
/*
* Return the receiver's class.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somGetClass)
(this);
}
/* method: somGetClassName */
string somGetClassName()
{
/*
* Return the name of the receiver's class.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somGetClassName)
(this);
}
/* method: somGetSize */
long somGetSize()
{
/*
* Return the size of the receiver.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somGetSize)
(this);
}
/* method: somIsA */
boolean somIsA(SOMClass* aClassObj)
{
/*
* Returns 1 (true) if the receiver responds to methods
* introduced by <aClassObj>, and 0 (false) otherwise.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somIsA)
(this,aClassObj);
}
/* method: somIsInstanceOf */
boolean somIsInstanceOf(SOMClass* aClassObj)
{
/*
* Returns 1 (true) if the receiver is an instance of
* <aClassObj> and 0 (false) otherwise.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somIsInstanceOf)
(this,aClassObj);
}
/* method: somRespondsTo */
boolean somRespondsTo(somId mId)
{
/*
* Returns 1 (true) if the indicated method can be invoked
* on the receiver and 0 (false) otherwise.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somRespondsTo)
(this,mId);
}
/* va_list method: somDispatch */
/*
* This method provides a generic, class-specific dispatch mechanism.
* It accepts as input <retValue> a pointer to the memory area to be
* loaded with the result of dispatching the method indicated by
* <methodId> using the arguments in <ap>. <ap> contains the object
* on which the method is to be invoked as the first argument.
*/
/* the va_list invocation form */
boolean SOMTClassEntryC_somDispatch(somToken* retValue,
somId methodId,
va_list ap)
{return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDispatch)
(this,retValue,methodId,ap);
}
/* the varargs invocation form */
boolean somDispatch(somToken* retValue,
somId methodId,
...)
{
/*
* This method provides a generic, class-specific dispatch mechanism.
* It accepts as input <retValue> a pointer to the memory area to be
* loaded with the result of dispatching the method indicated by
* <methodId> using the arguments in <ap>. <ap> contains the object
* on which the method is to be invoked as the first argument.
*/
va_list ap;
va_start(ap, methodId);
boolean __somResult =
SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDispatch)
(this,retValue,methodId,ap);
va_end(ap);
return __somResult;
}
/* va_list method: somClassDispatch */
/*
* Like somDispatch, but method resolution for static methods is done
* according to the clsObj instance method table.
*/
/* the va_list invocation form */
boolean SOMTClassEntryC_somClassDispatch(SOMClass* clsObj,
somToken* retValue,
somId methodId,
va_list ap)
{return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somClassDispatch)
(this,clsObj,retValue,methodId,ap);
}
/* the varargs invocation form */
boolean somClassDispatch(SOMClass* clsObj,
somToken* retValue,
somId methodId,
...)
{
/*
* Like somDispatch, but method resolution for static methods is done
* according to the clsObj instance method table.
*/
va_list ap;
va_start(ap, methodId);
boolean __somResult =
SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somClassDispatch)
(this,clsObj,retValue,methodId,ap);
va_end(ap);
return __somResult;
}
/* method: somCastObj */
boolean somCastObj(SOMClass* cls)
{
/*
* cast the receiving object to cls (which must be an ancestor of the
* objects true class. Returns true on success.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somCastObj)
(this,cls);
}
/* method: somResetObj */
boolean somResetObj()
{
/*
* reset an object to its true class. Returns true always.
*/
return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somResetObj)
(this);
}
/* va_list method: somDispatchV */
/*
* Obsolete. Use somDispatch instead.
*/
/* the va_list invocation form */
void SOMTClassEntryC_somDispatchV(somId methodId,
somId descriptor,
va_list ap)
{ SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDispatchV)
(this,methodId,descriptor,ap);
}
/* the varargs invocation form */
void somDispatchV(somId methodId,
somId descriptor,
...)
{
/*
* Obsolete. Use somDispatch instead.
*/
va_list ap;
va_start(ap, descriptor);
SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDispatchV)
(this,methodId,descriptor,ap);
va_end(ap);
}
/* va_list method: somDispatchL */
/*
* Obsolete. Use somDispatch instead.
*/
/* the va_list invocation form */
long SOMTClassEntryC_somDispatchL(somId methodId,
somId descriptor,
va_list ap)
{return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDispatchL)
(this,methodId,descriptor,ap);
}
/* the varargs invocation form */
long somDispatchL(somId methodId,
somId descriptor,
...)
{
/*
* Obsolete. Use somDispatch instead.
*/
va_list ap;
va_start(ap, descriptor);
long __somResult =
SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDispatchL)
(this,methodId,descriptor,ap);
va_end(ap);
return __somResult;
}
/* va_list method: somDispatchA */
/*
* Obsolete. Use somDispatch instead.
*/
/* the va_list invocation form */
void* SOMTClassEntryC_somDispatchA(somId methodId,
somId descriptor,
va_list ap)
{return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDispatchA)
(this,methodId,descriptor,ap);
}
/* the varargs invocation form */
void* somDispatchA(somId methodId,
somId descriptor,
...)
{
/*
* Obsolete. Use somDispatch instead.
*/
va_list ap;
va_start(ap, descriptor);
void* __somResult =
SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDispatchA)
(this,methodId,descriptor,ap);
va_end(ap);
return __somResult;
}
/* va_list method: somDispatchD */
/*
* Obsolete. Use somDispatch instead.
*/
/* the va_list invocation form */
double SOMTClassEntryC_somDispatchD(somId methodId,
somId descriptor,
va_list ap)
{return SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDispatchD)
(this,methodId,descriptor,ap);
}
/* the varargs invocation form */
double somDispatchD(somId methodId,
somId descriptor,
...)
{
/*
* Obsolete. Use somDispatch instead.
*/
va_list ap;
va_start(ap, descriptor);
double __somResult =
SOM_ResolveD(this,SOMTClassEntryC,SOMObject,somDispatchD)
(this,methodId,descriptor,ap);
va_end(ap);
return __somResult;
}
}; /* SOMTClassEntryC */
#endif /* SOM_SOMTClassEntryC_xh */