
/*
 * This file was generated by the SOM Compiler.
 * FileName: F:\build\newproj\include.ppc\tset.h.
 * Generated using:
 *     SOM Precompiler somipc: 2.29.1.3
 *     SOM Emitter emith: 2.41
 */

/*
 *    COMPONENT_NAME: somuc
 * 
 *    ORIGINS: 82, 81, 27
 * 
 * 
 *    10H9767, 10H9769  (C) COPYRIGHT International Business Machines Corp. 1992,1994
 *    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.
 * 
 *    Copyright © 1988, 1989 Apple Computer, Inc. All rights reserved.
 * 
 * CLASS_NAME: somf_TSet
 * 
 * DESCRIPTION: The somf_TSet class is a subclass of somf_TCollection.  It
 *              represents an unordered collection of objects in which objects
 *              can appear only once.  Objects which are inserted into the
 *              somf_TSet should override the Hash() method and the IsSame() or
 *              IsEqual() method.
 * 
 *  This file was generated by the SOM Compiler.
 *  FileName: TSet.id2.
 *  Generated using:
 *      SOM Precompiler spc: 6.13
 *      SOM Emitter emitidl.dll: 6.18
 */


#ifndef SOM_somf_TSet_h
#define SOM_somf_TSet_h


#include <som.h>

/*
 * -- 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))

/*
 * Define the class name as an object type
 */
#ifndef somf_TSet
#define somf_TSet SOMObject
#endif
#include <tcollect.h>

/*
 * Start of bindings for IDL types
 */

#ifndef SOMClass
    #define SOMClass SOMObject
#endif /* SOMClass */
#ifndef somf_TIterator
    #define somf_TIterator SOMObject
#endif /* somf_TIterator */
#ifndef TSAssoc
    #define TSAssoc SOMObject
#endif /* TSAssoc */
typedef unsigned long somf_TSet_ESetClassification;
#define somf_TSet_kUnchecked 1UL
#define somf_TSet_kNormal 2UL
#define somf_TSet_kFast 3UL

#ifndef SOM_DONT_USE_SHORT_NAMES
#ifndef SOMTGD_ESetClassification
    #ifdef ESetClassification
        #undef ESetClassification
        #define SOMTGD_ESetClassification 1
    #else
        #define ESetClassification somf_TSet_ESetClassification
    #endif /* ESetClassification */
#endif /* SOMTGD_ESetClassification */
#endif /* SOM_DONT_USE_SHORT_NAMES */

/*
 * End of bindings for IDL types.
 */

/*
 * Passthru lines: File: "C.h", "after"
 */


#include <titeratr.h>
#include <mcollect.h>

#define somf_TSet_MajorVersion 2
#define somf_TSet_MinorVersion 1

/*
 * External name shortening if required
 */
#ifdef SOM_USE_SHORT_EXTERNAL_NAMES
#define somf_TSetNewClass c
#pragma linkage(c, system)
#define somf_TSetClassData d
#define somf_TSetCClassData x
#endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
/*--------------Migration------------*/
#define somf_TSet_classObj somf_TSetClassData.classObject
#define _somf_TSet somf_TSet_classObj

/*
 * Declare the class creation procedure
 */
SOMEXTERN SOMClass * SOMLINK somf_TSetNewClass(integer4 somtmajorVersion,
		integer4 somtminorVersion);
#pragma linkage(somf_TSetNewClass, system)

/*
 * Declare the class data structure
 */
SOMEXTERN struct somf_TSetClassDataStructure {
	SOMClass *classObject;
	somMToken somfDifferenceS;
	somMToken somfDifferenceSS;
	somMToken somfIntersectionS;
	somMToken somfIntersectionSS;
	somMToken somfUnionS;
	somMToken somfUnionSS;
	somMToken somfXorS;
	somMToken somfXorSS;
	somMToken somfSetHashFunction;
	somMToken somfGetHashFunction;
	somMToken somfRehash;
	somMToken somfFind;
	somMToken somfMakeNewTable;
	somMToken somfCopyIn;
	somMToken somfGrow;
	somMToken somfAssign;
	somMToken somfTSetInitFL;
	somMToken somfTSetInitF;
	somMToken somfTSetInitLF;
	somMToken somfTSetInitL;
	somMToken somfTSetInitS;
} SOMDLINK somf_TSetClassData;

/*
 * Declare the C specific class data structure
 */
SOMEXTERN struct somf_TSetCClassDataStructure {
	somMethodTabs parentMtab;
	somDToken instanceDataToken;
} SOMDLINK somf_TSetCClassData;

/*
 * New and Renew macros for somf_TSet
 */
#define somf_TSetNew() \
   (_somNew(_somf_TSet ? _somf_TSet : somf_TSetNewClass(somf_TSet_MajorVersion, somf_TSet_MinorVersion)))
#define somf_TSetRenew(buf) \
   (_somRenew(_somf_TSet ? _somf_TSet : somf_TSetNewClass(somf_TSet_MajorVersion, somf_TSet_MinorVersion), buf))

/*
 * Override method: somInit
 */
#define somf_TSet_somInit(somSelf) \
	SOMObject_somInit(somSelf)

/*
 * Override method: somUninit
 */
#define somf_TSet_somUninit(somSelf) \
	SOMObject_somUninit(somSelf)

/*
 * Override method: somfAdd
 */
#define somf_TSet_somfAdd(somSelf,ev,obj) \
	somf_TCollection_somfAdd(somSelf,ev,obj)

/*
 * Override method: somfRemove
 */
#define somf_TSet_somfRemove(somSelf,ev,obj) \
	somf_TCollection_somfRemove(somSelf,ev,obj)

/*
 * Override method: somfRemoveAll
 */
#define somf_TSet_somfRemoveAll(somSelf,ev) \
	somf_TCollection_somfRemoveAll(somSelf,ev)

/*
 * Override method: somfDeleteAll
 */
#define somf_TSet_somfDeleteAll(somSelf,ev) \
	somf_TCollection_somfDeleteAll(somSelf,ev)

/*
 * Override method: somfCount
 */
#define somf_TSet_somfCount(somSelf,ev) \
	somf_TCollection_somfCount(somSelf,ev)

/*
 * Override method: somfMember
 */
#define somf_TSet_somfMember(somSelf,ev,obj) \
	somf_TCollection_somfMember(somSelf,ev,obj)

/*
 * Override method: somfCreateIterator
 */
#define somf_TSet_somfCreateIterator(somSelf,ev) \
	somf_TCollection_somfCreateIterator(somSelf,ev)

/*
 * New Method: somfTSetInitFL
 */
typedef somf_TSet*   SOMLINK somTP_somf_TSet_somfTSetInitFL(somf_TSet *somSelf, Environment *ev, 
		somf_MCollectible_somf_MCollectibleCompareFn testfn, 
		long setSizeHint);
#pragma linkage(somTP_somf_TSet_somfTSetInitFL, system)
typedef somTP_somf_TSet_somfTSetInitFL *somTD_somf_TSet_somfTSetInitFL;
#define somMD_somf_TSet_somfTSetInitFL "::somf_TSet::somfTSetInitFL"
#define somf_TSet_somfTSetInitFL(somSelf,ev,testfn,setSizeHint) \
    (SOM_Resolve(somSelf, somf_TSet, somfTSetInitFL) \
	(somSelf,ev,testfn,setSizeHint))
#ifndef SOMGD_somfTSetInitFL
    #if (defined(_somfTSetInitFL) || defined(__somfTSetInitFL))
        #undef _somfTSetInitFL
        #undef __somfTSetInitFL
        #define SOMGD_somfTSetInitFL 1
    #else
        #define _somfTSetInitFL somf_TSet_somfTSetInitFL
    #endif /* _somfTSetInitFL */
#endif /* SOMGD_somfTSetInitFL */

/*
 * New Method: somfTSetInitF
 */
typedef somf_TSet*   SOMLINK somTP_somf_TSet_somfTSetInitF(somf_TSet *somSelf, Environment *ev, 
		somf_MCollectible_somf_MCollectibleCompareFn testfn);
