Spec-Zone.ru › Ada 2022
Руководство по Ada (Ada 2022)

A.18.13 Обобщённый пакет Containers.Indefinite_Hashed_Maps

Определяемый языком обобщённый пакет Containers.Indefinite_Hashed_Maps предоставляет карту с теми же операциями, что и пакет Containers.Hashed_Maps (см. A.18.5), с той разницей, что обобщённые формальные типы Key_Type и Element_Type являются неопределёнными.

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

Объявление обобщённого библиотечного пакета Containers.Indefinite_Hashed_Maps имеет то же содержимое и семантику, что и Containers.Hashed_Maps, за исключением:
  • Обобщённый формальный тип Key_Type является неопределённым.
  • Обобщённый формальный тип Element_Type является неопределённым.
  • Процедура со следующим профилем:
procedure Insert (Container : in out Map;
Key : in Key_Type;
Position : out Cursor;
Inserted : out Boolean);
исключена.
  • Фактический параметр Element в процедуре доступа Process типа Update_Element может быть ограниченным, даже если Element_Type не ограничен.
  • Операции Include, Insert, Replace и Replace_Element, имеющие формальный параметр типа Element_Type, выполняют неопределённую вставку (см. A.18).
  • Описание Tampering_With_Elements_Prohibited заменено на:
Возвращает True, если вмешательство в элементы запрещено для Container, и False в противном случае.
  • Tampering_With_Cursors_Prohibited заменено на Tampering_With_Elements_Prohibited в пост условии для операций Reference и Constant_Reference.
  • Операции Replace и Replace_Element исключены из вложенного пакета Stable.


Spec-Zone.ru

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