Boost logo

Boost :

Subject: Re: [boost] [ValueRef] Interest in a new library for immutable values with internal sharing?
From: Rob Stewart (rob.stewart_at_[hidden])
Date: 2015-04-22 10:30:53

On April 21, 2015 5:33:26 AM EDT, Sam Kellett <samkellett_at_[hidden]> wrote:
> On 20 April 2015 at 18:07, Thomas Jordan <tomjordan766_at_[hidden]>
> wrote:
> > I had a similar idea for a new smart pointer that would aim to
> obsolete the
> >> shared_ptr-to-const idiom. The problem I found with that idiom is
> that it
> >> only guarantees that you can't change it. There's no promise that
> somebody
> >> else doesn't have a non-const ref to the data and so it could in
> the worst
> >> case completely change from under your feet (even if you know it
> won't get
> >> destroyed).
> >
> > ValueRef doesn't expose (shared) pointers/pointees, they are a
> hidden,
> > implementation detail. Its interface just deals in values (as shown
> > in the example usage).
> Absolutely! Hence the ref in the name. :)
> I kept the pointer as part of the interface seeing as I saw it as a
> smart
> pointer to replace another smart pointer, but either direction is not
> wrong for sure.

"Value" doesn't suggest pointer semantics. What's more, I think the value (no pun intended) of such a class is to actually provide value semantics, hiding the pointer semantics.


(Sent from my portable computation engine)

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