#pragma linkage(somTP_somf_TSet_somfTSetInitF, system)
typedef somTP_somf_TSet_somfTSetInitF *somTD_somf_TSet_somfTSetInitF;
#define somMD_somf_TSet_somfTSetInitF "::somf_TSet::somfTSetInitF"
#define somf_TSet_somfTSetInitF(somSelf,ev,testfn) \
    (SOM_Resolve(somSelf, somf_TSet, somfTSetInitF) \
	(somSelf,ev,testfn))
#ifndef SOMGD_somfTSetInitF
    #if (defined(_somfTSetInitF) || defined(__somfTSetInitF))
        #undef _somfTSetInitF
        #undef __somfTSetInitF
        #define SOMGD_somfTSetInitF 1
    #else
        #define _somfTSetInitF somf_TSet_somfTSetInitF
    #endif /* _somfTSetInitF */
#endif /* SOMGD_somfTSetInitF */

/*
 * New Method: somfTSetInitLF
 */
typedef somf_TSet*   SOMLINK somTP_somf_TSet_somfTSetInitLF(somf_TSet *somSelf, Environment *ev, 
		long setSizeHint, 
		somf_MCollectible_somf_MCollectibleCompareFn testfn);
#pragma linkage(somTP_somf_TSet_somfTSetInitLF, system)
typedef somTP_somf_TSet_somfTSetInitLF *somTD_somf_TSet_somfTSetInitLF;
#define somMD_somf_TSet_somfTSetInitLF "::somf_TSet::somfTSetInitLF"
#define somf_TSet_somfTSetInitLF(somSelf,ev,setSizeHint,testfn) \
    (SOM_Resolve(somSelf, somf_TSet, somfTSetInitLF) \
	(somSelf,ev,setSizeHint,testfn))
#ifndef SOMGD_somfTSetInitLF
    #if (defined(_somfTSetInitLF) || defined(__somfTSetInitLF))
        #undef _somfTSetInitLF
        #undef __somfTSetInitLF
        #define SOMGD_somfTSetInitLF 1
    #else
        #define _somfTSetInitLF somf_TSet_somfTSetInitLF
    #endif /* _somfTSetInitLF */
#endif /* SOMGD_somfTSetInitLF */

/*
 * New Method: somfTSetInitL
 */
typedef somf_TSet*   SOMLINK somTP_somf_TSet_somfTSetInitL(somf_TSet *somSelf, Environment *ev, 
		long setSizeHint);
#pragma linkage(somTP_somf_TSet_somfTSetInitL, system)
typedef somTP_somf_TSet_somfTSetInitL *somTD_somf_TSet_somfTSetInitL;
#define somMD_somf_TSet_somfTSetInitL "::somf_TSet::somfTSetInitL"
#define somf_TSet_somfTSetInitL(somSelf,ev,setSizeHint) \
    (SOM_Resolve(somSelf, somf_TSet, somfTSetInitL) \
	(somSelf,ev,setSizeHint))
#ifndef SOMGD_somfTSetInitL
    #if (defined(_somfTSetInitL) || defined(__somfTSetInitL))
        #undef _somfTSetInitL
        #undef __somfTSetInitL
        #define SOMGD_somfTSetInitL 1
    #else
        #define _somfTSetInitL somf_TSet_somfTSetInitL
    #endif /* _somfTSetInitL */
#endif /* SOMGD_somfTSetInitL */

/*
 * New Method: somfTSetInitS
 */
typedef somf_TSet*   SOMLINK somTP_somf_TSet_somfTSetInitS(somf_TSet *somSelf, Environment *ev, 
		somf_TSet* s);
#pragma linkage(somTP_somf_TSet_somfTSetInitS, system)
typedef somTP_somf_TSet_somfTSetInitS *somTD_somf_TSet_somfTSetInitS;
#define somMD_somf_TSet_somfTSetInitS "::somf_TSet::somfTSetInitS"
#define somf_TSet_somfTSetInitS(somSelf,ev,s) \
    (SOM_Resolve(somSelf, somf_TSet, somfTSetInitS) \
	(somSelf,ev,s))
