std.allocator ready for some abuse

bitwise via Digitalmars-d digitalmars-d at puremagic.com
Fri Sep 11 15:32:47 PDT 2015


On Friday, 25 October 2013 at 00:00:36 UTC, Andrei Alexandrescu 
wrote:
> On 10/24/13 2:38 PM, Namespace wrote:
>> On Thursday, 24 October 2013 at 21:31:42 UTC, Namespace wrote:
>>> Awesome! Will Appender get an option to use a suitable 
>>> allocator?
>>
>> A dream of me, that will probably never come true, would be 
>> also
>> something like this:
>> ----
>> with (Mallocator) {
>>      int[] arr;
>>      arr ~= 42; /// will use Mallocator.it.allocate internal
>> }
>> ----
>
> Oddly enough this can be actually done.
>
> with (setAllocator!Mallocator)
> {
>    ...
> }
>
> setAllcator returns an rvalue that changes the global allocator 
> to the Mallocator in the constructor, and restores it to 
> whatever it was in the destructor.
>
>
> Andrei

Doesn't this race because the allocator instance is shared?

I couldn't find 'setAllocator' in the source code.

    Bit


More information about the Digitalmars-d mailing list