On Wednesday, 12 April 2023 at 01:16:17 UTC, Chris Katko wrote:
Should I be using opEquals? Or something different? The problem
with 'alias this' here is I want to wrap access to the insides
with getter functions that do various things like logging and
error checking.
I think you want to do an encapsulation like below.
```d
class Handler(T)
{
T*[string] data;
auto set(string key, ref T value)
=> data[key] = &value;
auto opIndex(string key)
=> *(key in data);
}
void main()
{
class Bitmap {}
Bitmap foo;
auto handler = new Handler!Bitmap;
handler.set("D Lang", foo);
assert(handler["D Lang"] == &foo);
}
```
SDB@79