*. (spread method) operator

The spread method operator maps an iterable of instances through a method, resulting in a new sequence containing the return values of each method invocation.

Usage

{String+} names = {"foo", "bar", "baz"};
[String+] initials = names*.initial(1);

You can also spread method references:

Callable<[String+], [Integer]> ref = names*.initial;

Definition

See the language specification for more details.

Since Ceylon 1.3.1 it is possible to spread a Java Iterable or Java array.

Polymorphism

The *. operator is not polymorphic.

Type

The result type of the lhs*.rhs operator is the callable type of the type of the right hand operand, with the return type replaced by its corresponding sequential type.

See also