|
Boost : |
Subject: Re: [boost] Boost.Operators and make_shared
From: Andrew Ho (helloworld922_at_[hidden])
Date: 2013-07-12 14:24:00
> Could we just have boost::operators (i.e. without 2)? The old
implementation
> didn't have a namespace and the new one is supposed to replace it, isn't
it?
I'm not entirely sure what the plan is with boost operators2. As far as I
could tell there wasn't much of a consensus on what the plan was (unless I
missed a post somewhere). Ideally it should replace boost operators, but
there are a lot of old compiler fixes which have been removed, and a few
potentially breaking changes in my current test implementation.
Potentially "breaking" changes:
1. there's no "addable1/addable2" class naming, I'm relying on template
partial specialization so addable<T,T> will map to a template specialized
implementation.
2. Pretty much all "compiler-specific-compatibility" code has been removed.
The minimum requirements is a C++03 compliant compiler (possibly just C++98
compliant since the two are so similar).
3. The library now relies on boost::move. Note that boost::move maps
directly to standard C++11 features if available, otherwise there's a
backwards-compatible implementation.
4. All operators2 code is in the boost::operators2 namespace (easily could
be boost::operators if we decide to not move boost operators there).
It's very easy for me to change the boost operators2 implementation to
completely replace boost operators (just need to do a few find/replaces and
delete the old operators.hpp).
If this is the plan, I can for-go any changes in the current operators.hpp
because modifying it to reside in boost::operators is not a simple task.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk