Spec-Zone.ru › Dart 2

dart:core

castFrom<S, T> статический метод

Set<T> castFrom<S, T>(
  1. Set<S> source,
  2. {Set<R> newSet( )?}
)
override

Адаптирует source, чтобы оно стало Set<T>.

Если указан newSet, он используется для создания новых множеств, возвращаемых методами toSet и union, а также используется для методов intersection и difference. Если newSet не указан, по умолчанию создаётся новое множество с помощью конструктора Set по умолчанию, а методы intersection и difference возвращают адаптированную версию результата вызова того же метода для исходного множества.

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

Если предпринимается попытка добавить значение T в адаптированное множество, при сохранении будет выброшено исключение, если только это значение также не является экземпляром S.

Если все элементы, полученные из source, действительно являются экземплярами T, и все элементы, добавленные в возвращаемое множество, действительно являются экземплярами S, то возвращаемое множество можно использовать как Set<T>.

Методы, принимающие один или несколько Object? в качестве аргумента, например contains, remove и removeAll, передают аргумент напрямую методу этого множества без каких-либо проверок.

Реализация

static Set<T> castFrom<S, T>(Set<S> source, {Set<R> Function<R>()? newSet}) =>
    CastSet<S, T>(source, newSet);

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

Spec-Zone.ru

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