On Tuesday, 26 April 2022 at 21:33:43 UTC, Chris Katko wrote:
I swear I asked something like this before years ago but it
doesn't show up in my previous forum posts.
I'm looking for a construct that mimics using(var)/with(var)
```d
void draw_with(bitmap* drawb, void delegate() dg) {
set_target_bitmap(drawb);
dg();
set_target_bitmap(original_target);
}
bitmap* b;
draw_with(b, {
draw_pixel(red, 16, 16);
});
```
If your draw code doesn't depend on any scoped state you can use
`function()` instead of `delegate()` to save a GC call.