A PrimitiveDef
represents one of the IDL primitive types, such as short
or long
. Primitive types are unnamed; therefore, this interface is not derived from TypedefDef
or Contained
. You cannot create objects of type PrimitiveDef
. If needed, you must obtain a reference to a PrimitiveDef
through a call to the operation CORBA::Repository::get_primitive( )
.
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 }; interface PrimitiveDef: IDLType { readonly attribute PrimitiveKind kind; }; };
The inherited type attribute describes the primitive type.
All PrimitiveDefs
are owned by the Repository. References to them are obtained using Repository::get_primitive
.
The kind
attribute indicates which primitive type the PrimitiveDef
represents.
A PrimitiveDef
with kind pk_string
represents an unbounded string. A bounded string is represented by the interface StringDef
. A PrimitiveDef
with kind pk_objref
represents the IDL type Object
.
readonly attribute PrimitiveKind kind;