Peter Dimov
38a2ab7646
Remove dependency on Boost.TypeTraits
2024-05-11 21:26:24 +03:00
Brian Weed
3b48732773
Performance improvement
...
Move functors where possible to reduce the number of copies (Lambdas with expensive-to-copy captures can be a bottleneck when copied)
2024-02-04 14:25:58 -05:00
Peter Dimov
f898d3a1dd
Remove BOOST_NO_CXX11_ALLOCATOR workarounds
2024-01-27 09:11:37 +02:00
Peter Dimov
2570672623
Remove boost::detail::function::unusable
2024-01-27 07:08:12 +02:00
Peter Dimov
509de96a1c
Remove BOOST_NO_SFINAE workarounds
2024-01-27 06:58:05 +02:00
Peter Dimov
eff07e72c3
Remove GCC 3.3 workarounds
2024-01-27 06:52:02 +02:00
Peter Dimov
18e8bf458c
Remove BOOST_FUNCTION_TARGET_FIX workarounds
2024-01-27 06:46:26 +02:00
Peter Dimov
7ca2310b15
Support fn.contains(f) where f is a function. Fixes #46 .
2023-09-03 17:55:50 +03:00
Peter Dimov
d268283044
Replace boost/typeindex.hpp use with core/typeinfo.hpp
2023-02-17 14:25:43 +02:00
Peter Dimov
361e07808f
Rearrange include order
2023-02-17 13:55:26 +02:00
Peter Dimov
cb888a496d
Remove unnecessary include of boost/integer.hpp
2023-02-17 03:48:52 +02:00
Peter Dimov
bf8898c95f
Disable C5243 in function_base.hpp ( closes #41 )
2021-12-16 04:24:49 +02:00
jrmarsha
4b25a75c03
Merge branch 'develop' into develop
2019-04-29 15:05:21 -04:00
Josh Marshall
5682111fad
Whitespace
2019-04-29 13:24:59 -04:00
Josh Marshall
1694b32e1b
Fixing another -Wswitch-enum warning.
2019-04-29 12:29:22 -04:00
Peter Dimov
eaf2151263
Cosmetic cleanup
2019-04-29 02:47:09 +03:00
Josh Marshall
d9043b76d6
Changed a switch statement to an if to reduce compiler warnings on more sensitive flags.
2019-04-25 13:16:15 -04:00
Peter Dimov
7b11b52e62
Make function_buffer visible, for UBSan
2018-11-13 19:10:11 +02:00
Nikita Kniazev
755d3c2001
Missing visibility mark on exception type
2018-10-25 08:32:29 -04:00
Glen Fernandes
c0d41a880a
Drop dependency on MPL
2018-09-22 15:27:54 -04:00
Glen Fernandes
d1ad1141f3
Use enable_if from TypeTraits
2018-09-22 15:27:34 -04:00
Glen Fernandes
b1fa00f3b1
Include workaround.hpp from config instead of detail
2018-09-22 15:04:52 -04:00
Daniela Engert
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
Nikita Kniazev
471f6244e4
Suppress weak vtables warning
2016-08-31 19:05:42 +03:00
Andrey Semashev
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
Andrey Semashev
bde64bf9eb
Fix gcc 6 warnings about invoking placement new on a buffer of insufficient size.
2016-04-02 14:59:57 +03:00
Marshall Clow
3eb8954877
Merge pull request #7 from apolukhin/develop
...
Use Boost.TypeIndex to work with type_info to avoid bunch of ...
2015-07-22 10:53:33 -07:00
Edward Diener
0c467707d9
Remove Borland workaround for obsolete and untested compiler/version.
2015-04-27 14:43:49 -04:00
Edward Diener
f0ec326eb0
Use ! operator directly rather than boost::mpl::not with Boost supported compilers.
2015-04-27 04:15:31 -04:00
Antony Polukhin
8998778f51
Use Boost.TypeIndex to work with type_info to avoid bunch of workarounds and non-optimal operators. Added RTTI-off tests
2015-04-25 17:45:13 +03:00
Edward Diener
8cc1be159b
Removed unnecessary header file include
2015-04-02 07:15:26 -04:00
Edward Diener
74c9cc9680
Remove dependency on deprecated type_traits headers.
2015-03-30 01:47:08 -04:00
Peter Dimov
854f2e8d5d
Fix ambiguous 'detail' errors under msvc-8.0.
2015-01-16 21:54:16 +02:00
Stephen Kelly
8d5a27fb85
Function: Remove obsolete GCC version check.
...
[SVN r86111]
2013-10-01 08:46:26 +00:00
Stephen Kelly
8760088d44
Function: Remove obsolete MSVC version checks.
...
[SVN r86018]
2013-09-30 00:16:55 +00:00
Steven Watanabe
c0d4005441
Make sure that the cv flags are copied when we copy a reference to a function object. Fixes #4325
...
[SVN r62665]
2010-06-09 15:40:48 +00:00
Jeremiah Willcock
820ad024fe
Applied patch from #3618 ; fixes #3618
...
[SVN r62621]
2010-06-09 00:47:51 +00:00
Jeremiah Willcock
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
Jeremiah Willcock
de3b8e7451
Fixed tab and no-newline-at-end-of-file issues from inspection report
...
[SVN r61435]
2010-04-20 17:54:16 +00:00
Peter Dimov
22c6592a40
Fix function_base.hpp to not require typeid. Refs #3666 . Requires [58127].
...
[SVN r58128]
2009-12-03 20:59:32 +00:00
Daniel James
8b63c146ea
Work around Visual C++ copy constructor bug. Fixes #2929 .
...
Based on the patch by Steven Watanabe.
[SVN r54619]
2009-07-03 22:22:03 +00:00
Daniel James
e10f4eaef9
Add missing #pragma warning(pop). Fixes #2767 .
...
[SVN r53694]
2009-06-06 15:31:47 +00:00
Douglas Gregor
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
K. Noel Belcourt
07800455a8
Both Sun and Pgi on Linux correctly put typeinfo into the std
...
namespace, but function_base keys off the
BOOST_NO_EXCEPTION_STD_NAMESPACE macro instead of the
BOOST_NO_STD_TYPEINFO macro. The attached patch changes
function_base to use the typeinfo macro. Because eVC 4.2 doesn't
put typeinfo into the std namespace, I need to define
BOOST_NO_STD_TYPEINFO only for this eVC version.
[SVN r49571]
2008-11-03 18:37:49 +00:00
Douglas Gregor
8ca7384121
Fix Boost.Function thread safety issue again
...
[SVN r49326]
2008-10-14 15:31:57 +00:00
Douglas Gregor
75890fea53
CodeGear C++ fix, from Nicola Musatti. Fixes #2325
...
[SVN r48922]
2008-09-23 00:26:21 +00:00
Douglas Gregor
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
Douglas Gregor
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
Douglas Gregor
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
Douglas Gregor
e3dfa7268a
Add forward-declaration header for Boost.Function. Fixes #1668
...
[SVN r48613]
2008-09-05 14:55:34 +00:00