proposal: short => rewrite for function declarations
Adam D. Ruppe
destructionator at gmail.com
Fri Oct 9 14:44:25 UTC 2020
After a brief chat yesterday, I slapped this together:
https://github.com/dlang/dmd/pull/11833
In short, in a function declaration, it rewrites `=> ...;` into
`{ return ...; }`
One benefit is shorter property accessors:
private int _x = 34;
@property x() => _x;
@property x(int v) => _x = v;
But it also works basically anywhere
bool isNull() => this is null;
auto identity(T)(T a) => a;
@property y() in(true) => _x; // contracts still work too
So it just extends the existing lambda shorthand to full
declarations too.
See more in the PR description and the test case there.
More information about the Digitalmars-d
mailing list