Llamamos atributos de los tipos escalares a determinadas operaciones especiales que permiten averiguar propiedades del tipo y que se invocan cualificadas por el nombre del tipo mediante un apóstrofe (si T es un tipo escalar y Op una operación con un parámetro, X, para ejecutar Op se escribe T'Op(X)); las hay aplicables a cualquier tipo escalar y otras que dependen de la categoría a la que pertenezca el tipo.
T'First | Devuelve el valor más pequeño del tipo T |
T'Last | Devuelve el valor más grande del tipo T |
T'Range | Devuelve el rango T'First..T'Last |
T'Succ(V) | Siendo V un valor de tipo T, devuelve el valor que le sigue (en los tipos reales depende de la representación). T'Succ (T'Last) no pertenece al tipo T |
T'Pred(V) | Siendo V un valor de tipo T, devuelve el valor que le precede (en los tipos reales depende de la representación). T'Pred (T'First) no pertenece al tipo T |
T'Image(V) | Siendo V un valor de tipo T, devuelve una ristra con la representación literal de V |
T'Value(S) | Siendo S una ristra con la representación literal de un valor de tipo T, devuelve el valor correspondiente |
T'Width | Devuelve el número máximo de caracteres que requerirá un literal de tipo T devuelto por T'Image(V) |
T'Base | |
T'Max(X, Y) | |
T'Min(X, Y) |