Spec-Zone.ru › Ada 2012
Справочник по Ada 2012

3.2.3 Классификация операций

Статическая семантика

Операция действует над типом T, если она возвращает значение типа T, если у неё есть операнд, ожидаемый тип которого (см. 8.6) равен T, или если она имеет параметр или результат типа доступа (см. 6.1), обозначающий T. Предварительно определённый оператор или другая операция языка, такая как присваивание или проверка на принадлежность, которая действует над типом, называется предопределённой операцией типа. Примитивные операции типа — это предопределённые операции типа, плюс любые пользовательские примитивные подпрограммы.
Примитивные подпрограммы конкретного типа определяются следующим образом:
  • Предварительно определённые операторы типа (см. 4.5);
  • Для производного типа — унаследованные (см. 3.4) пользовательские подпрограммы;
  • Для типа перечисления — литералы перечисления (которые считаются безаргументными функциями — см. 3.5.1);
  • Для конкретного типа, объявленного непосредственно внутри package_specification, любые подпрограммы (кроме литералов перечисления), которые явно объявлены непосредственно внутри того же package_specification и действуют над типом;
  • Для конкретного типа с явно объявленным примитивным оператором «=», результат которого имеет тип Boolean, соответствующий оператор «/=» (см. 6.6);
  • Для неформального типа — любые подпрограммы, не охваченные выше, которые явно объявлены непосредственно внутри той же области объявления, что и тип, и которые переопределяют (см. 8.3) другие неявно объявленные примитивные подпрограммы типа.
Примитивная подпрограмма, у которой указатель — operator_symbol, называется примитивным оператором.


Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API