#ifndef SOMGD_somfTSetInitS
    #if (defined(_somfTSetInitS) || defined(__somfTSetInitS))
        #undef _somfTSetInitS
        #undef __somfTSetInitS
        #define SOMGD_somfTSetInitS 1
    #else
        #define _somfTSetInitS somf_TSet_somfTSetInitS
    #endif /* _somfTSetInitS */
#endif /* SOMGD_somfTSetInitS */

/*
 * New Method: somfAssign
 */
typedef void   SOMLINK somTP_somf_TSet_somfAssign(somf_TSet *somSelf, Environment *ev, 
		somf_TSet* source);
#pragma linkage(somTP_somf_TSet_somfAssign, system)
typedef somTP_somf_TSet_somfAssign *somTD_somf_TSet_somfAssign;
#define somMD_somf_TSet_somfAssign "::somf_TSet::somfAssign"
#define somf_TSet_somfAssign(somSelf,ev,source) \
    (SOM_Resolve(somSelf, somf_TSet, somfAssign) \
	(somSelf,ev,source))
#ifndef SOMGD_somfAssign
    #if (defined(_somfAssign) || defined(__somfAssign))
        #undef _somfAssign
        #undef __somfAssign
        #define SOMGD_somfAssign 1
    #else
        #define _somfAssign somf_TSet_somfAssign
    #endif /* _somfAssign */
#endif /* SOMGD_somfAssign */

/*
 * New Method: somfDifferenceS
 */
typedef void   SOMLINK somTP_somf_TSet_somfDifferenceS(somf_TSet *somSelf, Environment *ev, 
		somf_TSet* set1);
#pragma linkage(somTP_somf_TSet_somfDifferenceS, system)
typedef somTP_somf_TSet_somfDifferenceS *somTD_somf_TSet_somfDifferenceS;
#define somMD_somf_TSet_somfDifferenceS "::somf_TSet::somfDifferenceS"
#define somf_TSet_somfDifferenceS(somSelf,ev,set1) \
    (SOM_Resolve(somSelf, somf_TSet, somfDifferenceS) \
	(somSelf,ev,set1))
#ifndef SOMGD_somfDifferenceS
    #if (defined(_somfDifferenceS) || defined(__somfDifferenceS))
        #undef _somfDifferenceS
        #undef __somfDifferenceS
        #define SOMGD_somfDifferenceS 1
    #else
        #define _somfDifferenceS somf_TSet_somfDifferenceS
    #endif /* _somfDifferenceS */
#endif /* SOMGD_somfDifferenceS */

/*
 * New Method: somfDifferenceSS
 */
typedef void   SOMLINK somTP_somf_TSet_somfDifferenceSS(somf_TSet *somSelf, Environment *ev, 
		somf_TSet* set1, 
		somf_TSet* resultSet);
#pragma linkage(somTP_somf_TSet_somfDifferenceSS, system)
typedef somTP_somf_TSet_somfDifferenceSS *somTD_somf_TSet_somfDifferenceSS;
#define somMD_somf_TSet_somfDifferenceSS "::somf_TSet::somfDifferenceSS"
#define somf_TSet_somfDifferenceSS(somSelf,ev,set1,resultSet) \
    (SOM_Resolve(somSelf, somf_TSet, somfDifferenceSS) \
	(somSelf,ev,set1,resultSet))
#ifndef SOMGD_somfDifferenceSS
    #if (defined(_somfDifferenceSS) || defined(__somfDifferenceSS))
        #undef _somfDifferenceSS
        #undef __somfDifferenceSS
        #define SOMGD_somfDifferenceSS 1
    #else
        #define _somfDifferenceSS somf_TSet_somfDifferenceSS
    #endif /* _somfDifferenceSS */
#endif /* SOMGD_somfDifferenceSS */

/*
 * New Method: somfIntersectionS
 */
typedef void   SOMLINK somTP_somf_TSet_somfIntersectionS(somf_TSet *somSelf, Environment *ev, 
		somf_TSet* set1);
