Commit Graph
59 Commits
Author SHA1 Message Date
Ion Gaztañaga 291a95c30a Reduced unused classes from meta_utiles and simplified the implementation of several traits classes to avoid inheritance from integral_constant
Moved declval to utility_core.hpp
2014-09-22 00:15:30 +02:00
Ion Gaztañaga c4bd007098 Move "forward_type" to core.hpp 2014-09-17 23:33:08 +02:00
Ion Gaztañaga d4d08ec10e Remove non-move dependencies from headers to speed up compilations and avoid too many dependencies 2014-09-17 18:37:41 +02:00
Ion Gaztañaga 8539131b2a Workaround for compilers with no std::nullptr_t in <cstddef> 2014-09-16 22:18:49 +02:00
Ion Gaztañaga 201976f0ec Remove intrusive dependencies introduced with copy-paste. 2014-09-16 21:57:28 +02:00
Ion Gaztañaga 65c8c63ddb Fixed is_convertible bug in missing_virtual_destructor 2014-09-04 00:24:44 +02:00
Ion Gaztañaga 3075014f2d Added check for types with no virtual destructor when using default_delete and non-array types 2014-09-04 00:15:56 +02:00
Ion Gaztañaga 90be9ebe22 Extracted default_delete into its own header.
Extracted meta utilities used only by unique_ptr and friends to its own "unique_ptr_meta_utils.hpp" header.
2014-09-02 16:28:17 +02:00
Ion Gaztañaga 19d35253cf Added support for bounded arrays in unique_ptr. Splitted test in several subtests. 2014-09-01 23:59:10 +02:00
Ion Gaztañaga 583378a946 Update boost::move documentation with a more accurate description. 2014-08-30 02:43:42 +02:00
Ion Gaztañaga 085a814cf2 Added missing typenames 2014-08-29 11:29:26 +02:00
Ion Gaztañaga 738e360f40 Improved move-only deleters in C++03, now they can be caught as rvalues. 2014-08-29 10:28:09 +02:00
Ion Gaztañaga 364ee17476 Simplified and improved unique_ptr implementation:
- No array specialization to avoid code duplication
- Constructible and assignable from literal zero
2014-08-27 23:21:36 +02:00
Ion Gaztañaga 6b2982a385 Removed unneded macros that pollute user code. 2014-08-27 23:20:30 +02:00
Ion Gaztañaga e3959c982c Corrected typos in documentation 2014-08-24 21:17:43 +02:00
Ion Gaztañaga 7797b52f61 Added missing cstddef includes and corrected the use of plain "size_t" 2014-08-24 21:17:26 +02:00
Ion Gaztañaga a9bc0876cd Added missing cstddef for std::nullptr_t 2014-08-23 00:32:30 +02:00
Ion Gaztañaga e1da7c5ca1 Added class unique_ptr under boost::movelib namespace. This could be lifted to ::boost namespace if the community agrees.
This unique_ptr implementation is based on C++14, including make_unique functions. Large parte of the testsuite is based on Howard Hinnant's unique_ptr emulation testsuite.
2014-08-22 18:34:34 +02:00
Ion Gaztañaga 3c56780e0e - Splitted utility.hpp into utility_core.hpp and utility.hpp. The first one implements move() and forward() minimizing external dependencies. utility.hpp includes utility_core.hpp and implemente move_if_noexcept.cpp
- Changed move_if_noexcept with a single function

- Changed test case to use boost/core/lightweight_test.hpp

- Added boost::is_nothrow_move_constructible<T>::value to  is_nothrow_move_constructible_or_uncopyable so types with only a non-throwing move constructor is forwarded with move_if_noexcept.

-
2014-08-18 02:03:35 +02:00
Ion Gaztañaga bb00439e4f Resolved conflicts when merging move_if_noexcept implementation 2014-08-17 16:42:31 +02:00
Ion Gaztañaga d45f2cd734 Reduced dependencies with type_traits. Updated "forward" to be standard conforming. 2014-08-03 21:26:46 +02:00
Ion Gaztañaga 388b71d333 Fixed Trac #9785: Compiler warning with intel icc in boost/move/core.hpp 2014-08-01 17:29:59 +02:00
Antony Polukhin c60351de0f Fix move_if_noexcept: add const to reference 2014-06-23 12:35:41 +04:00
Antony Polukhin f02990aebc Added initial implementation of move_if_noexcept 2014-06-04 19:57:30 +04:00
Ion Gaztañaga 51c9e874a8 Fixes #8420 and some clang errors. 2014-02-24 08:29:31 +01:00
Ion Gaztañaga f1de12bfef Fixes #9045 ("Wrong macro name on docs") 2014-02-23 22:02:39 +01:00
Ion Gaztañaga 688955ab9b Fixes #9482 2014-02-23 21:31:52 +01:00
Ion Gaztañaga 062000ed68 Added BOOST_MOVE_RET 2014-02-15 23:04:15 +01:00
Ion Gaztañaga 51dc02e043 Added a convertible guard to conversion-aware macro to avoid ambiguities in overloads.
[SVN r85659]
2013-09-12 21:56:02 +00:00
Ion Gaztañaga 55d5015a2b Fix has_nothrow_move and avoid boost::has_nothrow_move<copyable>::value test as each compiler can deduce a different thing depending on its type analysis.
[SVN r85410]
2013-08-20 18:10:09 +00:00
Ion Gaztañaga fa3137bc25 Fixes #8979
[SVN r85296]
2013-08-10 22:41:48 +00:00
Ion Gaztañaga 0cd5b2022c FixesFixes #8764.
[SVN r85182]
2013-08-01 15:18:00 +00:00
Ion Gaztañaga b0ba0bb9c0 Fixes #8765.
[SVN r85181]
2013-08-01 14:43:25 +00:00
Ion Gaztañaga fe513fd14c Fixes #8842.
[SVN r85180]
2013-08-01 14:17:39 +00:00
Ion Gaztañaga dbc1ef7722 Fix missing const in BOOST_COPY_ASSIGN_REF_3_TEMPL_ARGS
[SVN r84339]
2013-05-18 09:43:17 +00:00
Ion Gaztañaga 7c91cca54f Fixes #8231
[SVN r83270]
2013-03-03 12:21:48 +00:00
Ion Gaztañaga bf475b68a8 Fixes #7969
[SVN r82711]
2013-02-04 05:34:22 +00:00
Ion Gaztañaga a7091d1009 Fixes #7969
[SVN r82706]
2013-02-03 20:42:26 +00:00
Ion Gaztañaga 8e3fb9acbb Fixes #7832
[SVN r82230]
2012-12-27 22:33:06 +00:00
Ion Gaztañaga 5bbb9bbf0f Fixes #7830
[SVN r82206]
2012-12-25 23:07:01 +00:00
Hartmut Kaiser e38f7faaf6 Move: applying patch fixing a problem when compiling Boost.Container with newer compilers
[SVN r81873]
2012-12-12 14:39:17 +00:00
Ion Gaztañaga b4349e3fa7 * Better header segregation (bug
[@https://svn.boost.org/trac/boost/ticket/6524 #6524]).
*  Small documentation fixes
*  Replaced deprecated BOOST_NO_XXXX with newer BOOST_NO_CXX11_XXX macros.

[SVN r81513]
2012-11-24 20:48:31 +00:00
Marshall Clow b16287f72a Remove usage of deprecated macros
[SVN r81492]
2012-11-23 14:57:04 +00:00
Ion Gaztañaga 34009be499 Ticket #7031: (back_|front_)move_insert_iterator::op= cannot take rvalue
[SVN r79431]
2012-07-11 22:32:47 +00:00
Ion Gaztañaga 29b97a7513 Ticket #7095: warning: unrecognized __attribute__((__may_alias__))
[SVN r79424]
2012-07-11 17:59:25 +00:00
Ion Gaztañaga 8a4cef0b82 Trailing whitespaces
[SVN r78520]
2012-05-20 10:08:33 +00:00
Ion Gaztañaga 026c48d377 Added BOOST_COPY_ASSIGN_REF_BEG/END macro to ease portable template class usage
[SVN r77890]
2012-04-10 18:48:02 +00:00
Ion Gaztañaga 099eb41858 Added BOOST_RV_REF_BEG and BOOST_RV_REF_END macros to ease declaring rvalues of template classes
[SVN r77483]
2012-03-22 18:51:38 +00:00
Ion Gaztañaga 0c91eec7d4 Fixed double inline
[SVN r76546]
2012-01-16 21:24:21 +00:00
Ion Gaztañaga 71fbccf71e Ticket #6396: Implicit instanciation of boost::rv for non-cass types generates an error
[SVN r76508]
2012-01-15 12:24:52 +00:00