Ответ 1
Существует множество опций для указания лямбда. map
возвращает диапазон, который лениво оценивается по мере его потребления. Вы можете принудительно произвести немедленную оценку с помощью функции array
от std.array
.
import std.algorithm;
import std.stdio;
import std.string;
void main()
{
auto x = ["test", "foo", "bar"];
writeln(x);
auto lj = map!"a.leftJustify(10)"(x); // using string mixins
// alternative syntaxes:
// auto lj = map!q{a.leftJustify(10)}(x);
// auto lj = map!(delegate(a) { return a.leftJustify(10) })(x);
// auto lj = map!(a => a.leftJustify(10))(x); available in dmd 2.058
writeln(lj);
}