#pragma linkage(somTP_somf_TSet_somfIntersectionS, system)
typedef somTP_somf_TSet_somfIntersectionS *somTD_somf_TSet_somfIntersectionS;
#define somMD_somf_TSet_somfIntersectionS "::somf_TSet::somfIntersectionS"
#define somf_TSet_somfIntersectionS(somSelf,ev,set1) \
    (SOM_Resolve(somSelf, somf_TSet, somfIntersectionS) \
	(somSelf,ev,set1))
#ifndef SOMGD_somfIntersectionS
    #if (defined(_somfIntersectionS) || defined(__somfIntersectionS))
        #undef _somfIntersectionS
        #undef __somfIntersectionS
        #define SOMGD_somfIntersectionS 1
    #else
        #define _somfIntersectionS somf_TSet_somfIntersectionS
    #endif /* _somfIntersectionS */
#endif /* SOMGD_somfIntersectionS */

/*
 * New Method: somfIntersectionSS
 */
typedef void   SOMLINK somTP_somf_TSet_somfIntersectionSS(somf_TSet *somSelf, Environment *ev, 
		somf_TSet* set1, 
		somf_TSet* resultSet);
#pragma linkage(somTP_somf_TSet_somfIntersectionSS, system)
typedef somTP_somf_TSet_somfIntersectionSS *somTD_somf_TSet_somfIntersectionSS;
#define somMD_somf_TSet_somfIntersectionSS "::somf_TSet::somfIntersectionSS"
#define somf_TSet_somfIntersectionSS(somSelf,ev,set1,resultSet) \
    (SOM_Resolve(somSelf, somf_TSet, somfIntersectionSS) \
	(somSelf,ev,set1,resultSet))
#ifndef SOMGD_somfIntersectionSS
    #if (defined(_somfIntersectionSS) || defined(__somfIntersectionSS))
        #undef _somfIntersectionSS
        #undef __somfIntersectionSS
        #define SOMGD_somfIntersectionSS 1
    #else
        #define _somfIntersectionSS somf_TSet_somfIntersectionSS
    #endif /* _somfIntersectionSS */
#endif /* SOMGD_somfIntersectionSS */

/*
 * New Method: somfUnionS
 */
typedef void   SOMLINK somTP_somf_TSet_somfUnionS(somf_TSet *somSelf, Environment *ev, 
		somf_TSet* set1);
#pragma linkage(somTP_somf_TSet_somfUnionS, system)
typedef somTP_somf_TSet_somfUnionS *somTD_somf_TSet_somfUnionS;
#define somMD_somf_TSet_somfUnionS "::somf_TSet::somfUnionS"
#define somf_TSet_somfUnionS(somSelf,ev,set1) \
    (SOM_Resolve(somSelf, somf_TSet, somfUnionS) \
	(somSelf,ev,set1))
#ifndef SOMGD_somfUnionS
    #if (defined(_somfUnionS) || defined(__somfUnionS))
        #undef _somfUnionS
        #undef __somfUnionS
        #define SOMGD_somfUnionS 1
    #else
        #define _somfUnionS somf_TSet_somfUnionS
    #endif /* _somfUnionS */
#endif /* SOMGD_somfUnionS */

/*
 * New Method: somfUnionSS
 */
typedef void   SOMLINK somTP_somf_TSet_somfUnionSS(somf_TSet *somSelf, Environment *ev, 
		somf_TSet* set1, 
		somf_TSet* resultSet);
#pragma linkage(somTP_somf_TSet_somfUnionSS, system)
typedef somTP_somf_TSet_somfUnionSS *somTD_somf_TSet_somfUnionSS;
#define somMD_somf_TSet_somfUnionSS "::somf_TSet::somfUnionSS"
#define somf_TSet_somfUnionSS(somSelf,ev,set1,resultSet) \
    (SOM_Resolve(somSelf, somf_TSet, somfUnionSS) \
	(somSelf,ev,set1,resultSet))
#ifndef SOMGD_somfUnionSS
    #if (defined(_somfUnionSS) || defined(__somfUnionSS))
        #undef _somfUnionSS
        #undef __somfUnionSS
        #define SOMGD_somfUnionSS 1
    #else
        #define _somfUnionSS somf_TSet_somfUnionSS
    #endif /* _somfUnionSS */
