Correct, it does not allocate. The use of the generic placement new,
however, means there's no way to use a custom allocator's implementation of
construct() or destroy() in a serde.

  jon

On Fri, Jan 17, 2020 at 10:41 AM Alexander Saydakov
<[email protected]> wrote:

> Serde does not allocate. Where do you see allocation? Placement new is a
> way to call a constructor without allocation.
>
> On Thu, Jan 16, 2020 at 8:52 PM Kenneth Knowles <[email protected]> wrote:
>
>> As mentor, I have a couple thoughts:
>>
>>  - You are probably right that including dev@ is helpful for building
>> community
>>  - Datasketches dev@ list is tiny and you should definitely send to it
>> without hesitation IMO
>>  - If it is too detailed for the dev list, that is probably harmless
>> anyhow - I have seen this level of discussion, for sure.
>>  - Try browsing other Apache projects dev lists to see how they do it;
>> example:
>> https://lists.apache.org/[email protected]:lte=1y:-%5Bjira%5D
>>
>> I have no helpful thoughts on your C++ question :-)
>>
>> Kenn
>>
>> On Thu, Jan 16, 2020 at 8:36 PM Jon Malkin <[email protected]> wrote:
>>
>>> I'm working on a C++ sketch and trying to make sure I'm handling memory
>>> properly. In the debugging process, I noticed that serde.hpp uses placement
>>> new in deserialize(), without allowing for a custom allocator (which it
>>> seems needs to implement construct(), not just allocate().)
>>>
>>> This is a very specific question related to the C++ implementation; I'd
>>> usually not think of sending it out to the entire dev@ list, favoring a
>>> discussion more localized to the specific repo. But maybe, at least while
>>> trying to build a community and promote activity on the list, it's worth
>>> trying to have such conversations on the list?
>>>
>>>   jon
>>>
>>

Reply via email to