From 654c1f97c6a4efca992c17d53136b12a9f10a047 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Fri, 2 Mar 2012 14:11:03 +0200 Subject: Reimplement C++11 support to be header-only This way, the same build of the runtime libraries can be used in both C++98 and C++11 modes. This is important for when runtimes are installed or packaged. --- odb/mysql/database.cxx | 12 ++++++------ odb/mysql/database.hxx | 9 ++------- 2 files changed, 8 insertions(+), 13 deletions(-) diff --git a/odb/mysql/database.cxx b/odb/mysql/database.cxx index 03401d9..e7137bb 100644 --- a/odb/mysql/database.cxx +++ b/odb/mysql/database.cxx @@ -46,7 +46,7 @@ namespace odb client_flags_ (client_flags), factory_ (factory.transfer ()) { - if (factory_.get () == 0) + if (!factory_) factory_.reset (new connection_pool_factory ()); factory_->database (*this); @@ -74,7 +74,7 @@ namespace odb client_flags_ (client_flags), factory_ (factory.transfer ()) { - if (factory_.get () == 0) + if (!factory_) factory_.reset (new connection_pool_factory ()); factory_->database (*this); @@ -102,7 +102,7 @@ namespace odb client_flags_ (client_flags), factory_ (factory.transfer ()) { - if (factory_.get () == 0) + if (!factory_) factory_.reset (new connection_pool_factory ()); factory_->database (*this); @@ -130,7 +130,7 @@ namespace odb client_flags_ (client_flags), factory_ (factory.transfer ()) { - if (factory_.get () == 0) + if (!factory_) factory_.reset (new connection_pool_factory ()); factory_->database (*this); @@ -158,7 +158,7 @@ namespace odb client_flags_ (client_flags), factory_ (factory.transfer ()) { - if (factory_.get () == 0) + if (!factory_) factory_.reset (new connection_pool_factory ()); factory_->database (*this); @@ -209,7 +209,7 @@ namespace odb throw cli_exception (ostr.str ()); } - if (factory_.get () == 0) + if (!factory_) factory_.reset (new connection_pool_factory ()); factory_->database (*this); diff --git a/odb/mysql/database.hxx b/odb/mysql/database.hxx index 0f729eb..0008836 100644 --- a/odb/mysql/database.hxx +++ b/odb/mysql/database.hxx @@ -12,7 +12,7 @@ #include // std::ostream #include -#include // ODB_CXX11 +#include #include #include @@ -213,12 +213,7 @@ namespace odb const char* socket_; std::string charset_; unsigned long client_flags_; - -#ifdef ODB_CXX11 - std::unique_ptr factory_; -#else - std::auto_ptr factory_; -#endif + details::unique_ptr factory_; }; } } -- cgit v1.1