On Sunday, 5 August 2018 at 09:20:21 UTC, vit wrote:
It's possible create something like this without errors?

void main()@nogc{   //Error: function `app.main` is `@nogc`
                    //  yet allocates closures with the GC
    import std.experimental.all;

    const int j = 2;
    int i = 0;
    const int[3] tmp = [1, 2, 3];

    tmp[]
.filter!((x)scope => x == j) ///main.__lambda1 closes over variable j
        .each!((x)scope => i = x);
}

No, at least as I understand it.
https://issues.dlang.org/show_bug.cgi?id=17841

But you can define a struct, with the needed j and i are stored, and some functions within, which performs map reduce logic you need.

Reply via email to