RFR: 8319117: GrowableArray: Allow for custom initializer instead of copy constructor
Dean Long
dlong at openjdk.org
Mon Oct 30 21:08:34 UTC 2023
On Sun, 29 Oct 2023 14:00:25 GMT, Johan Sjölen <jsjolen at openjdk.org> wrote:
> Hi,
>
> When using at_put and at_put_grow you can provide a value which will be supplied to the constructor of each element. In other words, you can intialize each element through a copy constructor.
>
> I suggest that we also provide a function equivalent where the function is provided a pointer to the memory to be initialized. This can be used for `NONCOPYABLE` classes, for example.
>
> This is implemented using a SFINAE pattern because `nullptr` introduces ambiguity if you use static overload.
>
> Currently running tier1-tier4.
How do you see this being used? Shouldn't the filler be part of the template type for the class, so it can be used in the ctor? Is there really a need for each call to at_put to use a different filler function?
-------------
PR Comment: https://git.openjdk.org/jdk/pull/16409#issuecomment-1786040753
More information about the hotspot-dev
mailing list