Bug in generator
ag0aep6g via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Mon Jan 30 03:23:46 PST 2017
On 01/30/2017 11:58 AM, Profile Anaysis wrote:
> Also, if one tries to create a global generator an error about PAGESIZE
> not being a compile time value is given.
That means you can't initialize it statically, because PAGESIZE is not
known statically. But you can have a global (module scope, thread local)
Generator. You just have to initialize it dynamically.
----
import std.concurrency: Generator, yield;
/* No: */
/* Generator!int g = new Generator!int({ yield(42); }); */
/* Yes: */
Generator!int g1;
void main()
{
g1 = new Generator!int({ yield(42); });
}
/* Also yes: */
Generator!int g2;
static this()
{
g2 = new Generator!int({ yield(42); });
}
----
More information about the Digitalmars-d-learn
mailing list