Spec-Zone.ru › Dart 2

dart:collection

метод cast<RK, RV>

Map<RK, RV> cast<RK, RV>()
override

При необходимости предоставляет представление этой карты как карты с ключами RK и экземплярами RV.

Если эта карта уже является Map<RK, RV>, она возвращается без изменений.

Если эта коллекция содержит только ключи типа RK и значения типа RV, все операции чтения будут работать корректно. Если какая-либо операция обнаружит ключ, не относящийся к типу RK, или значение, не относящееся к типу RV, вместо этого будет выброшено исключение.

Добавляемые в карту записи должны быть допустимы как для Map<K, V>, так и для Map<RK, RV>.

Методы, принимающие Object? в качестве аргумента, такие как containsKey, remove и operator [], передают аргумент непосредственно методу этой карты без каких-либо проверок. Это означает, что вызов mapWithStringKeys.cast<int,int>().remove("a") завершится успешно, даже если кажется, что он не должен иметь никакого эффекта.

Реализация

Map<RK, RV> cast<RK, RV>() =>
    UnmodifiableMapView<RK, RV>(_map.cast<RK, RV>());

© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.19.6/dart-collection/UnmodifiableMapView/cast.html

Spec-Zone.ru

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