Declaring a reusable formula and using it in other scopes.
Basile B.
b2.temp at gmx.com
Sat Feb 12 17:52:01 UTC 2022
On Saturday, 12 February 2022 at 12:36:06 UTC, BoQsc wrote:
> `bool nextArgumentDoesNotReachEndOfArray = i + 1 < args.length;`
>
> How can I declare it out of scope and reuse it in any scope
> that has `i` and `args.length` declared?
Here is an ugly solution, just to encourage someone else to post
better:
```d
enum n = "i+1<args.length";
void main()
{
int i;
string[] args;
assert(!mixin(n));
args.length += 2;
assert(mixin(n));
testOtherScope();
}
void testOtherScope()
{
int i;
string[] args;
assert(!mixin(n));
args.length += 2;
assert(mixin(n));
}
```
The problem with that solution is that it's not clean.
The problem of the initial problem is to have automatic capture
of `i` and `args` in any scope...
Lost cause ?
More information about the Digitalmars-d-learn
mailing list