AttributeDef
describes an attribute of an interface. It inherits from the Contained
interface.
module CORBA { enum AttributeMode { ATTR_NORMAL, ATTR_READONLY }; interface AttributeDef : Contained { readonly attribute TypeCode <type>; attribute IDLType type_def; attribute AttributeMode <mode>; }; };
The describe( )
operation is inherited from Contained( )
. It returns a structure of type Contained::Description
.
//IDL struct Description { DefinitionKind <kind>; any <value>; }
Where:
<kind>
<value>
Any
that contains the AttributeDescription
structure:
// IDL struct attributeDescription { Identifier name; RepositoryID id; RepositoryID defined_in; VersionSpec version; TypeCode type; AttributeDef::AttributeMode mode; }
This specifies whether the attribute is read/write (READONLY).
attribute AttributeMode mode;
AttributeDef::type
specifies the TypeCode
of the attribute.
readonly attribute TypeCode <type>;
AttributeDef::type_def
describes the type of the attribute. Changing the type_def
changes the type attribute.
attribute IDLType type_def;