#endif /* SOMGD_somfUnionSS */

/*
 * New Method: somfXorS
 */
typedef void   SOMLINK somTP_somf_TSet_somfXorS(somf_TSet *somSelf, Environment *ev, 
		somf_TSet* set1);
#pragma linkage(somTP_somf_TSet_somfXorS, system)
typedef somTP_somf_TSet_somfXorS *somTD_somf_TSet_somfXorS;
#define somMD_somf_TSet_somfXorS "::somf_TSet::somfXorS"
#define somf_TSet_somfXorS(somSelf,ev,set1) \
    (SOM_Resolve(somSelf, somf_TSet, somfXorS) \
	(somSelf,ev,set1))
#ifndef SOMGD_somfXorS
    #if (defined(_somfXorS) || defined(__somfXorS))
        #undef _somfXorS
        #undef __somfXorS
        #define SOMGD_somfXorS 1
    #else
        #define _somfXorS somf_TSet_somfXorS
    #endif /* _somfXorS */
#endif /* SOMGD_somfXorS */

/*
 * New Method: somfXorSS
 */
typedef void   SOMLINK somTP_somf_TSet_somfXorSS(somf_TSet *somSelf, Environment *ev, 
		somf_TSet* set1, 
		somf_TSet* resultSet);
#pragma linkage(somTP_somf_TSet_somfXorSS, system)
typedef somTP_somf_TSet_somfXorSS *somTD_somf_TSet_somfXorSS;
#define somMD_somf_TSet_somfXorSS "::somf_TSet::somfXorSS"
#define somf_TSet_somfXorSS(somSelf,ev,set1,resultSet) \
    (SOM_Resolve(somSelf, somf_TSet, somfXorSS) \
	(somSelf,ev,set1,resultSet))
#ifndef SOMGD_somfXorSS
    #if (defined(_somfXorSS) || defined(__somfXorSS))
        #undef _somfXorSS
        #undef __somfXorSS
        #define SOMGD_somfXorSS 1
    #else
        #define _somfXorSS somf_TSet_somfXorSS
    #endif /* _somfXorSS */
#endif /* SOMGD_somfXorSS */

/*
 * New Method: somfSetHashFunction
 */
typedef void   SOMLINK somTP_somf_TSet_somfSetHashFunction(somf_TSet *somSelf, Environment *ev, 
		somf_MCollectible_somf_MCollectibleHashFn fn);
#pragma linkage(somTP_somf_TSet_somfSetHashFunction, system)
typedef somTP_somf_TSet_somfSetHashFunction *somTD_somf_TSet_somfSetHashFunction;
#define somMD_somf_TSet_somfSetHashFunction "::somf_TSet::somfSetHashFunction"
#define somf_TSet_somfSetHashFunction(somSelf,ev,fn) \
    (SOM_Resolve(somSelf, somf_TSet, somfSetHashFunction) \
	(somSelf,ev,fn))
#ifndef SOMGD_somfSetHashFunction
    #if (defined(_somfSetHashFunction) || defined(__somfSetHashFunction))
        #undef _somfSetHashFunction
        #undef __somfSetHashFunction
        #define SOMGD_somfSetHashFunction 1
    #else
        #define _somfSetHashFunction somf_TSet_somfSetHashFunction
    #endif /* _somfSetHashFunction */
#endif /* SOMGD_somfSetHashFunction */

/*
 * New Method: somfGetHashFunction
 */
typedef somf_MCollectible_somf_MCollectibleHashFn   SOMLINK somTP_somf_TSet_somfGetHashFunction(somf_TSet *somSelf, Environment *ev);
#pragma linkage(somTP_somf_TSet_somfGetHashFunction, system)
typedef somTP_somf_TSet_somfGetHashFunction *somTD_somf_TSet_somfGetHashFunction;
#define somMD_somf_TSet_somfGetHashFunction "::somf_TSet::somfGetHashFunction"
#define somf_TSet_somfGetHashFunction(somSelf,ev) \
    (SOM_Resolve(somSelf, somf_TSet, somfGetHashFunction) \
	(somSelf,ev))
