Boost logo

Boost :

Subject: Re: [boost] meaning of "unify"? (was Re: [Root Pointer] Seeking a Review Manager
From: Phil Bouchard (philippeb8_at_[hidden])
Date: 2016-04-03 14:15:51


On 04/03/2016 11:15 AM, Larry Evans wrote:
>
> Unify is somewhat clarified by:
>
> http://philippeb8.github.io/root_ptr/root_ptr/rationale.html#root_ptr.rationale.union
>
> But that raises another question. The pair of side-by-side
> diagrams suggest that when the lower non-inherited node_ptr
> acquires a pointer to the upper non-inherited node_ptr, then
> the "corresponding" node_proxy's likewise acquire similar
> pointers. Now what happens when the direction is reversed?
> Is there then a cycle between the node_proxy's?

Good question. There can be no cycle between node_proxy's because it
uses an intrusive list. You can rearrange intrusive list elements
however you want and you will never have a cycle.

> BTW, it would also help if the root_ptr box on top of
> both a node_proxy and node_ptr box signifies that the
> subboxes are contained in the single root_ptr box.
> Only by looking at the code here:
>
> https://github.com/philippeb8/root_ptr/blob/master/include/boost/smart_ptr/root_ptr.hpp#L479
>
> was I sure this is what was meant.

I'll add a bold box around the root_ptrs. Thanks for the notice.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk