10.4.14 PrimitiveDef
次に示すPrimitiveDefは、OMG IDLのプリミティブ型の1つを表します。プリミティブ型には名前が付かないので、このインタフェースはTypedefDefからもContainedからも派生しません。
module CORBA {
enum PrimitiveKind {
pk_null, pk_void, pk_short, pk_long, pk_ushort, pk_ulong,
pk_float, pk_double, pk_boolean, pk_char, pk_octet,
pk_any, pk_TypeCode, pk_Principal, pk_string, pk_objref,
pk_longlong, pk_ulonglong, pk_longdouble, pk_wchar, pk_wstring,
pk_value_base
};
interface PrimitiveDef: IDLType {
readonly attribute PrimitiveKind kind;
};
};-
kind - PrimitiveDefで表されるプリミティブ型を示します。種類が
pk_nullのPrimitiveDefはありません。種類がpk_stringのPrimitiveDefは、無制限の文字列を表します。種類がpk_objrefのPrimitiveDefは、OMG IDLのObject型を表します。種類がpk_value_baseのPrimitiveDefは、IDLのValueBase型を表します。
継承されるtype属性は、プリミティブ型を記述します。
PrimitiveDefsはすべてRepositoryによって所有されます。これらに対するリファレンスは、Repository::get_primitiveを使用して取得されます。
親トピック: インタフェース・リポジトリのインタフェース