Boost logo

Boost :

Subject: Re: [boost] [transaction] New Boost.Transaction library under discussion
From: strasser_at_[hidden]
Date: 2010-01-28 17:21:52


I was on a long train ride today so I started putting together an
initial code base for Transaction.
and as always, the most obvious problems were overlooked:
we have to find another name for the library/namespace, or for the
transaction class:

namespace transaction{
   class transaction;
}

using namespace boost;
using namespace transaction;

int main(){
   boost::transaction::transaction tx; //namespace spec required
}

I don't think this is acceptable, and I'd like to keep the name
"transaction" for the transaction class. I've seen someone use
"transaction_scope" instead but I don't think that makes sense.

any ideas for a namespace?

also, would you like to make the usage of the transaction library by
the individual libraries transparent to user wrt to namespaces?

e.g.

namespace persistent{
   using namespace transaction;
}
namespace stldb{
   using namespace transaction;
}

on the one hand it's easier for the user. a beginner using only one of
the transactional libraries isn't bothered with only one simple class
being part of another library, from his perspective.

downsides on the other hand:
  - headers. you'd have boost/persistent/transaction.hpp,
boost/stldb/transaction.hpp, ... and all they'd do is include
boost/transaction/transaction.hpp and a "using" declaration.
  - it might be confusing that
is_same<persistent::transaction,stldb::transaction>::value==true


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk