On Monday, 10 November 2025 at 10:35:42 UTC, Zenw wrote:
On Sunday, 9 November 2025 at 17:36:27 UTC, monkyyy wrote:
On Sunday, 9 November 2025 at 10:40:36 UTC, Zenw wrote:
Hello!
I've created a pattern matching library for D. Still
experimental, but might be an interesting approach.
https://github.com/Zero-error-no-warning/TrapFlow
shouldnt you be using the lazy keyword in at least some of
these headers?
You're absolutely right, I completely forgot about using `lazy`
in `opCall`. Thanks a lot!
It would be even better if the `$` symbol could be used inside
a function literal in `opIndex`...
opDollar can be thinly lowered to a type
```d
import std;
struct foo{
struct dollar{}
auto opDollar()=>dollar();
int opSlice(int,dollar)=>1;
int opSlice(dollar,int)=>2;
}
unittest{
foo bar;
bar[1..$].writeln;
bar[$..1].writeln;
}
```