名前
CORBA-UNIONDEF--GET-DISCRIMINATOR-TYPE
形式
DATA DIVISION. WORKING-STORAGE SECTION. COPY CONST IN CORBA. 01 COPY OBJECT IN CORBA REPLACING CORBA-OBJECT BY OBJ. 01 COPY ENVIRONMENT IN CORBA REPLACING CORBA-ENVIRONMENT BY ENV. 01 COPY TYPECODE TYPECODE IN CORBA REPLACING CORBA-TYPECODE BY TYPECODE. PROCEDURE DIVISION. CALL "CORBA-UNIONDEF--GET-DISCRIMINATOR-TYPE" USING OBJ ENV TYPECODE.
機能説明
OBJで指定したUnionDefオブジェクトの弁別情報定義のTypeCodeを返します。
本関数はタイプコードを格納する領域を獲得するため、この領域が不要になった時点で、CORBA-OBJECT-RELEASE関数を使用して領域を解放する必要があります。
復帰値
正常終了した場合、弁別情報定義のTypeCodeが返されます。
異常終了した場合、ENV構造体のMAJORにはCORBA-SYSTEM-EXCEPTIONが返され、IDとMINORに詳細情報が設定されます。IDとMINORの意味については、“メッセージ集”の“CORBAサービスから通知される例外情報/マイナーコード”を参照してください。
名前
CORBA-UNIONDEF--GET-MEMBERS
形式
DATA DIVISION. WORKING-STORAGE SECTION. COPY CONST IN CORBA. 01 COPY OBJECT IN CORBA REPLACING CORBA-OBJECT BY OBJ. 01 COPY ENVIRONMENT IN CORBA REPLACING CORBA-ENVIRONMENT BY ENV. 01 UNIONMEMBERSEQ-ADDR USAGE IS POINTER. PROCEDURE DIVISION. CALL "CORBA-UNIONDEF--GET-MEMBERS" USING OBJ ENV UNIONMEMBERSEQ.
機能説明
OBJで指定されたUnionDefオブジェクトのメンバ情報をUNIONMEMBER構造体のリスト形式(“4.11.1 型の定義”を参照してください)で返します。
本関数はUNIONMEMBER構造体のリストを格納する領域を獲得するため、この領域が不要になった時点で、CORBA-FREE関数を使用して領域を解放する必要があります。
復帰値
正常終了した場合、UnionDefオブジェクトのメンバ情報(UNIONMEMBER構造体)のアドレスが返されます。
異常終了した場合、ENV構造体のMAJORにはCORBA-SYSTEM-EXCEPTIONが返され、IDとMINORに詳細情報が設定されます。IDとMINORの意味については、“メッセージ集”の“CORBAサービスから通知される例外情報/マイナーコード”を参照してください。
(1) CORBA-UNIONDEF--GET-DEF-KIND
(2) CORBA-UNIONDEF--GET-ID
(3) CORBA-UNIONDEF--GET-NAME
(4) CORBA-UNIONDEF--GET-DEFINED-IN
(5) CORBA-UNIONDEF-DESCRIBE
(1)については、“IRObject共通インタフェース”を継承します。
“CORBA-IROBJECT”の部分を“CORBA-UNIONDEF”に置き換えて使用することができます。
関数の仕様については、“4.11.2 IRObject共通インタフェース”を参照してください。
(2)~(5)については、“Contained共通インタフェース”を継承します。
“CORBA-CONTAINED”の部分を“CORBA-UNIONDEF”に置き換えて使用することができます。
関数の仕様については、“4.11.3 Contained共通インタフェース”を参照してください。