From 0d8fddcf11df9eb731f1abef070211b6c8733e8a Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Mon, 3 Sep 2012 12:09:06 +0200 Subject: C++11 optimizations for Boost unordered containers sub-profile --- odb/boost/unordered/container-traits.hxx | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/odb/boost/unordered/container-traits.hxx b/odb/boost/unordered/container-traits.hxx index 6979ed7..49011eb 100644 --- a/odb/boost/unordered/container-traits.hxx +++ b/odb/boost/unordered/container-traits.hxx @@ -13,10 +13,13 @@ #include +#include // std::move + #include #include #include +#include // ODB_CXX11 namespace odb { @@ -51,7 +54,11 @@ namespace odb { value_type v; more = f.load_all (v); +#ifdef ODB_CXX11 + c.insert (std::move (v)); +#else c.insert (v); +#endif } } @@ -107,7 +114,11 @@ namespace odb { value_type v; more = f.load_all (v); +#ifdef ODB_CXX11 + c.insert (std::move (v)); +#else c.insert (v); +#endif } } @@ -163,7 +174,12 @@ namespace odb key_type k; value_type v; more = f.load_all (k, v); + +#ifdef ODB_CXX11 + c.insert (pair_type (std::move (k), std::move (v))); +#else c.insert (pair_type (k, v)); +#endif } } @@ -223,7 +239,12 @@ namespace odb key_type k; value_type v; more = f.load_all (k, v); + +#ifdef ODB_CXX11 + c.insert (pair_type (std::move (k), std::move (v))); +#else c.insert (pair_type (k, v)); +#endif } } -- cgit v1.1