As a type declaration:
type type_indentifier = type_definition;
or with initialization:
type type_indentifier = type_definition value constant_expression;
The reserved word type starts the declaration of a type identifier which is defined by type_definition. For further description see Type Declaration, Type Declaration, Type Definition, Data Types.
type is defined in ISO 7185 Pascal and supported by all known Pascal variants. Initializers are an ISO 10206 Extended Pascal extension.
program TypeDemo; type { This side is the } { That side is the } { type declaration } { type definition } { array type } ArrayType = array [0 .. 9] of Integer; { record type } RecordType = record Bar: Integer end; { subrange type } SubrangeType = -123 .. 456; { enumeration type } EnumeratedType = (Mon, Tue, Wed, Thu, Fri, Sat, Sun); { set type } CharSetType = set of Char; { object type } ObjectType = object constructor Init; procedure Method; destructor Done end; { pointer type to another type identifier } PArrayType = ^ArrayType; { an alias name for another type identifier } IntegerType = Integer; { an integer which is initialized by 123 } InitializedInt = Integer value 123; { a schema with discriminants x and y of type Integer } SchemaType (x, y: Integer) = array [x .. y] of Integer; { Dummy methods of the object type } constructor ObjectType.Init; begin end; procedure ObjectType.Method; begin end; destructor ObjectType.Done; begin end; begin end.
Keywords, Type Declaration, Type Definition, Data Types, Variable Declaration, array, record, object, set, Pointer, value.