Object.opEquals, opCmp, toHash

Paul D. Anderson paul.d.removethis.anderson at comcast.andthis.net
Thu Feb 16 09:46:20 PST 2012


On Thursday, 16 February 2012 at 08:35:20 UTC, Walter Bright 
wrote:
> These all need to be:
>
>    const pure nothrow @safe
>
> Unless this is done, the utility of const, pure, nothrow and 
> @safe is rather crippled.
>
> Any reason why they shouldn't be?
>
> One reason is memoization, aka lazy initialization, aka logical 
> const. I don't believe these are worth it. If you must do it 
> inside those functions (and functions that override them), 
> you're on your own to make it work right (use unsafe casts, 
> etc.).

+1


More information about the Digitalmars-d mailing list