Boost logo

Boost :

Subject: Re: [boost] meaning of "unify"? (was Re: [Root Pointer] Seeking a Review Manager
From: Larry Evans (cppljevans_at_[hidden])
Date: 2016-04-04 13:48:57

On 04/03/2016 01:15 PM, Phil Bouchard wrote:
> On 04/03/2016 11:15 AM, Larry Evans wrote:
>> Unify is somewhat clarified by:
>> 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.

Could you please explain how an intrusive list prevents cycles.
I'm probably misinterpreting what the arrow means from the lower
node_proxy to the upper node_proxy. I was interpreting that to
mean that node_proxy contained some node_proxy* member variable.
However, looking at the code here:

and searching for node_proxy, I see no such member variable pointer.

Could you further explain the meaning of the arrow in that
#root_ptr.rationale.union diagram?


Boost list run by bdawes at, gregod at, cpdaniel at, john at