712 lines
16 KiB
Plaintext
712 lines
16 KiB
Plaintext
|
[/
|
||
|
/ Copyright (c) 2003-2023 Christopher M. Kohlhoff (chris at kohlhoff dot com)
|
||
|
/
|
||
|
/ Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||
|
/ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
||
|
/]
|
||
|
|
||
|
[heading Compiler/platform feature detection macros]
|
||
|
|
||
|
Asio automatically defines preprocessor macros corresponding to the detected
|
||
|
available features on a particular compiler and target platform. These macros
|
||
|
are named with the prefix `BOOST_ASIO_HAS_`, and are listed in the table below.
|
||
|
|
||
|
Many of these macros also have a corresponding `BOOST_ASIO_DISABLE_` macro that
|
||
|
may be used to explicitly disable the feature.
|
||
|
|
||
|
In general, `BOOST_ASIO_HAS_` macros should not be explicitly defined by the
|
||
|
user, except when absolutely required as a workaround for the latest version of
|
||
|
a compiler or platform. For older compiler/platform combinations where a
|
||
|
specific `BOOST_ASIO_HAS_` macro is not automatically defined, testing may have
|
||
|
shown that a claimed feature isn't sufficiently conformant to be compatible
|
||
|
with Boost.Asio's needs.
|
||
|
|
||
|
[table
|
||
|
[[Macro][Description][Macro to disable feature]]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_ALIAS_TEMPLATES`]
|
||
|
[
|
||
|
Support alias templates on compilers known to allow it.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_ALIAS_TEMPLATES`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_ALIGNOF`]
|
||
|
[
|
||
|
Support for the alignof operator.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_ALIGNOF`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_BOOST_ALIGN`]
|
||
|
[
|
||
|
Boost align library.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_BOOST_ALIGN`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_BOOST_ARRAY`]
|
||
|
[
|
||
|
Boost array library.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_BOOST_ARRAY`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_BOOST_ASSERT`]
|
||
|
[
|
||
|
Boost assert macro.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_BOOST_ASSERT`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_BOOST_BIND`]
|
||
|
[
|
||
|
Boost bind function.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_BOOST_BIND`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_BOOST_CHRONO`]
|
||
|
[
|
||
|
Boost support for chrono.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_BOOST_CHRONO`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_BOOST_CONFIG`]
|
||
|
[
|
||
|
Boost.Config library is available.
|
||
|
]
|
||
|
[]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_BOOST_CONTEXT_FIBER`]
|
||
|
[
|
||
|
Boost support for the Context library's fibers.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_BOOST_CONTEXT_FIBER`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_BOOST_COROUTINE`]
|
||
|
[
|
||
|
Boost support for the Coroutine library.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_BOOST_COROUTINE`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_BOOST_DATE_TIME`]
|
||
|
[
|
||
|
Boost support for the DateTime library.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_BOOST_DATE_TIME`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_BOOST_LIMITS`]
|
||
|
[
|
||
|
Boost limits header.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_BOOST_LIMITS`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_BOOST_REGEX`]
|
||
|
[
|
||
|
Boost regex library.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_BOOST_REGEX`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_BOOST_SOURCE_LOCATION`]
|
||
|
[
|
||
|
Boost support for source_location and system errors.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_BOOST_SOURCE_LOCATION`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_BOOST_THROW_EXCEPTION`]
|
||
|
[
|
||
|
Boost throw_exception function.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_BOOST_THROW_EXCEPTION`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_BOOST_WORKAROUND`]
|
||
|
[
|
||
|
Boost's BOOST_WORKAROUND macro.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_BOOST_WORKAROUND`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_CHRONO`]
|
||
|
[
|
||
|
Some form of chrono library is available.
|
||
|
]
|
||
|
[]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_CLANG_LIBCXX`]
|
||
|
[
|
||
|
Clang / libc++ detection.
|
||
|
]
|
||
|
[]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_CONCEPTS`]
|
||
|
[
|
||
|
Support concepts on compilers known to allow them.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_CONCEPTS`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_CONSTANT_EXPRESSION_SFINAE`]
|
||
|
[
|
||
|
Support SFINAE use of constant expressions on compilers known to allow it.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_CONSTANT_EXPRESSION_SFINAE`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_CONSTEXPR`]
|
||
|
[
|
||
|
Support constexpr on compilers known to allow it.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_CONSTEXPR`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_CO_AWAIT`]
|
||
|
[
|
||
|
Support the co_await keyword on compilers known to allow it.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_CO_AWAIT`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_CSTDINT`]
|
||
|
[
|
||
|
Standard library support for the cstdint header.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_CSTDINT`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_CXX11_ALLOCATORS`]
|
||
|
[
|
||
|
Standard library support for the C++11 allocator additions.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_CXX11_ALLOCATORS`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_DECLTYPE`]
|
||
|
[
|
||
|
Support automatic type deduction on compilers known to support it.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_DECLTYPE`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_DEFAULT_FUNCTION_TEMPLATE_ARGUMENTS`]
|
||
|
[
|
||
|
Support default function template arguments on compilers known to allow it.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_DEFAULT_FUNCTION_TEMPLATE_ARGUMENTS`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_DEV_POLL`]
|
||
|
[
|
||
|
Solaris: /dev/poll.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_DEV_POLL`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_ENUM_CLASS`]
|
||
|
[
|
||
|
Support enum classes on compilers known to allow them.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_ENUM_CLASS`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_EPOLL`]
|
||
|
[
|
||
|
Linux: epoll, eventfd and timerfd.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_EPOLL`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_EVENTFD`]
|
||
|
[
|
||
|
Linux: epoll, eventfd and timerfd.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_EVENTFD`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_FILE`]
|
||
|
[
|
||
|
Files.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_FILE`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_GETADDRINFO`]
|
||
|
[
|
||
|
Can use getaddrinfo() and getnameinfo().
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_GETADDRINFO`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_HANDLER_HOOKS`]
|
||
|
[
|
||
|
Handler hooking. Disabled for ancient Borland C++ and gcc compilers.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_HANDLER_HOOKS`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_IOCP`]
|
||
|
[
|
||
|
Windows: IO Completion Ports.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_IOCP`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_IO_URING_AS_DEFAULT`]
|
||
|
[
|
||
|
Linux: io_uring is used instead of epoll.
|
||
|
]
|
||
|
[]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_KQUEUE`]
|
||
|
[
|
||
|
Mac OS X, FreeBSD, NetBSD, OpenBSD: kqueue.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_KQUEUE`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_LOCAL_SOCKETS`]
|
||
|
[
|
||
|
UNIX domain sockets.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_LOCAL_SOCKETS`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_MOVE`]
|
||
|
[
|
||
|
Support move construction and assignment on compilers known to allow it.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_MOVE`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_MSG_NOSIGNAL`]
|
||
|
[
|
||
|
Kernel support for MSG_NOSIGNAL.
|
||
|
]
|
||
|
[]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_NOEXCEPT`]
|
||
|
[
|
||
|
Support noexcept on compilers known to allow it.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_NOEXCEPT`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_NOEXCEPT_FUNCTION_TYPE`]
|
||
|
[
|
||
|
Support noexcept on function types on compilers known to allow it.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_NOEXCEPT_FUNCTION_TYPE`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_NULLPTR`]
|
||
|
[
|
||
|
Standard library support for the nullptr_t type.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_NULLPTR`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_PIPE`]
|
||
|
[
|
||
|
Pipes.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_PIPE`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_POSIX_STREAM_DESCRIPTOR`]
|
||
|
[
|
||
|
POSIX: stream-oriented file descriptors.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_POSIX_STREAM_DESCRIPTOR`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_PTHREADS`]
|
||
|
[
|
||
|
POSIX threads.
|
||
|
]
|
||
|
[]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_REF_QUALIFIED_FUNCTIONS`]
|
||
|
[
|
||
|
Support ref-qualified functions on compilers known to allow it.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_REF_QUALIFIED_FUNCTIONS`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_RETURN_TYPE_DEDUCTION`]
|
||
|
[
|
||
|
Support return type deduction on compilers known to allow it.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_RETURN_TYPE_DEDUCTION`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_SECURE_RTL`]
|
||
|
[
|
||
|
Microsoft Visual C++'s secure C runtime library.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_SECURE_RTL`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_SERIAL_PORT`]
|
||
|
[
|
||
|
Serial ports.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_SERIAL_PORT`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_SFINAE_VARIABLE_TEMPLATES`]
|
||
|
[
|
||
|
Support SFINAEd template variables on compilers known to allow it.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_SFINAE_VARIABLE_TEMPLATES`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_SIGACTION`]
|
||
|
[
|
||
|
Can use sigaction() instead of signal().
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_SIGACTION`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_SIGNAL`]
|
||
|
[
|
||
|
Can use signal().
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_SIGNAL`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_SOURCE_LOCATION`]
|
||
|
[
|
||
|
Standard library has a source_location that we can use.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_SOURCE_LOCATION`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_SSIZE_T`]
|
||
|
[
|
||
|
Support for POSIX ssize_t typedef.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_SSIZE_T`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_ADDRESSOF`]
|
||
|
[
|
||
|
Standard library support for addressof.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_ADDRESSOF`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_ALIGNED_ALLOC`]
|
||
|
[
|
||
|
Standard library support for aligned allocation.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_ALIGNED_ALLOC`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_ALLOCATOR_ARG`]
|
||
|
[
|
||
|
Standard library support for allocator_arg_t.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_ALLOCATOR_ARG`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_ANY`]
|
||
|
[
|
||
|
Standard library support for std::any.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_ANY`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_ARRAY`]
|
||
|
[
|
||
|
Standard library support for arrays.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_ARRAY`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_ATOMIC`]
|
||
|
[
|
||
|
Standard library support for atomic operations.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_ATOMIC`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_CALL_ONCE`]
|
||
|
[
|
||
|
Standard library support for the call_once function.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_CALL_ONCE`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_CHRONO`]
|
||
|
[
|
||
|
Standard library support for chrono. Some standard libraries (such as the
|
||
|
libstdc++ shipped with gcc 4.6) provide monotonic_clock as per early C++0x
|
||
|
drafts, rather than the eventually standardised name of steady_clock.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_CHRONO`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_CHRONO_MONOTONIC_CLOCK`]
|
||
|
[
|
||
|
Standard library support for chrono. Some standard libraries (such as the
|
||
|
libstdc++ shipped with gcc 4.6) provide monotonic_clock as per early C++0x
|
||
|
drafts, rather than the eventually standardised name of steady_clock.
|
||
|
]
|
||
|
[]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_CONCEPTS`]
|
||
|
[
|
||
|
Support concepts on compilers known to allow them.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_CONCEPTS`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_COROUTINE`]
|
||
|
[
|
||
|
Standard library support for coroutines.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_COROUTINE`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_EXCEPTION_PTR`]
|
||
|
[
|
||
|
Standard library support for std::exception_ptr and std::current_exception.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_EXCEPTION_PTR`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_EXPERIMENTAL_SOURCE_LOCATION`]
|
||
|
[
|
||
|
Standard library support for std::experimental::source_location.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_EXPERIMENTAL_SOURCE_LOCATION`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_EXPERIMENTAL_STRING_VIEW`]
|
||
|
[
|
||
|
Standard library support for std::experimental::string_view.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_EXPERIMENTAL_STRING_VIEW`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_FUNCTION`]
|
||
|
[
|
||
|
Standard library support for the function class.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_FUNCTION`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_FUTURE`]
|
||
|
[
|
||
|
Standard library support for futures.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_FUTURE`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_HASH`]
|
||
|
[
|
||
|
Standard library support for std::hash.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_HASH`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_INDEX_SEQUENCE`]
|
||
|
[
|
||
|
Standard library support for std::index_sequence.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_INDEX_SEQUENCE`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_INVOKE_RESULT`]
|
||
|
[
|
||
|
Standard library has invoke_result (which supersedes result_of).
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_INVOKE_RESULT`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_IOSTREAM_MOVE`]
|
||
|
[
|
||
|
Standard library support for iostream move construction and assignment.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_IOSTREAM_MOVE`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_MUTEX_AND_CONDVAR`]
|
||
|
[
|
||
|
Standard library support for the mutex and condition variable classes.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_MUTEX_AND_CONDVAR`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_NESTED_EXCEPTION`]
|
||
|
[
|
||
|
Standard library support for std::nested_exception.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_NESTED_EXCEPTION`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_REFERENCE_WRAPPER`]
|
||
|
[
|
||
|
Standard library support for the reference_wrapper class.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_REFERENCE_WRAPPER`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_SHARED_PTR`]
|
||
|
[
|
||
|
Standard library support for shared_ptr and weak_ptr.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_SHARED_PTR`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_STRING_VIEW`]
|
||
|
[
|
||
|
Standard library support for std::string_view.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_STRING_VIEW`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_SYSTEM_ERROR`]
|
||
|
[
|
||
|
Standard library support for system errors.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_SYSTEM_ERROR`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_THREAD`]
|
||
|
[
|
||
|
Standard library support for the thread class.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_THREAD`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_TO_ADDRESS`]
|
||
|
[
|
||
|
Standard library support for std::to_address.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_TO_ADDRESS`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_TUPLE`]
|
||
|
[
|
||
|
Standard library support for std::tuple.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_TUPLE`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STD_TYPE_TRAITS`]
|
||
|
[
|
||
|
Standard library support for type traits.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STD_TYPE_TRAITS`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_STRING_VIEW`]
|
||
|
[
|
||
|
Standard library has a string_view that we can use.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_STRING_VIEW`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_THREADS`]
|
||
|
[
|
||
|
Threads.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_THREADS`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_THREAD_KEYWORD_EXTENSION`]
|
||
|
[
|
||
|
Support for the __thread keyword extension.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_THREAD_KEYWORD_EXTENSION`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_TIMERFD`]
|
||
|
[
|
||
|
Linux: epoll, eventfd and timerfd.
|
||
|
]
|
||
|
[]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_UNISTD_H`]
|
||
|
[
|
||
|
On POSIX (and POSIX-like) platforms we need to include unistd.h in order to
|
||
|
get access to the various platform feature macros, e.g. to be able to test
|
||
|
for threads support.
|
||
|
]
|
||
|
[]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_VARIABLE_TEMPLATES`]
|
||
|
[
|
||
|
Support template variables on compilers known to allow it.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_VARIABLE_TEMPLATES`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_VARIADIC_LAMBDA_CAPTURES`]
|
||
|
[
|
||
|
Support for capturing parameter packs in lambdas.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_VARIADIC_LAMBDA_CAPTURES`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_VARIADIC_TEMPLATES`]
|
||
|
[
|
||
|
Support variadic templates on compilers known to allow it.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_VARIADIC_TEMPLATES`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_WINDOWS_OBJECT_HANDLE`]
|
||
|
[
|
||
|
Windows: object handles.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_WINDOWS_OBJECT_HANDLE`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_WINDOWS_OVERLAPPED_PTR`]
|
||
|
[
|
||
|
Windows: OVERLAPPED wrapper.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_WINDOWS_OVERLAPPED_PTR`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_WINDOWS_RANDOM_ACCESS_HANDLE`]
|
||
|
[
|
||
|
Windows: random access handles.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_WINDOWS_RANDOM_ACCESS_HANDLE`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_WINDOWS_STREAM_HANDLE`]
|
||
|
[
|
||
|
Windows: stream handles.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_WINDOWS_STREAM_HANDLE`]
|
||
|
]
|
||
|
[
|
||
|
[`BOOST_ASIO_HAS_WORKING_EXPRESSION_SFINAE`]
|
||
|
[
|
||
|
Enable workarounds for lack of working expression SFINAE.
|
||
|
]
|
||
|
[`BOOST_ASIO_DISABLE_WORKING_EXPRESSION_SFINAE`]
|
||
|
]
|
||
|
]
|