home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / warptlk3.zip / TOOLKIT / SOM / INCLUDE / REPOSTRY.XH < prev    next >
Text File  |  1995-08-30  |  20KB  |  756 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: repostry.xh.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.29.1.2
  7.  *     SOM Emitter emitxh: 2.41
  8.  */
  9.  
  10. /*
  11.  * 
  12.  *    COMPONENT_NAME: somi
  13.  * 
  14.  *    ORIGINS: 27
  15.  * 
  16.  * 
  17.  *    10H9767, 10H9769  (C) COPYRIGHT International Business Machines Corp. 1992,1994
  18.  *    All Rights Reserved
  19.  *    Licensed Materials - Property of IBM
  20.  *    US Government Users Restricted Rights - Use, duplication or
  21.  *    disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  22.  * 
  23.  *   Repository: CORBA Interface for access to repository objects
  24.  *   See CORBA 7.5.2, pp.132-133
  25.  */
  26.  
  27.  
  28. #ifndef SOM_Repository_xh
  29. #define SOM_Repository_xh
  30.  
  31. class Repository;
  32.  
  33. #define Repository_MajorVersion 2
  34. #define Repository_MinorVersion 1
  35.  
  36. /*
  37.  * Passthru lines: File: "C.xh", "before"
  38.  */
  39.  
  40.     #include <stdio.h>
  41.     #include <somtcnst.xh>
  42.     #include <somir.xh>
  43.     #include <containd.xh>
  44.  
  45.  
  46. /* C++ SOM defs */
  47. #include <somcls.xh>
  48. #include <somcm.xh>
  49.  
  50. /* C++ parent defs */
  51. #ifndef SOM_Container_xh
  52. #include <containr.xh>
  53. #endif
  54.  
  55. #ifndef Repository_API
  56. #define Repository_API
  57. /*
  58.  * -- The Class API
  59.  */
  60.  
  61. /*
  62.  * Start of user-defined types:
  63.  */
  64. class SOMClass;
  65. class SOMObject;
  66. class Contained;
  67. typedef
  68. struct Repository_RepositoryDescription {
  69. Identifier name;
  70. string  id;
  71. string  defined_in;
  72. } Repository_RepositoryDescription;
  73.  
  74. /*
  75.  *  The inherited describe_contents method returns an instance
  76.  *  of this (RepositoryDescription) structure in the value
  77.  *  member of the Description structure defined in the Container
  78.  *  interface.
  79.  */
  80. typedef unsigned long Repository_irOpenErrorCodes;
  81. #define Repository_NOACCESS 1UL
  82. #define Repository_BADMAGICNUMBER 2UL
  83. #define Repository_MISSINGVERSIONINFO 3UL
  84. #define Repository_IOERROR 4UL
  85. #define Repository_VERSIONMISMATCH 5UL
  86. #define ex_Repository_irOpenError "::Repository::irOpenError"
  87. typedef
  88. struct Repository_irOpenError {
  89. Repository_irOpenErrorCodes errorCode;
  90. string  fileName;
  91. } Repository_irOpenError;
  92.  
  93. /*
  94.  *  The irOpenError and associated irOpenErrorCodes are a
  95.  *  SOM-unique extension to the Interface Repository.  These
  96.  *  errors may be raised by the somNew when instantiating the
  97.  *  Repository object and can be found in the SOM global
  98.  *  Environment.
  99.  */
  100.  
  101. #ifndef SOM_DONT_USE_SHORT_NAMES
  102. #ifndef SOMTGD_RepositoryDescription
  103.     #ifdef RepositoryDescription
  104.         #undef RepositoryDescription
  105.         #define SOMTGD_RepositoryDescription 1
  106.     #else
  107.         #define RepositoryDescription Repository_RepositoryDescription
  108.     #endif /* RepositoryDescription */
  109. #endif /* SOMTGD_RepositoryDescription */
  110. #ifndef SOMTGD_irOpenErrorCodes
  111.     #ifdef irOpenErrorCodes
  112.         #undef irOpenErrorCodes
  113.         #define SOMTGD_irOpenErrorCodes 1
  114.     #else
  115.         #define irOpenErrorCodes Repository_irOpenErrorCodes
  116.     #endif /* irOpenErrorCodes */
  117. #endif /* SOMTGD_irOpenErrorCodes */
  118. #ifndef SOMTGD_ex_irOpenError
  119.     #ifdef ex_irOpenError
  120.         #undef ex_irOpenError
  121.         #define SOMTGD_ex_irOpenError 1
  122.     #else
  123.         #define ex_irOpenError ex_Repository_irOpenError
  124.     #endif /* ex_irOpenError */
  125. #endif /* SOMTGD_ex_irOpenError */
  126. #ifndef SOMTGD_irOpenError
  127.     #ifdef irOpenError
  128.         #undef irOpenError
  129.         #define SOMTGD_irOpenError 1
  130.     #else
  131.         #define irOpenError Repository_irOpenError
  132.     #endif /* irOpenError */
  133. #endif /* SOMTGD_irOpenError */
  134. #endif /* SOM_DONT_USE_SHORT_NAMES */
  135.  
  136. /*
  137.  * End of user-defined types.
  138.  */
  139.  
  140. /* A procedure to create the Repository Class */
  141. SOMEXTERN SOMClass * SOMLINK RepositoryNewClass(
  142.         integer4 majorVersion,
  143.         integer4 minorVersion);
  144.  
  145. /* The API to the Repository class object, and the methods it introduces. */
  146. SOMEXTERN struct RepositoryClassDataStructure {
  147.     SOMClass *classObject;
  148.     somMToken lookup_id;
  149.     somMToken lookup_modifier;
  150.     somMToken release_cache;
  151. } SOMDLINK RepositoryClassData;
  152. #define _Repository RepositoryClassData.classObject
  153.  
  154. /* The API to parentMtabs for Repository, and the instance data it introduces. */
  155. SOMEXTERN struct RepositoryCClassDataStructure {
  156.     somMethodTabs parentMtab;
  157.     somDToken              instanceDataToken;
  158. } SOMDLINK RepositoryCClassData;
  159.  
  160. /*
  161.  * -- Typedefs for Repository Method Procedures
  162.  */
  163. SOMEXTERN {
  164. typedef Contained*   (SOMLINK * somTD_Repository_lookup_id)(Repository *somSelf, Environment *ev,
  165.         string search_id);
  166. typedef string   (SOMLINK * somTD_Repository_lookup_modifier)(Repository *somSelf, Environment *ev,
  167.         string name,
  168.         string modifier);
  169. typedef void   (SOMLINK * somTD_Repository_release_cache)(Repository *somSelf, Environment *ev);
  170.  
  171. /*
  172.  * -- Typedefs for Reintroduced Wrapper Methods
  173.  */
  174. typedef _IDL_SEQUENCE_Contained   (SOMLINK * somTD_Repository_contents)(Repository *somSelf, Environment *ev,
  175.         Container_InterfaceName limit_type,
  176.         boolean exclude_inherited);
  177. typedef _IDL_SEQUENCE_Contained   (SOMLINK * somTD_Repository_lookup_name)(Repository *somSelf, Environment *ev,
  178.         Identifier search_name,
  179.         long levels_to_search,
  180.         Container_InterfaceName limit_type,
  181.         boolean exclude_inherited);
  182. typedef _IDL_SEQUENCE_Container_ContainerDescription   (SOMLINK * somTD_Repository_describe_contents)(Repository *somSelf, Environment *ev,
  183.         Container_InterfaceName limit_type,
  184.         boolean exclude_inherited,
  185.         long max_returned_objs);
  186. typedef void   (SOMLINK * somTD_Repository_somInit)(Repository *somSelf);
  187. typedef void   (SOMLINK * somTD_Repository_somUninit)(Repository *somSelf);
  188. typedef void   (SOMLINK * somTD_Repository_somDumpSelf)(Repository *somSelf,
  189.         long level);
  190. typedef void   (SOMLINK * somTD_Repository_somDumpSelfInt)(Repository *somSelf,
  191.         long level);
  192. typedef void   (SOMLINK * somTD_Repository_somDefaultInit)(Repository *somSelf,
  193.         somInitCtrl* ctrl);
  194. typedef void   (SOMLINK * somTD_Repository_somDestruct)(Repository *somSelf,
  195.         octet doFree,
  196.         somDestructCtrl* ctrl);
  197. typedef void   (SOMLINK * somTD_Repository_somDefaultCopyInit)(Repository *somSelf,
  198.         somInitCtrl* ctrl,
  199.         SOMObject* fromObj);
  200. typedef Repository*   (SOMLINK * somTD_Repository_somDefaultAssign)(Repository *somSelf,
  201.         somAssignCtrl* ctrl,
  202.         SOMObject* fromObj);
  203. typedef void   (SOMLINK * somTD_Repository_somDefaultConstCopyInit)(Repository *somSelf,
  204.         somInitCtrl* ctrl,
  205.         SOMObject* fromObj);
  206. typedef void   (SOMLINK * somTD_Repository_somDefaultVCopyInit)(Repository *somSelf,
  207.         somInitCtrl* ctrl,
  208.         SOMObject* fromObj);
  209. typedef void   (SOMLINK * somTD_Repository_somDefaultConstVCopyInit)(Repository *somSelf,
  210.         somInitCtrl* ctrl,
  211.         SOMObject* fromObj);
  212. typedef Repository*   (SOMLINK * somTD_Repository_somDefaultConstAssign)(Repository *somSelf,
  213.         somAssignCtrl* ctrl,
  214.         SOMObject* fromObj);
  215. typedef Repository*   (SOMLINK * somTD_Repository_somDefaultVAssign)(Repository *somSelf,
  216.         somAssignCtrl* ctrl,
  217.         SOMObject* fromObj);
  218. typedef Repository*   (SOMLINK * somTD_Repository_somDefaultConstVAssign)(Repository *somSelf,
  219.         somAssignCtrl* ctrl,
  220.         SOMObject* fromObj);
  221. typedef void   (SOMLINK * somTD_Repository_somFree)(Repository *somSelf);
  222. typedef SOMClass*   (SOMLINK * somTD_Repository_somGetClass)(Repository *somSelf);
  223. typedef string   (SOMLINK * somTD_Repository_somGetClassName)(Repository *somSelf);
  224. typedef long   (SOMLINK * somTD_Repository_somGetSize)(Repository *somSelf);
  225. typedef boolean   (SOMLINK * somTD_Repository_somIsA)(Repository *somSelf,
  226.         SOMClass* aClassObj);
  227. typedef boolean   (SOMLINK * somTD_Repository_somIsInstanceOf)(Repository *somSelf,
  228.         SOMClass* aClassObj);
  229. typedef boolean   (SOMLINK * somTD_Repository_somRespondsTo)(Repository *somSelf,
  230.         somId mId);
  231. typedef boolean   (SOMLINK * somTD_Repository_somDispatch)(Repository *somSelf,
  232.         somToken* retValue,
  233.         somId methodId,
  234.         va_list ap);
  235. typedef boolean   (SOMLINK * somTD_Repository_somClassDispatch)(Repository *somSelf,
  236.         SOMClass* clsObj,
  237.         somToken* retValue,
  238.         somId methodId,
  239.         va_list ap);
  240. typedef boolean   (SOMLINK * somTD_Repository_somCastObj)(Repository *somSelf,
  241.         SOMClass* cls);
  242. typedef boolean   (SOMLINK * somTD_Repository_somResetObj)(Repository *somSelf);
  243. typedef void   (SOMLINK * somTD_Repository_somDispatchV)(Repository *somSelf,
  244.         somId methodId,
  245.         somId descriptor,
  246.         va_list ap);
  247. typedef long   (SOMLINK * somTD_Repository_somDispatchL)(Repository *somSelf,
  248.         somId methodId,
  249.         somId descriptor,
  250.         va_list ap);
  251. typedef void*   (SOMLINK * somTD_Repository_somDispatchA)(Repository *somSelf,
  252.         somId methodId,
  253.         somId descriptor,
  254.         va_list ap);
  255. typedef double   (SOMLINK * somTD_Repository_somDispatchD)(Repository *somSelf,
  256.         somId methodId,
  257.         somId descriptor,
  258.         va_list ap);
  259. typedef SOMObject*   (SOMLINK * somTD_Repository_somPrintSelf)(Repository *somSelf);
  260. }
  261.  
  262. #endif /* Repository_API */
  263.  
  264.  
  265. /*
  266.  * -- This emitter treats Method Tokens as Thunks by default.
  267.  * -- Use the sc modifier "nothunks" to change this default
  268.  */
  269. #undef somresolve_
  270. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  271.  
  272. /*
  273.  * -- The C++ Wrapper Class for Repository
  274.  */
  275. class Repository : public Container
  276. {
  277. public:
  278.  
  279. // Repository::new creates the class object if necessary, and then uses somNewNoInit
  280. // to allocate memory and create the object. Initialization is in ctors.
  281. void *operator new(size_t size)
  282. {
  283.    SOM_IgnoreWarning(size);
  284.    if (!_Repository) RepositoryNewClass(Repository_MajorVersion,Repository_MinorVersion);
  285.    return (void*)
  286.       SOM_Resolve(_Repository,SOMClass,somNewNoInit)
  287.          ((SOMClass *)((void*)_Repository));
  288. }
  289.  
  290. // Repository::delete uses the default deallocator for the object's class.
  291. void operator delete(void * obj)
  292. {
  293.    somToken objCls = obj ? *(void**)obj : (somToken) NULL;
  294.    if (somIsObj(objCls)) {
  295.       SOM_Resolve(objCls,SOMClass,somDeallocate)
  296.          ((SOMClass*)objCls, (string)obj);
  297.    }
  298. }
  299.  
  300. Repository()
  301. {
  302.    if (*(void**)this != 
  303.        ((somParentMtabStructPtr)
  304.         (RepositoryCClassData.parentMtab))->mtab)
  305.       return;
  306.    somDefaultInit(0);
  307. }
  308.  
  309. Repository(Repository* fromObj)
  310. {
  311.    if (*(void**)this != 
  312.        ((somParentMtabStructPtr)
  313.         (RepositoryCClassData.parentMtab))->mtab)
  314.       return;
  315.    somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  316. }
  317.  
  318. Repository(const Repository* fromObj)
  319. {
  320.    if (*(void**)this != 
  321.        ((somParentMtabStructPtr)
  322.         (RepositoryCClassData.parentMtab))->mtab)
  323.       return;
  324.    somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
  325. }
  326.  
  327. ~Repository()
  328. {
  329.    if (!somIsObj(this)) return;
  330.    somDestruct(0,0);
  331.    *(void**)this = **(void***)this;
  332. }
  333.  
  334.  
  335. /* method: lookup_id */
  336. Contained*   lookup_id(Environment *ev,
  337.         string search_id)
  338. {
  339.    return SOM_ResolveD(this,Repository,Repository,lookup_id)
  340.     (this, ev,search_id);
  341. }
  342.  
  343.  
  344. /* method: lookup_modifier */
  345. string   lookup_modifier(Environment *ev,
  346.         string name,
  347.         string modifier)
  348. {
  349.    return SOM_ResolveD(this,Repository,Repository,lookup_modifier)
  350.     (this, ev,name,modifier);
  351. }
  352.  
  353.  
  354. /* method: release_cache */
  355. void   release_cache(Environment *ev)
  356. {
  357.    SOM_ResolveD(this,Repository,Repository,release_cache)
  358.     (this, ev);
  359. }
  360.  
  361.  
  362. /*
  363.  * Reintroduce inherited methods
  364.  */
  365.  
  366. /* method: contents */
  367. _IDL_SEQUENCE_Contained   contents(Environment *ev,
  368.         Container_InterfaceName limit_type,
  369.         boolean exclude_inherited)
  370. {
  371.    return SOM_ResolveD(this,Repository,Container,contents)
  372.     (this, ev,limit_type,exclude_inherited);
  373. }
  374.  
  375.  
  376. /* method: lookup_name */
  377. _IDL_SEQUENCE_Contained   lookup_name(Environment *ev,
  378.         Identifier search_name,
  379.         long levels_to_search,
  380.         Container_InterfaceName limit_type,
  381.         boolean exclude_inherited)
  382. {
  383.    return SOM_ResolveD(this,Repository,Container,lookup_name)
  384.     (this, ev,search_name,levels_to_search,limit_type,exclude_inherited);
  385. }
  386.  
  387.  
  388. /* method: describe_contents */
  389. _IDL_SEQUENCE_Container_ContainerDescription   describe_contents(Environment *ev,
  390.         Container_InterfaceName limit_type,
  391.         boolean exclude_inherited,
  392.         long max_returned_objs)
  393. {
  394.    return SOM_ResolveD(this,Repository,Container,describe_contents)
  395.     (this, ev,limit_type,exclude_inherited,max_returned_objs);
  396. }
  397.  
  398.  
  399. /* method: somInit */
  400. void   somInit()
  401. {
  402.    SOM_ResolveD(this,Repository,SOMObject,somInit)
  403.     (this);
  404. }
  405.  
  406.  
  407. /* method: somUninit */
  408. void   somUninit()
  409. {
  410.    SOM_ResolveD(this,Repository,SOMObject,somUninit)
  411.     (this);
  412. }
  413.  
  414.  
  415. /* method: somDumpSelf */
  416. void   somDumpSelf(long level)
  417. {
  418.    SOM_ResolveD(this,Repository,SOMObject,somDumpSelf)
  419.     (this,level);
  420. }
  421.  
  422.  
  423. /* method: somDumpSelfInt */
  424. void   somDumpSelfInt(long level)
  425. {
  426.    SOM_ResolveD(this,Repository,SOMObject,somDumpSelfInt)
  427.     (this,level);
  428. }
  429.  
  430.  
  431. /* initializer method: somDefaultInit */
  432. void   somDefaultInit(somInitCtrl* ctrl)
  433. {
  434.    SOM_ResolveD(this,Repository,SOMObject,somDefaultInit)
  435.     (this,ctrl);
  436. }
  437.  
  438.  
  439. /* method: somDestruct */
  440. void   somDestruct(octet doFree,
  441.         somDestructCtrl* ctrl)
  442. {
  443.    SOM_ResolveD(this,Repository,SOMObject,somDestruct)
  444.     (this,doFree,ctrl);
  445. }
  446.  
  447.  
  448. /* method: somDefaultCopyInit */
  449. void   somDefaultCopyInit(somInitCtrl* ctrl,
  450.         SOMObject* fromObj)
  451. {
  452.    SOM_ResolveD(this,Repository,SOMObject,somDefaultCopyInit)
  453.     (this,ctrl,fromObj);
  454. }
  455.  
  456.  
  457. /* method: somDefaultAssign */
  458. Repository*  somDefaultAssign(somAssignCtrl* ctrl,
  459.         SOMObject* fromObj)
  460. {
  461.    return SOM_ResolveD(this,Repository,SOMObject,somDefaultAssign)
  462.     (this,ctrl,fromObj);
  463. }
  464.  
  465.  
  466. /* method: somDefaultConstCopyInit */
  467. void   somDefaultConstCopyInit(somInitCtrl* ctrl,
  468.         SOMObject* fromObj)
  469. {
  470.    SOM_ResolveD(this,Repository,SOMObject,somDefaultConstCopyInit)
  471.     (this,ctrl,fromObj);
  472. }
  473.  
  474.  
  475. /* method: somDefaultVCopyInit */
  476. void   somDefaultVCopyInit(somInitCtrl* ctrl,
  477.         SOMObject* fromObj)
  478. {
  479.    SOM_ResolveD(this,Repository,SOMObject,somDefaultVCopyInit)
  480.     (this,ctrl,fromObj);
  481. }
  482.  
  483.  
  484. /* method: somDefaultConstVCopyInit */
  485. void   somDefaultConstVCopyInit(somInitCtrl* ctrl,
  486.         SOMObject* fromObj)
  487. {
  488.    SOM_ResolveD(this,Repository,SOMObject,somDefaultConstVCopyInit)
  489.     (this,ctrl,fromObj);
  490. }
  491.  
  492.  
  493. /* method: somDefaultConstAssign */
  494. Repository*  somDefaultConstAssign(somAssignCtrl* ctrl,
  495.         SOMObject* fromObj)
  496. {
  497.    return SOM_ResolveD(this,Repository,SOMObject,somDefaultConstAssign)
  498.     (this,ctrl,fromObj);
  499. }
  500.  
  501.  
  502. /* method: somDefaultVAssign */
  503. Repository*  somDefaultVAssign(somAssignCtrl* ctrl,
  504.         SOMObject* fromObj)
  505. {
  506.    return SOM_ResolveD(this,Repository,SOMObject,somDefaultVAssign)
  507.     (this,ctrl,fromObj);
  508. }
  509.  
  510.  
  511. /* method: somDefaultConstVAssign */
  512. Repository*  somDefaultConstVAssign(somAssignCtrl* ctrl,
  513.         SOMObject* fromObj)
  514. {
  515.    return SOM_ResolveD(this,Repository,SOMObject,somDefaultConstVAssign)
  516.     (this,ctrl,fromObj);
  517. }
  518.  
  519.  
  520. /* method: somFree */
  521. void   somFree()
  522. {
  523.    SOM_ResolveD(this,Repository,SOMObject,somFree)
  524.     (this);
  525. }
  526.  
  527.  
  528. /* method: somGetClass */
  529. SOMClass*   somGetClass()
  530. {
  531.    return SOM_ResolveD(this,Repository,SOMObject,somGetClass)
  532.     (this);
  533. }
  534.  
  535.  
  536. /* method: somGetClassName */
  537. string   somGetClassName()
  538. {
  539.    return SOM_ResolveD(this,Repository,SOMObject,somGetClassName)
  540.     (this);
  541. }
  542.  
  543.  
  544. /* method: somGetSize */
  545. long   somGetSize()
  546. {
  547.    return SOM_ResolveD(this,Repository,SOMObject,somGetSize)
  548.     (this);
  549. }
  550.  
  551.  
  552. /* method: somIsA */
  553. boolean   somIsA(SOMClass* aClassObj)
  554. {
  555.    return SOM_ResolveD(this,Repository,SOMObject,somIsA)
  556.     (this,aClassObj);
  557. }
  558.  
  559.  
  560. /* method: somIsInstanceOf */
  561. boolean   somIsInstanceOf(SOMClass* aClassObj)
  562. {
  563.    return SOM_ResolveD(this,Repository,SOMObject,somIsInstanceOf)
  564.     (this,aClassObj);
  565. }
  566.  
  567.  
  568. /* method: somRespondsTo */
  569. boolean   somRespondsTo(somId mId)
  570. {
  571.    return SOM_ResolveD(this,Repository,SOMObject,somRespondsTo)
  572.     (this,mId);
  573. }
  574.  
  575.  
  576. /* va_list method: somDispatch */
  577. /* the va_list invocation form */
  578. boolean   Repository_somDispatch(somToken* retValue,
  579.         somId methodId,
  580.         va_list ap)
  581. {
  582. return SOM_ResolveD(this,Repository,SOMObject,somDispatch)
  583.     (this,retValue,methodId,ap);
  584. }
  585.  
  586. /* the varargs invocation form */
  587. boolean   somDispatch(somToken* retValue,
  588.         somId methodId,
  589.         ...)
  590. {
  591.    va_list ap;
  592.    va_start(ap, methodId);
  593.    boolean __somResult = 
  594.       SOM_ResolveD(this,Repository,SOMObject,somDispatch)
  595.     (this,retValue,methodId,ap);
  596.    va_end(ap);
  597.    return __somResult;
  598. }
  599.  
  600.  
  601. /* va_list method: somClassDispatch */
  602. /* the va_list invocation form */
  603. boolean   Repository_somClassDispatch(SOMClass* clsObj,
  604.         somToken* retValue,
  605.         somId methodId,
  606.         va_list ap)
  607. {
  608. return SOM_ResolveD(this,Repository,SOMObject,somClassDispatch)
  609.     (this,clsObj,retValue,methodId,ap);
  610. }
  611.  
  612. /* the varargs invocation form */
  613. boolean   somClassDispatch(SOMClass* clsObj,
  614.         somToken* retValue,
  615.         somId methodId,
  616.         ...)
  617. {
  618.    va_list ap;
  619.    va_start(ap, methodId);
  620.    boolean __somResult = 
  621.       SOM_ResolveD(this,Repository,SOMObject,somClassDispatch)
  622.     (this,clsObj,retValue,methodId,ap);
  623.    va_end(ap);
  624.    return __somResult;
  625. }
  626.  
  627.  
  628. /* method: somCastObj */
  629. boolean   somCastObj(SOMClass* cls)
  630. {
  631.    return SOM_ResolveD(this,Repository,SOMObject,somCastObj)
  632.     (this,cls);
  633. }
  634.  
  635.  
  636. /* method: somResetObj */
  637. boolean   somResetObj()
  638. {
  639.    return SOM_ResolveD(this,Repository,SOMObject,somResetObj)
  640.     (this);
  641. }
  642.  
  643.  
  644. /* va_list method: somDispatchV */
  645. /* the va_list invocation form */
  646. void   Repository_somDispatchV(somId methodId,
  647.         somId descriptor,
  648.         va_list ap)
  649. {
  650.    SOM_ResolveD(this,Repository,SOMObject,somDispatchV)
  651.     (this,methodId,descriptor,ap);
  652. }
  653.  
  654. /* the varargs invocation form */
  655. void   somDispatchV(somId methodId,
  656.         somId descriptor,
  657.         ...)
  658. {
  659.    va_list ap;
  660.    va_start(ap, descriptor);
  661.    SOM_ResolveD(this,Repository,SOMObject,somDispatchV)
  662.     (this,methodId,descriptor,ap);
  663.    va_end(ap);
  664. }
  665.  
  666.  
  667. /* va_list method: somDispatchL */
  668. /* the va_list invocation form */
  669. long   Repository_somDispatchL(somId methodId,
  670.         somId descriptor,
  671.         va_list ap)
  672. {
  673. return SOM_ResolveD(this,Repository,SOMObject,somDispatchL)
  674.     (this,methodId,descriptor,ap);
  675. }
  676.  
  677. /* the varargs invocation form */
  678. long   somDispatchL(somId methodId,
  679.         somId descriptor,
  680.         ...)
  681. {
  682.    va_list ap;
  683.    va_start(ap, descriptor);
  684.    long __somResult = 
  685.       SOM_ResolveD(this,Repository,SOMObject,somDispatchL)
  686.     (this,methodId,descriptor,ap);
  687.    va_end(ap);
  688.    return __somResult;
  689. }
  690.  
  691.  
  692. /* va_list method: somDispatchA */
  693. /* the va_list invocation form */
  694. void*   Repository_somDispatchA(somId methodId,
  695.         somId descriptor,
  696.         va_list ap)
  697. {
  698. return SOM_ResolveD(this,Repository,SOMObject,somDispatchA)
  699.     (this,methodId,descriptor,ap);
  700. }
  701.  
  702. /* the varargs invocation form */
  703. void*   somDispatchA(somId methodId,
  704.         somId descriptor,
  705.         ...)
  706. {
  707.    va_list ap;
  708.    va_start(ap, descriptor);
  709.    void* __somResult = 
  710.       SOM_ResolveD(this,Repository,SOMObject,somDispatchA)
  711.     (this,methodId,descriptor,ap);
  712.    va_end(ap);
  713.    return __somResult;
  714. }
  715.  
  716.  
  717. /* va_list method: somDispatchD */
  718. /* the va_list invocation form */
  719. double   Repository_somDispatchD(somId methodId,
  720.         somId descriptor,
  721.         va_list ap)
  722. {
  723. return SOM_ResolveD(this,Repository,SOMObject,somDispatchD)
  724.     (this,methodId,descriptor,ap);
  725. }
  726.  
  727. /* the varargs invocation form */
  728. double   somDispatchD(somId methodId,
  729.         somId descriptor,
  730.         ...)
  731. {
  732.    va_list ap;
  733.    va_start(ap, descriptor);
  734.    double __somResult = 
  735.       SOM_ResolveD(this,Repository,SOMObject,somDispatchD)
  736.     (this,methodId,descriptor,ap);
  737.    va_end(ap);
  738.    return __somResult;
  739. }
  740.  
  741.  
  742. /* method: somPrintSelf */
  743. SOMObject*   somPrintSelf()
  744. {
  745.    return SOM_ResolveD(this,Repository,SOMObject,somPrintSelf)
  746.     (this);
  747. }
  748.  
  749.  
  750.  
  751. };   /* Repository */
  752.  
  753.  
  754.  
  755. #endif       /* SOM_Repository_xh */
  756.