The set of types of a class share common properties, such as their primitive operations. The text of a program can be submitted to the compiler in one or more compilations. A composite type has components. A controlled type supports user-defined assignment and finalization. Objects are always finalized before being destroyed.
All declarations contain a definition for a view of an entity.
A derived type is a type defined in terms of another type, which is the parent type of the derived type. Each class containing the parent type also contains the derived type. The derived type inherits properties such as components and primitive operations from the parent. A discrete type is either an integer type or an enumeration type. A discriminant is a parameter of a composite type.