#ifndef SOMGD_somfGetHashFunction
    #if (defined(_somfGetHashFunction) || defined(__somfGetHashFunction))
        #undef _somfGetHashFunction
        #undef __somfGetHashFunction
        #define SOMGD_somfGetHashFunction 1
    #else
        #define _somfGetHashFunction somf_TSet_somfGetHashFunction
    #endif /* _somfGetHashFunction */
#endif /* SOMGD_somfGetHashFunction */

/*
 * New Method: somfRehash
 */
typedef void   SOMLINK somTP_somf_TSet_somfRehash(somf_TSet *somSelf, Environment *ev);
#pragma linkage(somTP_somf_TSet_somfRehash, system)
typedef somTP_somf_TSet_somfRehash *somTD_somf_TSet_somfRehash;
#define somMD_somf_TSet_somfRehash "::somf_TSet::somfRehash"
#define somf_TSet_somfRehash(somSelf,ev) \
    (SOM_Resolve(somSelf, somf_TSet, somfRehash) \
	(somSelf,ev))
#ifndef SOMGD_somfRehash
    #if (defined(_somfRehash) || defined(__somfRehash))
        #undef _somfRehash
        #undef __somfRehash
        #define SOMGD_somfRehash 1
    #else
        #define _somfRehash somf_TSet_somfRehash
    #endif /* _somfRehash */
#endif /* SOMGD_somfRehash */
#ifndef SOM_DONT_USE_INHERITED_MACROS
#define somf_TSet_somfAddAll somf_TCollection_somfAddAll
#define somf_TSet_somfTestFunction somf_TCollection_somfTestFunction
#define somf_TSet_somfSetTestFunction somf_TCollection_somfSetTestFunction
#define somf_TSet_somfTCollectionInit somf_TCollection_somfTCollectionInit
#define somf_TSet_somfClone somf_MCollectible_somfClone
#define somf_TSet_somfClonePointer somf_MCollectible_somfClonePointer
#define somf_TSet_somfHash somf_MCollectible_somfHash
#define somf_TSet_somfIsEqual somf_MCollectible_somfIsEqual
#define somf_TSet_somfIsSame somf_MCollectible_somfIsSame
#define somf_TSet_somfIsNotEqual somf_MCollectible_somfIsNotEqual
#define somf_TSet_somDefaultInit SOMObject_somDefaultInit
#define somf_TSet_somDestruct SOMObject_somDestruct
#define somf_TSet_somDefaultCopyInit SOMObject_somDefaultCopyInit
#define somf_TSet_somDefaultAssign SOMObject_somDefaultAssign
#define somf_TSet_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
#define somf_TSet_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
#define somf_TSet_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
#define somf_TSet_somDefaultConstAssign SOMObject_somDefaultConstAssign
#define somf_TSet_somDefaultVAssign SOMObject_somDefaultVAssign
#define somf_TSet_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
#define somf_TSet_somFree SOMObject_somFree
#define somf_TSet_somGetClass SOMObject_somGetClass
#define somf_TSet_somGetClassName SOMObject_somGetClassName
#define somf_TSet_somGetSize SOMObject_somGetSize
#define somf_TSet_somIsA SOMObject_somIsA
#define somf_TSet_somIsInstanceOf SOMObject_somIsInstanceOf
#define somf_TSet_somRespondsTo SOMObject_somRespondsTo
#define somf_TSet_somDispatch SOMObject_somDispatch
#define somf_TSet_somClassDispatch SOMObject_somClassDispatch
#define somf_TSet_somCastObj SOMObject_somCastObj
#define somf_TSet_somResetObj SOMObject_somResetObj
#define somf_TSet_somPrintSelf SOMObject_somPrintSelf
#define somf_TSet_somDumpSelf SOMObject_somDumpSelf
#define somf_TSet_somDumpSelfInt SOMObject_somDumpSelfInt
#endif /* SOM_DONT_USE_INHERITED_MACROS */

#endif       /* SOM_somf_TSet_h */
