
On Tue, May 31, 2016 at 9:36 PM, Vladimir Batov < Vladimir.Batov@constrainttec.com> wrote:
On 2016-06-01 11:30, charleyb123 . wrote:
... In short, what I like:
*- some kind of "std_pimpl<>" provides a standardized interface, and "plumbing"/implementation. *- CRTP in the "std_impl<>" allows for a zero-cost compile-time implementation-override. *- If necessary, implementation can permit "std_pimpl<>" to be parameterized with merely a "Foo" declaration.
Seems like the proposed pimpl has it all from the list. If not, could you please give an example of what you want but the proposed pimpl falls short. I'll try and see if I can accommodate your case.
This approach uses no namespaces. Overrides can be free-functions, or fully scoped as members of application-specific types, with no possibility of ADL intercepting the intended implementation. --charley