Yes, exactly. Some people even use static if it is not needed because it is harmless. And remove it only when enclosing context is demand.
On Wednesday, 9 December 2015 at 21:23:03 UTC, Daniel Kozák wrote:
V Wed, 09 Dec 2015 21:10:43 +0000
Jon D via Digitalmars-d-learn <digitalmars-d-learn@puremagic.com>
napsáno:
There is a fair bit of range related code in the standard library structured like:
auto MyRange(Range)(Range r)
if (isInputRange!Range)
{
static struct Result
{
private Range source;
// define empty, front, popFront, etc
}
return Result(r);
}
I'm curious about what declaring the Result struct as 'static' does, and if there are use cases where it be better to exclude the static qualifier.
--Jon
It make it non-nested struct: https://dlang.org/spec/struct.html#nested
Thanks. So, is in the example above, would the advantage be that 'static' avoids saving the enclosing state, which is not needed?