f22fa49e07
Added variadic support
...
Improves `boost/function.hpp` inclusion by 20%.
2018-10-27 21:04:00 -04:00
5f93559650
Prepare for variadic support
2018-10-27 21:04:00 -04:00
b07621f2ee
Default defaulted functions
2018-10-22 18:34:40 -04:00
86f05aa602
Replace boost::forward with static_cast
...
One dependency less
2018-10-22 18:34:40 -04:00
4230fb2388
Reuse BOOST_FUNCTION_TEMPLATE_ARGS in BOOST_FUNCTION_PARTIAL_SPEC
2018-10-22 18:34:40 -04:00
c0d41a880a
Drop dependency on MPL
2018-09-22 15:27:54 -04:00
87c978d36e
Use LightweightTest and NoExceptionsSupport from Core
2018-09-22 15:27:44 -04:00
d1ad1141f3
Use enable_if from TypeTraits
2018-09-22 15:27:34 -04:00
9d0acd5195
Use char type directly to avoid invalid aliasing in one more place
2018-04-04 09:37:44 +02:00
0ee8e59d0a
use char type directly to avoid invalid aliasing
2018-03-16 11:47:23 +01:00
f4f8fb0a16
replace members of std::allocate which are deprecated in c++17 by theirs cousins from std::allocator_traits.
2017-12-17 07:42:28 +01:00
c326d30f28
Remove std::unary/binary_function use, they have been removed in C++17
2016-11-06 14:43:42 +02:00
54988e8e91
Changed implementation to avoid calculating the size of the raw data buffer manually. Trim trailing spaces.
2016-04-02 17:31:22 +03:00
bde64bf9eb
Fix gcc 6 warnings about invoking placement new on a buffer of insufficient size.
2016-04-02 14:59:57 +03:00
f0ec326eb0
Use ! operator directly rather than boost::mpl::not with Boost supported compilers.
2015-04-27 04:15:31 -04:00
73e4d02b00
Qualify enable_if with namespace boost
...
Unfortunately the change from enable_if_c to enable_if in 74c9cc9680
broke a lot of other libraries' regression tests on MSVC, which complains about ambiguous symbols.
2015-04-03 08:55:01 +02:00
74c9cc9680
Remove dependency on deprecated type_traits headers.
2015-03-30 01:47:08 -04:00
854f2e8d5d
Fix ambiguous 'detail' errors under msvc-8.0.
2015-01-16 21:54:16 +02:00
df1db75294
Less includes from Boost.Move and more tests
2014-10-02 15:40:33 +04:00
27e9e1e372
Add support for function signatures with rvalue params
2014-09-29 20:14:06 +04:00
9f06e35e8d
Add coverity comments to silence Coverity warnings
2014-01-31 19:50:02 -08:00
250655ad6d
Add 'std:' qualification to size_t. Fixes Bug #6184
2014-01-31 19:42:29 -08:00
95a1956397
Added missing 'std::'; Refs #7819
...
[SVN r82273]
2012-12-29 16:36:12 +00:00
9e30736439
Updated to use new macro names
...
[SVN r81450]
2012-11-21 01:49:52 +00:00
419f424959
Add move assignment and move constructors to Boost.Function (refs #7330 )
...
[SVN r80552]
2012-09-17 04:08:18 +00:00
775213a9e6
Remove extraneous semicolon
...
[SVN r74916]
2011-10-11 15:23:29 +00:00
cbb9e7c4da
Applied patch from #4717
...
[SVN r72316]
2011-05-31 21:12:35 +00:00
8cde82a568
Remove extra definition of operator(), since it's inline anyway. Fixes #4765 .
...
[SVN r67560]
2011-01-02 05:13:03 +00:00
6902f6f943
Applied patch from #4073 ; fixes #4073
...
[SVN r62623]
2010-06-09 00:51:41 +00:00
2e19728cdb
Removed all but one old-style cast, breaking GCC 2.95.3; fixes #3410
...
[SVN r62614]
2010-06-08 23:55:25 +00:00
ff3244d562
When copying boost::ref, copy even when the referenced function is empty. Fixes #2642
...
Patch by Steven Watanabe
[SVN r54616]
2009-07-03 22:20:26 +00:00
68128bfffa
Make Boost.Function compile with disabled exceptions.
...
Closes #2900 . Patch from Gabi Davar.
[SVN r53722]
2009-06-07 15:44:50 +00:00
a74e72cce9
Make Boost.Function compile under BOOST_NO_EXCEPTIONS.
...
Fixes #2499
Fixes #2494
Fixes #2469
Fixes #2466
[SVN r51745]
2009-03-13 05:49:02 +00:00
6f8ec5c8c5
Implement an optimization that David Abrahams and myself came up with,
...
where Boost.Function uses a bit in the vtable pointer to indicate when
the target function object has a trivial copy constructor, trivial
destructor, and fits within the small object buffer. In this case, we
just copy the bits of the function object rather than performing an
indirect call to the manager.
This results in a 60% speedup on a micro-benchmark that copies and
calls such function objects repeatedly.
[SVN r51743]
2009-03-13 05:23:53 +00:00
8ca7384121
Fix Boost.Function thread safety issue again
...
[SVN r49326]
2008-10-14 15:31:57 +00:00
2fe4cc253f
Fix double-destruction problem with small function objects and swap(), and try to work around a GCC 4.2 issue. See #1910 for comments about the former problem from Niels Dekker.
...
[SVN r48627]
2008-09-06 03:16:25 +00:00
f379ef8532
Make Boost.Function's target() operation respect the cv-qualifiers of referenced function objects. Fixes #736
...
[SVN r48618]
2008-09-05 17:52:12 +00:00
d5a86a2d52
Improve the performance of Boost.Function's swap. Thanks to Niels Dekker for the original patch. Fixes #1910
...
[SVN r48615]
2008-09-05 15:43:22 +00:00
adb7b0a214
Change Boost.Function allocator behavior, from Emil Dotchevski
...
[SVN r43884]
2008-03-27 19:44:37 +00:00
cead36cd5b
Disable more Visual C++ warnings in Function headers. Fixes #1416
...
[SVN r41798]
2007-12-06 18:39:06 +00:00
2378ba59e7
Fix for Borland compilers.
...
[SVN r39657]
2007-10-02 17:41:35 +00:00
53b95c386d
Finalizes the fix to Bug #1260 , making vtable_base an actual POD type (oops)
...
and playing more nicely with reinterpret_cast (thanks to Brad King for the
fixes).
[SVN r39285]
2007-09-14 21:05:46 +00:00
3312c7ffcd
function_template.hpp:
...
- Pass-by-reference internally, when we can. Fixes #1067
[SVN r39244]
2007-09-13 19:06:53 +00:00
de27ae9697
function/function_base.hpp, function/function_template.hpp:
...
- Switch from dynamic initialization of the vtable pointer to static
initialization (Fixes #1260 )
- Handle member pointers properly, only using mem_fn within the invoker
to deal with all of the messy bits of calling member pointers
[SVN r39240]
2007-09-13 17:38:58 +00:00
a7b9940f15
Handle GCC's -fno-exceptions properly. Fixes #1198
...
[SVN r39061]
2007-08-29 19:06:11 +00:00
872f12efee
TR1 conformance: derive from unary_function/binary_function
...
[SVN r34481]
2006-07-08 18:07:33 +00:00
69ee6e2375
Fixed an 'unused parameter' warning.
...
[SVN r33204]
2006-03-02 21:24:57 +00:00
58b61efb5f
trivial adjustments to enable warning-free compilation with gcc -Wall -W -Werror
...
[SVN r32364]
2006-01-20 16:53:30 +00:00
78f6b385d5
Small buffer optimization for Boost.Function
...
[SVN r32282]
2006-01-10 23:52:35 +00:00
93c691fbdf
function_base.hpp, function_template.hpp:
...
- Use a vtable instead of separate manager/invoker pointers, to shrink the
size of a boost::function object to 8 bytes
- Fix a problem with NULL member pointers
[SVN r32186]
2005-12-30 02:31:51 +00:00