Best practices of using const
Yatheendra
3df4 at gmail.ru
Sat Jun 22 05:10:14 UTC 2019
It feels disingenous to want to call a caching object even
"logically" const. There has to be a scaffolding-based but
hopefully generic compromise. I haven't yet tested this belief,
but I believe "physical" const is of good use wherever it can be
applied.
On Friday, 21 June 2019 at 23:39:20 UTC, H. S. Teoh wrote:
> The problem with this is that you cannot use const(Wrapper).
>
> In particular, if you have a function that wants to document
> that it does not mutate its argument, you cannot write:
>
> auto func(in Wrapper data) { ... }
>
> because const(Wrapper) does not allow lazy initialization.
> ...
IMHO, in parameters are a more important scenario than const in
ranges (of course, same constraints).
Just for the heck of it, I'll try to get a snippet "working" but
I see out parameters snaking all through the call chain!
More information about the Digitalmars-d-learn
mailing list