castFrom<S, T> method
Null safety
- List<
S> source
override
Adapts source
to be a List<T>
.
Any time the list would produce an element that is not a T
,
the element access will throw.
Any time a T
value is attempted stored into the adapted list,
the store will throw unless the value is also an instance of S
.
If all accessed elements of source
are actually instances of T
,
and if all elements stored into the returned list are actually instance
of S
,
then the returned list can be used as a List<T>
.
Methods like contains and remove
which accept Object?
as argument
will pass the argument directly to the this list's method
without any checks.
Implementation
static List<T> castFrom<S, T>(List<S> source) => CastList<S, T>(source);