![]() |
Home | Libraries | People | FAQ | More |
boost/core/pointer_in_range.hpp
header with a pointer_in_range
function template to check if a pointer is within a given range.
type_name for abstract
classes. (#172)
boost/core/type_name.hpp compilation error with MSVC with
disabled native wchar_t
type. (#173)
empty_value compilation
errors when it is used with a nested class. (PR#175)
boost/core/functor.hpp
header with a functor
class template for wrapping a raw function into a function object class.
Changed null_deleter,
fclose_deleter
and checked deleter definitions
so that they don't bring namespace boost
into argument-dependent lookup in cases like this:
std::unique_ptr< std::FILE, boost::fclose_deleter > p1, p2; swap(p1, p2); // no longer looks for boost::swap as part of ADL
Users may need to either explicitly qualify the namespace of the called
function or add a using-declaration.
boost::swap utility function has been renamed
to boost::core::invoke_swap to avoid forming a potential
infinite recursion when the arguments are not swappable. The new function
is defined in boost/core/invoke_swap.hpp and is functionally equivalent
to boost::swap. The old boost::swap
name is preserved for backward compatibility but deprecated and will
be removed in a future release. Its noexcept
specification has been removed to avoid compile errors caused by compile-time
recursion. BOOST_ALLOW_DEPRECATED_SYMBOLS
or BOOST_ALLOW_DEPRECATED
can be defined to suppress deprecation warnings for the transition period.
(#148)
boost/swap.hpp, boost/utility/swap.hpp
and boost/core/swap.hpp are deprecated and will be removed.
Please, switch to boost/core/invoke_swap.hpp.
BOOST_ALLOW_DEPRECATED_HEADERS
or BOOST_ALLOW_DEPRECATED
can be defined to suppress deprecation warnings.
boost::core::type_name.
boost/core/bit.hpp are now constexpr
on recent MSVC versions (VS2019 update 5 and later.)
boost::core::byteswap (an implementation of std::byteswap from C++23) to boost/core/bit.hpp.
sp_thread_pause,
sp_thread_yield, sp_thread_sleep from SmartPtr implementation
details to boost/core/yield_primitives.hpp.
boost/core/snprintf.hpp
header with portable definitions of snprintf,
vsnprintf and their
wchar_t counterparts.
boost/core/is_same.hpp and boost::core::is_same.
The header will be removed in a future release. Users are advised to
use Boost.TypeTraits
or C++ standard library type traits instead.
boost::ref member functions and associated
methods with noexcept.
boost::swap function with noexcept,
depending on whether the type supports a non-throwing swap operation.
boost::core::launder,
a portable implementation of std::launder.
BOOST_CORE_ALIGNOF,
a portable implementation of alignof.
boost::core::max_align_t,
a portable equivalent of std::max_align_t,
and boost::core::max_align, the alignment of max_align_t.
boost::core::memory_resource,
a portable equivalent of std::pmr::memory_resource
from C++17.
boost/core/serialization.hpp,
a collection of primitives allowing libraries to implement Boost.Serialization
support for their types without including a Serialization header and
thereby making their libraries depend on Serialization.
boost::data,
an implementation of std::data.
boost::size,
an implementation of std::size.
boost::span to use boost::data
which adds support for range construction from an std::initializer_list.
boost::identity,
an implementation of std::identity.
This facility has been moved from Boost.Functional.
empty_value
members are now marked as constexpr.
fclose_deleter,
a deleter that calls std::fclose
on a pointer to std::FILE.
boost/core/bit.hpp now explicitly require unsigned
integers on input. (#129)
bit_width now returns
int instead of a value of
the input argument type. This follows the resolution of LWG3656.
boost/core/allocator_access.hpp,
added detection of construct
and destroy members of
an allocator.
boost/core/alloc_construct.hpp header is now deprecated and will
be removed in a future release. Its functionality was moved to boost/core/allocator_access.hpp.
In particular, new methods allocator_construct_n
and allocator_destroy_n
were added for allocating and destroying arrays.
span in C++17 mode when Boost.Range
headers were included. (#105,
PR#115)
type_name.
pointer_traits,
pointer rebinding now supports C++03 compilers.
boost::allocator_traits, an implementation
of std::allocator_traits.
boost::pointer_traits SFINAE friendly.
boost/iterator.hpp is deprecated and will be removed
in a future release. The header defines the boost::iterator
template, which is equivalent to std::iterator
in the <iterator> header. However, since std::iterator is itself deprecated in C++17,
users are advised to remove the use of boost::iterator
or std::iterator from their code.
boost::core::verbose_terminate_handler, a utility
function intended to be passed to std::set_terminate
that prints information about the uncaught exception to stderr.
boost/core/cmath.hpp,
enabled when BOOST_CORE_USE_GENERIC_CMATH
is defined or when the platform does not provide the necessary facilities
in <cmath>.
boost::core::type_name, a utility function that
returns the name of a type as a string.
boost::span, a C++11 implementation of C++20's
std::span.
boost/core/uncaught_exceptions.hpp has been modified for compatibility
with Mac OS 10.4 and older.
boost/core/cmath.hpp, a portable implementation of the
floating point classification functions from <cmath>.
boost/core/bit.hpp, a portable implementation of the
C++20 standard header <bit>.
BOOST_TEST_EQ,
BOOST_TEST_NE for character
types under C++20.
allocator_traits.)
allocator_traits
with individual traits and functions for each facility. They support
the C++11 allocator model when possible and provide a fallback for C++98
compatibility.
BOOST_TEST_WITH
to Lightweight Test.
alloc_construct,
alloc_construct_n, alloc_destroy, and alloc_destroy_n
in <boost/core/alloc_construct.hpp> for allocator aware and exception
safe construction and destruction of objects and arrays.
first_scalar
in <boost/core/first_scalar.hpp> for obtaining a pointer to the first
scalar element of an array. Given a pointer of type T* they return a pointer of type remove_all_extents_t<T>*.
noinit_adaptor
in <boost/core/noinit_adaptor.hpp> which is an allocator adaptor that
converts any allocator into one whose construct(ptr) performs default initialization via
placement new, and whose
destroy(ptr)
invokes the value_type
destructor directly.
default_allocator
in <boost/core/default_allocator.hpp>, which can serve as a minimal default
allocator that has interface similar to C++20 std::allocator,
supports configurations with disabled exceptions and does not have std as an associated namespace. The
allocator uses operator new and operator
delete for allocation.
<boost/core/uncaught_exceptions.hpp> header, added workarounds for better
compatibility with QNX SDP 7.0 when libc++/libc++abi libraries are used.
<boost/detail/sp_typeinfo.hpp> header is now marked as deprecated
and will be removed in a future release. <boost/core/typeinfo.hpp>
should be used instead.
boost::empty_value, for library authors to
conveniently leverage the Empty Base Optimization to store objects of
potentially empty types.
boost::quick_exit to provide the C++11 standard
library facility std::quick_exit
functionality.
boost::report_errors.
to_address and
pointer_traits to reflect
the design adopted for C++20 in P0653R2.
pointer_traits
for C++03 and higher, that implements P0653r0.
BOOST_TEST_GT and
BOOST_TEST_GE to Lightweight
Test.