new std.variant (was Re: The Right Approach to Exceptions)

Jonathan M Davis jmdavisProg at gmx.com
Wed Feb 22 09:33:57 PST 2012


On Wednesday, February 22, 2012 08:19:38 Robert Jacques wrote:
> To Variant? Yes, definitely. To Appender? I don't think so. There is an
> slight change in API behavior necessitated by performance considerations,
> but I don't think it warrants a review by the community at large.
> Specifically, appender's internal data structure is now sealed, which means
> that .data must always make a copy. My preference would be to deprecate
> .data in favor of a .dup/.idup pair. It'll break a bunch of code (which I
> don't like), but it will make sure no one is calling .data twice in a row,
> resulting in a silent performance problem.

I've definitely written code that needed to get at data while appending. I 
would consider it to be a huge downside to not be able to efficiently get at the 
current state of the array within the appender. Why on earth would you seal 
it?

- Jonathan M Davis


More information about the Digitalmars-d mailing list