Метод cast< R>
Обеспечивает представление этого множества как множества экземпляров R.
Если это множество содержит только экземпляры R, все операции чтения будут работать правильно. Если любая операция попытается получить доступ к элементу, который не является экземпляром R, доступ вызовет исключение.
Элементы, добавляемые в множество (например, с помощью add или addAll), должны быть экземплярами R , чтобы быть допустимыми аргументами для функции добавления, и они должны быть экземплярами E, чтобы быть принятыми этим множеством.
Методы, которые принимают один или несколько Object? в качестве аргумента, такие как contains, remove и removeAll, будут передавать аргумент непосредственно методу этого множества без каких-либо проверок. Это означает, что вы можете выполнить setOfStrings.cast<int>().remove("a") успешно, даже если кажется, что это не должно иметь никакого эффекта.
Реализация
Set<R> cast<R>();
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-core/Set/cast.html