A TypeDescriptor comprises the state of a type. More...
Public Member Functions | |
TypeDescriptor () | |
ReturnCode_t | copy_from (const class TypeDescriptor *other) |
Overwrite the contents of this descriptor with those of another descriptor. More... | |
unsigned char | equals (const class TypeDescriptor *other) |
Compare two TypeDescriptor's. More... | |
unsigned char | is_consistent () |
Indicates whether the states of all of this descriptor’s properties are consistent. More... | |
Public Attributes | |
TypeKind | kind |
the 'kind' of this type | |
ObjectName | name |
the 'name' of this type | |
class DynamicType * | base_type |
the 'base_type' of this type More... | |
class DynamicType * | discriminator_type |
If this descriptor represents a union type, this field indicates the type of the discriminator of the union. | |
BoundSeq | bound |
The bound property indicates the bound of collection and similar types. More... | |
class DynamicType * | element_type |
If this descriptor represents an array, sequence, or string type, this property indicates the element type of the collection. More... | |
class DynamicType * | key_element_type |
If this descriptor represents a map type, this property indicates the value element type of the map. More... | |
A TypeDescriptor comprises the state of a type.
DDS::TypeDescriptor::TypeDescriptor | ( | ) |
Constructor, Copy Constructor, Destructor, Assignment operator
ReturnCode_t DDS::TypeDescriptor::copy_from | ( | const class TypeDescriptor * | other | ) |
Overwrite the contents of this descriptor with those of another descriptor.
Subsequent calls to equals, passing the same argument as to this method, return true. The other descriptor shall not be changed by this operation.
RETCODE_BAD_PARAMETER | in the case of an invalid parameter |
RETCODE_ERROR | in the case of any other error |
unsigned char DDS::TypeDescriptor::equals | ( | const class TypeDescriptor * | other | ) |
Compare two TypeDescriptor's.
Two type descriptors are considered equal if and only if the values of all of the properties identified in the table above are equal in each of them.
unsigned char DDS::TypeDescriptor::is_consistent | ( | ) |
Indicates whether the states of all of this descriptor’s properties are consistent.
The definitions of consistency for each property are given in the section corresponding to that property.
non-zero | if descriptor is consistent |
zero | if descriptor is not consistent |
class DynamicType* DDS::TypeDescriptor::base_type |
the 'base_type' of this type
In all other cases, a consistent descriptor shall have a nil value for this property.
BoundSeq DDS::TypeDescriptor::bound |
The bound property indicates the bound of collection and similar types.
In all other cases, a consistent descriptor shall have a nil value for this property.
class DynamicType* DDS::TypeDescriptor::element_type |
If this descriptor represents an array, sequence, or string type, this property indicates the element type of the collection.
It must not be nil for the descriptor to be consistent. If this descriptor represents a map type, this property indicates the value element type of the map. It must not be nil for the descriptor to be consistent.
If this descriptor represents a bit set type, this property must indicate a Boolean type for the descriptor to be consistent.
If this descriptor represents any other kind of type, this property must be nil for the descriptor to be consistent.
class DynamicType* DDS::TypeDescriptor::key_element_type |
If this descriptor represents a map type, this property indicates the value element type of the map.
It must not be nil for the descriptor to be consistent.
If this descriptor represents any other kind of type, this property must be nil for the descriptor to be consistent.