Interstage Application Server アプリケーション作成ガイド (CORBAサービス編)
目次 索引 前ページ次ページ

第12章 CORBAインタフェース> 12.1 TypeCodeオブジェクト

12.1.2 TypeCodeインタフェース

 TypeCodeは以下のようなインタフェーを提供しています。

  module CORBA{
      enum TCKind{
          tk_null, tk_void, 
          tk_short, tk_long, tk_ushort, tk_ulong, 
          tk_float, tk_double, tk_boolean, tk_char, 
          tk_octet, tk_any, tk_TypeCode, tk_Principal, tk_objref, 
          tk_struct, tk_union, tk_enum, tk_string, 
          tk_sequence, tk_array, tk_alias, tk_except
      };

      interface TypeCode{
          exception Bounds{};
          exception BadKind{};

          boolean        equal( in TypeCode tc ); 

          TCKind         kind();

          RepositoryId   id()
              raises( BadKind ); 

          Identifier     name()
              raises( BadKind ); 

          unsigned long  member_count()
              raises( BadKind, Bounds ); 

          Identifier     member_name(
              in unsigned long index ) 
              raises( BadKind, Bounds ); 

          TypeCode       member_type(
              in unsigned long index ) 
              raises( BadKind, Bounds ); 

          any            member_label(
              in unsigned long index ) 
              raises( BadKind, Bounds ); 

          TypeCode       discriminator_type()
              raises( BadKind ); 

          long           default_index()
              raises( BadKind ); 

          unsigned long  length()
              raises( BadKind ); 

          TypeCode       content_type()
              raises( BadKind ); 

          long           param_count();

          any            parameter( in long index ) 
              raises( Bounds ); 
      };
  };

 TypeCodeインタフェースの機能説明を以下に示します。

TypeCodeのメソッド

機能説明

equal

指定されたTypeCodeが等しいか比較します。

kind

TypeCodeの指すデータ型の数値を返します。

id

TypeCodeの指すデータ型のリポジトリIDを返します。

name

TypeCodeの指すデータ型の名前を返します。

member_count

TypeCodeの指すデータ型に含まれるメンバの数を返します。

member_name

指定したメンバの名前を返します。

member_type

指定したメンバのTypeCodeを返します。

member_label

指定したメンバのラベルを返します。

discriminator_type

弁別情報定義のTypeCodeを返します。

default_index

defaultメンバのインデックスを返します。

length

TypeCodeオブジェクトの長さ(要素数)を返します。

content_type

メンバのTypeCodeを返します。

 各データ型ごとに使用できるTypeCodeインタフェースを以下に示します。

 

string

enum

sequence

struct

union

array

alias

ObjectRef

exception

id

 

 

 

name

 

 

member_count

 

 

 

 

 

member_name

 

 

 

 

 

member_type

 

 

 

 

 

member_label

 

 

 

×

 

 

 

 

discriminator_type

 

 

 

×

 

 

 

 

default_index

 

 

 

 

 

 

 

 

length

 

 

 

 

 

 

content_type

 

 

 

 

 

 

 


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2005