On Thu, 2010-02-11 at 11:26 -0500, Steve Huston wrote:
> I'm not Gordon or Rafi, but I thought we were trying to keep boost out
> of the API as well. 

Absolutely, sorry not to mention it!

Ideally the client API should export no other classes/interfaces at all.

Essentially the reasoning here is:

1. "Accidentally" exporting other interfaces from your header files can
lead to symbol conflict and confusion.
2. Leaking eg. boost leaks an API which has no stability guarantee.
3. Requiring the use of boost limits the client programmer.
4. The more we include in the API that isn't truly necessary the harder
it gets to maintain the API.
5. Equally if we leak internal classes into the API then we have to be
careful to change their interfaces as someone external may be relying on
them.

etc. etc.

Andrew



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscr...@qpid.apache.org

Reply via email to