Предусмотрен для обеспечения совместимости с Ada 83.
где S: вещественный тип с фиксированной точкой.
Обозначает функцию, которая имеет следующую спецификацию:
function S'Fixed_Value
(Arg : Universal_Integer) return S;
Возвращаемое значение V - это вещественное значение с фиксированной точкой, подобное:
V = Arg * S'Small
Таким образом, это эквивалентно: сначала, преобразованию аргумента в значение целочисленного типа, используемого для представления S, а затем, выполнению непроверяемого преобразования в вещественный тип с фиксированной точкой.
Первоначально, этот атрибут был предназначен для реализации функций ввода/вывода для значений вещественного типа с фиксированной точкой.
где T: тип.
Возвращенное значение типа Boolean будет True
в случае когда тип T имеет дискриминант, и False - в обратном случае.
Предполагается использование этого атрибута совместно с описаниями настраиваемых модулей.
Если атрибут используется с приватным настраиваемым типом, то он индицирует имеет ли фактический тип дискриминант.
Этот атрибут отличается от стандартного атрибута 'Image
тем, что он может быть использован как с объектами, так и с типами.
В обоих случаях он возвращает 'Image для подтипа объекта. Это удобно для отладки:
Put_Line ("X = " & X'Img);
будет иметь такой же смысл, что и более "многословная" запись:
Put_Line ("X = " & type'Image (X));
где type - это подтип объекта X.
где S: целочисленный тип.
Обозначает функцию, которая имеет следующую спецификацию:
function S'Integer_Value
(Arg : Universal_Fixed) return S;
Возвращаемое значение V подобно:
Arg = V * type'Small
Таким образом, это эквивалентно: сначала, выполнению непроверяемого преобразования из вещественного типа с фиксированной точкой в соответствующий ему тип реализации, а затем, преобразование результата в целочисленный тип назначения.