passenger 6.0.11 → 6.0.14
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG +83 -1
- data/CONTRIBUTORS +3 -0
- data/bin/passenger-install-nginx-module +1 -1
- data/bin/passenger-status +29 -4
- data/build/test_basics.rb +2 -2
- data/dev/copy_boost_headers +30 -15
- data/doc/templates/markdown.html.erb +2 -6
- data/package.json +19 -17
- data/resources/mime.types +1 -0
- data/resources/templates/error_renderer/with_details/dist/bundle.js +2 -33
- data/resources/templates/error_renderer/with_details/dist/styles.css +2 -2
- data/resources/templates/error_renderer/with_details/src/index.html.template +0 -2
- data/resources/templates/error_renderer/with_details/webpack.config.js +13 -16
- data/resources/templates/error_renderer/without_details/dist/bundle.js +0 -1
- data/resources/templates/error_renderer/without_details/dist/styles.css +1 -1
- data/resources/templates/error_renderer/without_details/webpack.config.js +13 -16
- data/resources/templates/standalone/server.erb +1 -0
- data/src/agent/Core/ApiServer.h +35 -0
- data/src/agent/Core/ApplicationPool/Group/StateInspection.cpp +1 -0
- data/src/agent/Core/ApplicationPool/Options.h +5 -0
- data/src/agent/Core/ApplicationPool/Pool.h +9 -1
- data/src/agent/Core/Config.h +2 -1
- data/src/agent/Core/Controller/CheckoutSession.cpp +24 -13
- data/src/agent/Core/Controller/Config.h +6 -2
- data/src/agent/Core/Controller/InitRequest.cpp +2 -0
- data/src/agent/Core/Controller/InternalUtils.cpp +32 -6
- data/src/agent/Core/Controller.h +4 -1
- data/src/agent/Core/OptionParser.h +4 -0
- data/src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h +7 -0
- data/src/agent/Core/SpawningKit/Config.h +13 -0
- data/src/agent/Core/SpawningKit/Handshake/Prepare.h +4 -0
- data/src/agent/Core/SpawningKit/Spawner.h +1 -0
- data/src/agent/SpawnEnvSetupper/SpawnEnvSetupperMain.cpp +4 -0
- data/src/agent/Watchdog/Config.h +2 -1
- data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp +5 -0
- data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp +5 -0
- data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp +18 -0
- data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp +3 -0
- data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp +3 -0
- data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp +11 -0
- data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp +7 -0
- data/src/apache2_module/DirConfig/AutoGeneratedStruct.h +17 -0
- data/src/apache2_module/Hooks.cpp +1 -0
- data/src/cxx_supportlib/Constants.h +1 -1
- data/src/cxx_supportlib/IOTools/IOUtils.cpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/align/align.hpp +19 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/aligned_alloc.hpp +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/alignment_of.hpp +54 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/alignment_of_forward.hpp +20 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/align_cxx11.hpp +21 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/aligned_alloc.hpp +52 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/aligned_alloc_posix.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/alignment_of.hpp +31 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/alignment_of_cxx11.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/element_type.hpp +91 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/integral_constant.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/is_alignment.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/min_size.hpp +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_allocator.hpp +53 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_cancellation_slot.hpp +179 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_executor.hpp +57 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/associator.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/async_result.hpp +789 -106
- data/src/cxx_supportlib/vendor-modified/boost/asio/awaitable.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_datagram_socket.hpp +80 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_deadline_timer.hpp +10 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_raw_socket.hpp +80 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_seq_packet_socket.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket.hpp +20 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_acceptor.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_socket.hpp +60 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_waitable_timer.hpp +10 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_cancellation_slot.hpp +723 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_executor.hpp +191 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_signal.hpp +361 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_state.hpp +237 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_type.hpp +176 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/co_spawn.hpp +30 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/connect.hpp +60 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/base_from_cancellation_state.hpp +165 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/bind_handler.hpp +209 -76
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/config.hpp +149 -60
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/deadline_timer_service.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/dev_poll_reactor.hpp +8 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/epoll_reactor.hpp +14 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/functional.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_alloc_helpers.hpp +14 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_type_requirements.hpp +21 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_work.hpp +30 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.ipp +14 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.hpp +20 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.ipp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.hpp +20 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.ipp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.ipp +19 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_executor_service.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/timer_queue_ptime.ipp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/kqueue_reactor.hpp +15 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/memory.hpp +60 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/pop_options.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/push_options.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_descriptor_service.hpp +93 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service.hpp +77 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service_base.hpp +111 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_op.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_op_queue.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/recycling_allocator.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_endpoint_op.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/select_reactor.hpp +14 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_info_base.hpp +90 -24
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue.hpp +30 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_ptime.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wait_op.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/work_dispatcher.hpp +5 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/any_executor.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bulk_execute.hpp +10 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/connect.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/execute.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/schedule.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_done.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_error.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/set_value.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/start.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/submit.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/append.hpp +73 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/as_tuple.hpp +133 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/awaitable_operators.hpp +538 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/cancellation_condition.hpp +157 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/coro.hpp +1057 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/deferred.hpp +607 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/completion_handler_erasure.hpp +160 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_promise_allocator.hpp +120 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_traits.hpp +185 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/partial_promise.hpp +181 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/append.hpp +219 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/as_single.hpp +14 -28
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/as_tuple.hpp +248 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/deferred.hpp +106 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/parallel_group.hpp +434 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/prepend.hpp +219 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/promise.hpp +100 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/parallel_group.hpp +217 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/prepend.hpp +73 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/promise.hpp +608 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_coro.hpp +284 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/awaitable.hpp +344 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_read_stream.hpp +23 -54
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_write_stream.hpp +23 -54
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/co_spawn.hpp +66 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/compose.hpp +55 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect.hpp +68 -80
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/defer.hpp +8 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/dispatch.hpp +8 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/handler_alloc_hook.ipp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/post.hpp +8 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read.hpp +98 -113
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_at.hpp +71 -82
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_until.hpp +210 -266
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/redirect_error.hpp +248 -30
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/spawn.hpp +11 -21
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_awaitable.hpp +15 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write.hpp +71 -87
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write_at.hpp +46 -68
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_context.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/detail/impl/endpoint.ipp +2 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_descriptor.hpp +10 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_stream_descriptor.hpp +23 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/prefer.hpp +21 -21
- data/src/cxx_supportlib/vendor-modified/boost/asio/query.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/read.hpp +88 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_at.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_until.hpp +132 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/require.hpp +21 -21
- data/src/cxx_supportlib/vendor-modified/boost/asio/require_concept.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/buffered_handshake_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/engine.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/handshake_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/engine.ipp +14 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/io.hpp +36 -27
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/read_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/shutdown_op.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/stream_core.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/write_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.ipp +14 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream.hpp +73 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/system_executor.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/this_coro.hpp +235 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/thread_pool.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/use_awaitable.hpp +7 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/version.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_random_access_handle.hpp +20 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_stream_handle.hpp +20 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/write.hpp +88 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/write_at.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic_ref.hpp +14 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/config.hpp +17 -13
- data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic_ref.hpp +14 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx03.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx11.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx14.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx17.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx20.hpp +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/auto_link.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/common_edg.hpp +31 -11
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/cxx_composite.hpp +20 -4
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/select_platform_config.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/suffix.hpp +81 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/bsd.hpp +5 -8
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/wasm.hpp +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/dinkumware.hpp +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcpp.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libstdcpp3.hpp +46 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/std_fwd.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/polymorphic_allocator.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/throw_exception.hpp +45 -38
- data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/ignore_unused.hpp +32 -2
- data/src/cxx_supportlib/vendor-modified/boost/core/uncaught_exceptions.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/date_time/compiler_config.hpp +0 -24
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/time_parsers.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/any_hook.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avl_set.hpp +83 -83
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree.hpp +43 -43
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree_algorithms.hpp +31 -31
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bs_set.hpp +85 -85
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree.hpp +68 -68
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree_algorithms.hpp +72 -62
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_list_algorithms.hpp +19 -20
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_slist_algorithms.hpp +19 -19
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/derivation_value_traits.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/any_node_and_algorithms.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/bstree_algorithms_base.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/common_slist_algorithms.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/config_begin.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/generic_hook.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash_combine.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hashtable_node.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/math.hpp +2 -50
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/node_cloner_disposer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +71 -70
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/linear_slist_algorithms.hpp +15 -14
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +84 -82
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/list_hook.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/member_value_traits.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/parent_from_member.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_plus_bits.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_traits.hpp +18 -18
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree.hpp +43 -43
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree_algorithms.hpp +26 -26
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/set.hpp +85 -85
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/set_hook.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sg_set.hpp +93 -93
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree.hpp +51 -51
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree_algorithms.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +104 -104
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist_hook.hpp +8 -6
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splay_set.hpp +91 -91
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree.hpp +46 -46
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree_algorithms.hpp +31 -31
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap.hpp +51 -51
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_algorithms.hpp +18 -18
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_set.hpp +97 -97
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/trivial_value_traits.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set.hpp +63 -63
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set_hook.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/config_begin.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/iterator_traits.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/nsec_clock.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/operators.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/concepts.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_parser.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/unicode_iterator.hpp +112 -31
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/basic_regex_parser.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/mem_block_cache.hpp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/unicode_iterator.hpp +0 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/w32_regex_traits.hpp +6 -2
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/shared_count.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_impl.hpp +22 -2
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_ptr.hpp +59 -1
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/config.hpp +9 -11
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category.hpp +27 -21
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category_impl.hpp +34 -3
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_code.hpp +378 -36
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_condition.hpp +97 -21
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/interop_category.hpp +107 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/is_same.hpp +33 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/snprintf.hpp +70 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/{to_std_category.hpp → std_category.hpp} +5 -55
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category_impl.hpp +2 -12
- data/src/cxx_supportlib/vendor-modified/boost/system/error_code.hpp +0 -33
- data/src/cxx_supportlib/vendor-modified/boost/utility/detail/result_of_variadic.hpp +190 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/result_of.hpp +20 -9
- data/src/cxx_supportlib/vendor-modified/boost/utility/string_view.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
- data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c +16 -0
- data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c +12 -0
- data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c +24 -0
- data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c +10 -0
- data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c +39 -0
- data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c +26 -0
- data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c +6 -0
- data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h +8 -0
- data/src/nginx_module/ngx_http_passenger_module.c +1 -0
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/common.js +50 -29
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/config/cli-config.js +20 -20
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/config/npm-config.js +11 -11
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/config/syslog-config.js +3 -3
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/config.js +8 -2
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/container.js +2 -1
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/logger.js +174 -146
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/transports/console.js +4 -2
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/transports/file.js +15 -5
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/transports/http.js +14 -4
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/transports.js +26 -24
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston.js +5 -5
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/async/package.json +4 -13
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/colors/package.json +19 -33
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/cycle/package.json +11 -29
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/eyes/package.json +12 -40
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/isstream/package.json +3 -12
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/stack-trace/lib/stack-trace.js +49 -24
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/stack-trace/package.json +4 -16
- data/src/nodejs_supportlib/vendor-copy/winston/package.json +11 -55
- data/src/ruby_supportlib/phusion_passenger/admin_tools/instance_registry.rb +3 -2
- data/src/ruby_supportlib/phusion_passenger/apache2/config_options.rb +6 -0
- data/src/ruby_supportlib/phusion_passenger/config/restart_app_command.rb +16 -12
- data/src/ruby_supportlib/phusion_passenger/console_text_template.rb +7 -2
- data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +8 -1
- data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +12 -0
- data/src/ruby_supportlib/phusion_passenger/packaging.rb +2 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/linux.rb +2 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/openssl.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/operating_system.rb +8 -0
- data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +18 -18
- data/src/ruby_supportlib/phusion_passenger/request_handler.rb +4 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/config_options_list.rb +7 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +1 -0
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/nginx_engine.rb +28 -17
- data/src/ruby_supportlib/phusion_passenger.rb +5 -5
- metadata +49 -9
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/is_generic_value.hpp +0 -125
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/transports/daily-rotate-file.js +0 -601
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/transports/webhook.js +0 -146
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/pkginfo/LICENSE +0 -19
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/pkginfo/lib/pkginfo.js +0 -136
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/pkginfo/package.json +0 -56
@@ -148,22 +148,22 @@ class list_impl
|
|
148
148
|
root_plus_size root_plus_size_;
|
149
149
|
} data_;
|
150
150
|
|
151
|
-
size_traits &priv_size_traits()
|
151
|
+
BOOST_INTRUSIVE_FORCEINLINE size_traits &priv_size_traits() BOOST_NOEXCEPT
|
152
152
|
{ return data_.root_plus_size_; }
|
153
153
|
|
154
|
-
const size_traits &priv_size_traits() const
|
154
|
+
BOOST_INTRUSIVE_FORCEINLINE const size_traits &priv_size_traits() const BOOST_NOEXCEPT
|
155
155
|
{ return data_.root_plus_size_; }
|
156
156
|
|
157
|
-
const value_traits &priv_value_traits() const
|
157
|
+
BOOST_INTRUSIVE_FORCEINLINE const value_traits &priv_value_traits() const BOOST_NOEXCEPT
|
158
158
|
{ return data_; }
|
159
159
|
|
160
|
-
value_traits &priv_value_traits()
|
160
|
+
BOOST_INTRUSIVE_FORCEINLINE value_traits &priv_value_traits() BOOST_NOEXCEPT
|
161
161
|
{ return data_; }
|
162
162
|
|
163
163
|
typedef typename boost::intrusive::value_traits_pointers
|
164
164
|
<ValueTraits>::const_value_traits_ptr const_value_traits_ptr;
|
165
165
|
|
166
|
-
const_value_traits_ptr priv_value_traits_ptr() const
|
166
|
+
BOOST_INTRUSIVE_FORCEINLINE const_value_traits_ptr priv_value_traits_ptr() const BOOST_NOEXCEPT
|
167
167
|
{ return pointer_traits<const_value_traits_ptr>::pointer_to(this->priv_value_traits()); }
|
168
168
|
|
169
169
|
/// @endcond
|
@@ -245,11 +245,13 @@ class list_impl
|
|
245
245
|
//! are called), but the hooks according to the ValueTraits template parameter
|
246
246
|
//! are set to their default value.
|
247
247
|
//!
|
248
|
+
//! <b>Throws</b>: Nothing.
|
249
|
+
//!
|
248
250
|
//! <b>Complexity</b>: Linear to the number of elements in the list, if
|
249
251
|
//! it's a safe-mode or auto-unlink value . Otherwise constant.
|
250
252
|
~list_impl()
|
251
253
|
{
|
252
|
-
|
254
|
+
BOOST_IF_CONSTEXPR(is_safe_autounlink<ValueTraits::link_mode>::value){
|
253
255
|
this->clear();
|
254
256
|
node_algorithms::init(this->get_root_node());
|
255
257
|
}
|
@@ -265,7 +267,7 @@ class list_impl
|
|
265
267
|
//! <b>Complexity</b>: Constant.
|
266
268
|
//!
|
267
269
|
//! <b>Note</b>: Does not affect the validity of iterators and references.
|
268
|
-
void push_back(reference value)
|
270
|
+
void push_back(reference value) BOOST_NOEXCEPT
|
269
271
|
{
|
270
272
|
node_ptr to_insert = priv_value_traits().to_node_ptr(value);
|
271
273
|
BOOST_INTRUSIVE_SAFE_HOOK_DEFAULT_ASSERT(!safemode_or_autounlink || node_algorithms::inited(to_insert));
|
@@ -283,7 +285,7 @@ class list_impl
|
|
283
285
|
//! <b>Complexity</b>: Constant.
|
284
286
|
//!
|
285
287
|
//! <b>Note</b>: Does not affect the validity of iterators and references.
|
286
|
-
void push_front(reference value)
|
288
|
+
void push_front(reference value) BOOST_NOEXCEPT
|
287
289
|
{
|
288
290
|
node_ptr to_insert = priv_value_traits().to_node_ptr(value);
|
289
291
|
BOOST_INTRUSIVE_SAFE_HOOK_DEFAULT_ASSERT(!safemode_or_autounlink || node_algorithms::inited(to_insert));
|
@@ -299,7 +301,7 @@ class list_impl
|
|
299
301
|
//! <b>Complexity</b>: Constant.
|
300
302
|
//!
|
301
303
|
//! <b>Note</b>: Invalidates the iterators (but not the references) to the erased element.
|
302
|
-
void pop_back()
|
304
|
+
void pop_back() BOOST_NOEXCEPT
|
303
305
|
{ return this->pop_back_and_dispose(detail::null_disposer()); }
|
304
306
|
|
305
307
|
//! <b>Requires</b>: Disposer::operator()(pointer) shouldn't throw.
|
@@ -314,12 +316,12 @@ class list_impl
|
|
314
316
|
//!
|
315
317
|
//! <b>Note</b>: Invalidates the iterators to the erased element.
|
316
318
|
template<class Disposer>
|
317
|
-
void pop_back_and_dispose(Disposer disposer)
|
319
|
+
void pop_back_and_dispose(Disposer disposer) BOOST_NOEXCEPT
|
318
320
|
{
|
319
321
|
node_ptr to_erase = node_traits::get_previous(this->get_root_node());
|
320
322
|
node_algorithms::unlink(to_erase);
|
321
323
|
this->priv_size_traits().decrement();
|
322
|
-
|
324
|
+
BOOST_IF_CONSTEXPR(safemode_or_autounlink)
|
323
325
|
node_algorithms::init(to_erase);
|
324
326
|
disposer(priv_value_traits().to_value_ptr(to_erase));
|
325
327
|
}
|
@@ -332,7 +334,7 @@ class list_impl
|
|
332
334
|
//! <b>Complexity</b>: Constant.
|
333
335
|
//!
|
334
336
|
//! <b>Note</b>: Invalidates the iterators (but not the references) to the erased element.
|
335
|
-
void pop_front()
|
337
|
+
void pop_front() BOOST_NOEXCEPT
|
336
338
|
{ return this->pop_front_and_dispose(detail::null_disposer()); }
|
337
339
|
|
338
340
|
//! <b>Requires</b>: Disposer::operator()(pointer) shouldn't throw.
|
@@ -347,12 +349,12 @@ class list_impl
|
|
347
349
|
//!
|
348
350
|
//! <b>Note</b>: Invalidates the iterators to the erased element.
|
349
351
|
template<class Disposer>
|
350
|
-
void pop_front_and_dispose(Disposer disposer)
|
352
|
+
void pop_front_and_dispose(Disposer disposer) BOOST_NOEXCEPT
|
351
353
|
{
|
352
354
|
node_ptr to_erase = node_traits::get_next(this->get_root_node());
|
353
355
|
node_algorithms::unlink(to_erase);
|
354
356
|
this->priv_size_traits().decrement();
|
355
|
-
|
357
|
+
BOOST_IF_CONSTEXPR(safemode_or_autounlink)
|
356
358
|
node_algorithms::init(to_erase);
|
357
359
|
disposer(priv_value_traits().to_value_ptr(to_erase));
|
358
360
|
}
|
@@ -362,7 +364,7 @@ class list_impl
|
|
362
364
|
//! <b>Throws</b>: Nothing.
|
363
365
|
//!
|
364
366
|
//! <b>Complexity</b>: Constant.
|
365
|
-
reference front()
|
367
|
+
BOOST_INTRUSIVE_FORCEINLINE reference front() BOOST_NOEXCEPT
|
366
368
|
{ return *priv_value_traits().to_value_ptr(node_traits::get_next(this->get_root_node())); }
|
367
369
|
|
368
370
|
//! <b>Effects</b>: Returns a const_reference to the first element of the list.
|
@@ -370,7 +372,7 @@ class list_impl
|
|
370
372
|
//! <b>Throws</b>: Nothing.
|
371
373
|
//!
|
372
374
|
//! <b>Complexity</b>: Constant.
|
373
|
-
const_reference front() const
|
375
|
+
BOOST_INTRUSIVE_FORCEINLINE const_reference front() const BOOST_NOEXCEPT
|
374
376
|
{ return *priv_value_traits().to_value_ptr(node_traits::get_next(this->get_root_node())); }
|
375
377
|
|
376
378
|
//! <b>Effects</b>: Returns a reference to the last element of the list.
|
@@ -378,7 +380,7 @@ class list_impl
|
|
378
380
|
//! <b>Throws</b>: Nothing.
|
379
381
|
//!
|
380
382
|
//! <b>Complexity</b>: Constant.
|
381
|
-
reference back()
|
383
|
+
BOOST_INTRUSIVE_FORCEINLINE reference back() BOOST_NOEXCEPT
|
382
384
|
{ return *priv_value_traits().to_value_ptr(node_traits::get_previous(this->get_root_node())); }
|
383
385
|
|
384
386
|
//! <b>Effects</b>: Returns a const_reference to the last element of the list.
|
@@ -386,7 +388,7 @@ class list_impl
|
|
386
388
|
//! <b>Throws</b>: Nothing.
|
387
389
|
//!
|
388
390
|
//! <b>Complexity</b>: Constant.
|
389
|
-
const_reference back() const
|
391
|
+
BOOST_INTRUSIVE_FORCEINLINE const_reference back() const BOOST_NOEXCEPT
|
390
392
|
{ return *priv_value_traits().to_value_ptr(detail::uncast(node_traits::get_previous(this->get_root_node()))); }
|
391
393
|
|
392
394
|
//! <b>Effects</b>: Returns an iterator to the first element contained in the list.
|
@@ -394,7 +396,7 @@ class list_impl
|
|
394
396
|
//! <b>Throws</b>: Nothing.
|
395
397
|
//!
|
396
398
|
//! <b>Complexity</b>: Constant.
|
397
|
-
iterator begin()
|
399
|
+
BOOST_INTRUSIVE_FORCEINLINE iterator begin() BOOST_NOEXCEPT
|
398
400
|
{ return iterator(node_traits::get_next(this->get_root_node()), this->priv_value_traits_ptr()); }
|
399
401
|
|
400
402
|
//! <b>Effects</b>: Returns a const_iterator to the first element contained in the list.
|
@@ -402,7 +404,7 @@ class list_impl
|
|
402
404
|
//! <b>Throws</b>: Nothing.
|
403
405
|
//!
|
404
406
|
//! <b>Complexity</b>: Constant.
|
405
|
-
const_iterator begin() const
|
407
|
+
BOOST_INTRUSIVE_FORCEINLINE const_iterator begin() const BOOST_NOEXCEPT
|
406
408
|
{ return this->cbegin(); }
|
407
409
|
|
408
410
|
//! <b>Effects</b>: Returns a const_iterator to the first element contained in the list.
|
@@ -410,7 +412,7 @@ class list_impl
|
|
410
412
|
//! <b>Throws</b>: Nothing.
|
411
413
|
//!
|
412
414
|
//! <b>Complexity</b>: Constant.
|
413
|
-
const_iterator cbegin() const
|
415
|
+
BOOST_INTRUSIVE_FORCEINLINE const_iterator cbegin() const BOOST_NOEXCEPT
|
414
416
|
{ return const_iterator(node_traits::get_next(this->get_root_node()), this->priv_value_traits_ptr()); }
|
415
417
|
|
416
418
|
//! <b>Effects</b>: Returns an iterator to the end of the list.
|
@@ -418,7 +420,7 @@ class list_impl
|
|
418
420
|
//! <b>Throws</b>: Nothing.
|
419
421
|
//!
|
420
422
|
//! <b>Complexity</b>: Constant.
|
421
|
-
iterator end()
|
423
|
+
BOOST_INTRUSIVE_FORCEINLINE iterator end() BOOST_NOEXCEPT
|
422
424
|
{ return iterator(this->get_root_node(), this->priv_value_traits_ptr()); }
|
423
425
|
|
424
426
|
//! <b>Effects</b>: Returns a const_iterator to the end of the list.
|
@@ -426,7 +428,7 @@ class list_impl
|
|
426
428
|
//! <b>Throws</b>: Nothing.
|
427
429
|
//!
|
428
430
|
//! <b>Complexity</b>: Constant.
|
429
|
-
const_iterator end() const
|
431
|
+
BOOST_INTRUSIVE_FORCEINLINE const_iterator end() const BOOST_NOEXCEPT
|
430
432
|
{ return this->cend(); }
|
431
433
|
|
432
434
|
//! <b>Effects</b>: Returns a constant iterator to the end of the list.
|
@@ -434,7 +436,7 @@ class list_impl
|
|
434
436
|
//! <b>Throws</b>: Nothing.
|
435
437
|
//!
|
436
438
|
//! <b>Complexity</b>: Constant.
|
437
|
-
const_iterator cend() const
|
439
|
+
BOOST_INTRUSIVE_FORCEINLINE const_iterator cend() const BOOST_NOEXCEPT
|
438
440
|
{ return const_iterator(detail::uncast(this->get_root_node()), this->priv_value_traits_ptr()); }
|
439
441
|
|
440
442
|
//! <b>Effects</b>: Returns a reverse_iterator pointing to the beginning
|
@@ -443,7 +445,7 @@ class list_impl
|
|
443
445
|
//! <b>Throws</b>: Nothing.
|
444
446
|
//!
|
445
447
|
//! <b>Complexity</b>: Constant.
|
446
|
-
reverse_iterator rbegin()
|
448
|
+
BOOST_INTRUSIVE_FORCEINLINE reverse_iterator rbegin() BOOST_NOEXCEPT
|
447
449
|
{ return reverse_iterator(this->end()); }
|
448
450
|
|
449
451
|
//! <b>Effects</b>: Returns a const_reverse_iterator pointing to the beginning
|
@@ -452,7 +454,7 @@ class list_impl
|
|
452
454
|
//! <b>Throws</b>: Nothing.
|
453
455
|
//!
|
454
456
|
//! <b>Complexity</b>: Constant.
|
455
|
-
const_reverse_iterator rbegin() const
|
457
|
+
BOOST_INTRUSIVE_FORCEINLINE const_reverse_iterator rbegin() const BOOST_NOEXCEPT
|
456
458
|
{ return this->crbegin(); }
|
457
459
|
|
458
460
|
//! <b>Effects</b>: Returns a const_reverse_iterator pointing to the beginning
|
@@ -461,7 +463,7 @@ class list_impl
|
|
461
463
|
//! <b>Throws</b>: Nothing.
|
462
464
|
//!
|
463
465
|
//! <b>Complexity</b>: Constant.
|
464
|
-
const_reverse_iterator crbegin() const
|
466
|
+
BOOST_INTRUSIVE_FORCEINLINE const_reverse_iterator crbegin() const BOOST_NOEXCEPT
|
465
467
|
{ return const_reverse_iterator(end()); }
|
466
468
|
|
467
469
|
//! <b>Effects</b>: Returns a reverse_iterator pointing to the end
|
@@ -470,7 +472,7 @@ class list_impl
|
|
470
472
|
//! <b>Throws</b>: Nothing.
|
471
473
|
//!
|
472
474
|
//! <b>Complexity</b>: Constant.
|
473
|
-
reverse_iterator rend()
|
475
|
+
BOOST_INTRUSIVE_FORCEINLINE reverse_iterator rend() BOOST_NOEXCEPT
|
474
476
|
{ return reverse_iterator(begin()); }
|
475
477
|
|
476
478
|
//! <b>Effects</b>: Returns a const_reverse_iterator pointing to the end
|
@@ -479,7 +481,7 @@ class list_impl
|
|
479
481
|
//! <b>Throws</b>: Nothing.
|
480
482
|
//!
|
481
483
|
//! <b>Complexity</b>: Constant.
|
482
|
-
const_reverse_iterator rend() const
|
484
|
+
BOOST_INTRUSIVE_FORCEINLINE const_reverse_iterator rend() const BOOST_NOEXCEPT
|
483
485
|
{ return this->crend(); }
|
484
486
|
|
485
487
|
//! <b>Effects</b>: Returns a const_reverse_iterator pointing to the end
|
@@ -488,7 +490,7 @@ class list_impl
|
|
488
490
|
//! <b>Throws</b>: Nothing.
|
489
491
|
//!
|
490
492
|
//! <b>Complexity</b>: Constant.
|
491
|
-
const_reverse_iterator crend() const
|
493
|
+
BOOST_INTRUSIVE_FORCEINLINE const_reverse_iterator crend() const BOOST_NOEXCEPT
|
492
494
|
{ return const_reverse_iterator(this->begin()); }
|
493
495
|
|
494
496
|
//! <b>Precondition</b>: end_iterator must be a valid end iterator
|
@@ -499,7 +501,7 @@ class list_impl
|
|
499
501
|
//! <b>Throws</b>: Nothing.
|
500
502
|
//!
|
501
503
|
//! <b>Complexity</b>: Constant.
|
502
|
-
static list_impl &container_from_end_iterator(iterator end_iterator)
|
504
|
+
BOOST_INTRUSIVE_FORCEINLINE static list_impl &container_from_end_iterator(iterator end_iterator) BOOST_NOEXCEPT
|
503
505
|
{ return list_impl::priv_container_from_end_iterator(end_iterator); }
|
504
506
|
|
505
507
|
//! <b>Precondition</b>: end_iterator must be a valid end const_iterator
|
@@ -510,7 +512,7 @@ class list_impl
|
|
510
512
|
//! <b>Throws</b>: Nothing.
|
511
513
|
//!
|
512
514
|
//! <b>Complexity</b>: Constant.
|
513
|
-
static const list_impl &container_from_end_iterator(const_iterator end_iterator)
|
515
|
+
BOOST_INTRUSIVE_FORCEINLINE static const list_impl &container_from_end_iterator(const_iterator end_iterator) BOOST_NOEXCEPT
|
514
516
|
{ return list_impl::priv_container_from_end_iterator(end_iterator); }
|
515
517
|
|
516
518
|
//! <b>Effects</b>: Returns the number of the elements contained in the list.
|
@@ -521,9 +523,9 @@ class list_impl
|
|
521
523
|
//! if constant-time size option is disabled. Constant time otherwise.
|
522
524
|
//!
|
523
525
|
//! <b>Note</b>: Does not affect the validity of iterators and references.
|
524
|
-
size_type size() const
|
526
|
+
BOOST_INTRUSIVE_FORCEINLINE size_type size() const BOOST_NOEXCEPT
|
525
527
|
{
|
526
|
-
|
528
|
+
BOOST_IF_CONSTEXPR(constant_time_size)
|
527
529
|
return this->priv_size_traits().get_size();
|
528
530
|
else
|
529
531
|
return node_algorithms::count(this->get_root_node()) - 1;
|
@@ -536,7 +538,7 @@ class list_impl
|
|
536
538
|
//! <b>Complexity</b>: Constant.
|
537
539
|
//!
|
538
540
|
//! <b>Note</b>: Does not affect the validity of iterators and references.
|
539
|
-
bool empty() const
|
541
|
+
BOOST_INTRUSIVE_FORCEINLINE bool empty() const BOOST_NOEXCEPT
|
540
542
|
{ return node_algorithms::unique(this->get_root_node()); }
|
541
543
|
|
542
544
|
//! <b>Effects</b>: Swaps the elements of x and *this.
|
@@ -546,7 +548,7 @@ class list_impl
|
|
546
548
|
//! <b>Complexity</b>: Constant.
|
547
549
|
//!
|
548
550
|
//! <b>Note</b>: Does not affect the validity of iterators and references.
|
549
|
-
void swap(list_impl& other)
|
551
|
+
BOOST_INTRUSIVE_FORCEINLINE void swap(list_impl& other) BOOST_NOEXCEPT
|
550
552
|
{
|
551
553
|
node_algorithms::swap_nodes(this->get_root_node(), other.get_root_node());
|
552
554
|
this->priv_size_traits().swap(other.priv_size_traits());
|
@@ -561,7 +563,7 @@ class list_impl
|
|
561
563
|
//! <b>Complexity</b>: Linear to the number of shifts.
|
562
564
|
//!
|
563
565
|
//! <b>Note</b>: Does not affect the validity of iterators and references.
|
564
|
-
void shift_backwards(size_type n = 1)
|
566
|
+
BOOST_INTRUSIVE_FORCEINLINE void shift_backwards(size_type n = 1) BOOST_NOEXCEPT
|
565
567
|
{ node_algorithms::move_forward(this->get_root_node(), n); }
|
566
568
|
|
567
569
|
//! <b>Effects</b>: Moves forward all the elements, so that the second
|
@@ -573,7 +575,7 @@ class list_impl
|
|
573
575
|
//! <b>Complexity</b>: Linear to the number of shifts.
|
574
576
|
//!
|
575
577
|
//! <b>Note</b>: Does not affect the validity of iterators and references.
|
576
|
-
void shift_forward(size_type n = 1)
|
578
|
+
BOOST_INTRUSIVE_FORCEINLINE void shift_forward(size_type n = 1) BOOST_NOEXCEPT
|
577
579
|
{ node_algorithms::move_backwards(this->get_root_node(), n); }
|
578
580
|
|
579
581
|
//! <b>Effects</b>: Erases the element pointed by i of the list.
|
@@ -588,7 +590,7 @@ class list_impl
|
|
588
590
|
//!
|
589
591
|
//! <b>Note</b>: Invalidates the iterators (but not the references) to the
|
590
592
|
//! erased element.
|
591
|
-
iterator erase(const_iterator i)
|
593
|
+
BOOST_INTRUSIVE_FORCEINLINE iterator erase(const_iterator i) BOOST_NOEXCEPT
|
592
594
|
{ return this->erase_and_dispose(i, detail::null_disposer()); }
|
593
595
|
|
594
596
|
//! <b>Requires</b>: b and e must be valid iterators to elements in *this.
|
@@ -606,9 +608,9 @@ class list_impl
|
|
606
608
|
//!
|
607
609
|
//! <b>Note</b>: Invalidates the iterators (but not the references) to the
|
608
610
|
//! erased elements.
|
609
|
-
iterator erase(const_iterator b, const_iterator e)
|
611
|
+
BOOST_INTRUSIVE_FORCEINLINE iterator erase(const_iterator b, const_iterator e) BOOST_NOEXCEPT
|
610
612
|
{
|
611
|
-
|
613
|
+
BOOST_IF_CONSTEXPR(safemode_or_autounlink || constant_time_size){
|
612
614
|
return this->erase_and_dispose(b, e, detail::null_disposer());
|
613
615
|
}
|
614
616
|
else{
|
@@ -633,14 +635,14 @@ class list_impl
|
|
633
635
|
//!
|
634
636
|
//! <b>Note</b>: Invalidates the iterators (but not the references) to the
|
635
637
|
//! erased elements.
|
636
|
-
iterator erase(const_iterator b, const_iterator e, size_type n)
|
638
|
+
iterator erase(const_iterator b, const_iterator e, size_type n) BOOST_NOEXCEPT
|
637
639
|
{
|
638
640
|
BOOST_INTRUSIVE_INVARIANT_ASSERT(node_algorithms::distance(b.pointed_node(), e.pointed_node()) == n);
|
639
|
-
|
641
|
+
BOOST_IF_CONSTEXPR(safemode_or_autounlink || constant_time_size){
|
640
642
|
return this->erase_and_dispose(b, e, detail::null_disposer());
|
641
643
|
}
|
642
644
|
else{
|
643
|
-
|
645
|
+
BOOST_IF_CONSTEXPR(constant_time_size){
|
644
646
|
this->priv_size_traits().decrease(n);
|
645
647
|
}
|
646
648
|
node_algorithms::unlink(b.pointed_node(), e.pointed_node());
|
@@ -663,13 +665,13 @@ class list_impl
|
|
663
665
|
//!
|
664
666
|
//! <b>Note</b>: Invalidates the iterators to the erased element.
|
665
667
|
template <class Disposer>
|
666
|
-
iterator erase_and_dispose(const_iterator i, Disposer disposer)
|
668
|
+
iterator erase_and_dispose(const_iterator i, Disposer disposer) BOOST_NOEXCEPT
|
667
669
|
{
|
668
670
|
node_ptr to_erase(i.pointed_node());
|
669
671
|
++i;
|
670
672
|
node_algorithms::unlink(to_erase);
|
671
673
|
this->priv_size_traits().decrement();
|
672
|
-
|
674
|
+
BOOST_IF_CONSTEXPR(safemode_or_autounlink)
|
673
675
|
node_algorithms::init(to_erase);
|
674
676
|
disposer(this->priv_value_traits().to_value_ptr(to_erase));
|
675
677
|
return i.unconst();
|
@@ -677,7 +679,7 @@ class list_impl
|
|
677
679
|
|
678
680
|
#if !defined(BOOST_INTRUSIVE_DOXYGEN_INVOKED)
|
679
681
|
template<class Disposer>
|
680
|
-
iterator erase_and_dispose(iterator i, Disposer disposer)
|
682
|
+
iterator erase_and_dispose(iterator i, Disposer disposer) BOOST_NOEXCEPT
|
681
683
|
{ return this->erase_and_dispose(const_iterator(i), disposer); }
|
682
684
|
#endif
|
683
685
|
|
@@ -696,14 +698,14 @@ class list_impl
|
|
696
698
|
//!
|
697
699
|
//! <b>Note</b>: Invalidates the iterators to the erased elements.
|
698
700
|
template <class Disposer>
|
699
|
-
iterator erase_and_dispose(const_iterator b, const_iterator e, Disposer disposer)
|
701
|
+
iterator erase_and_dispose(const_iterator b, const_iterator e, Disposer disposer) BOOST_NOEXCEPT
|
700
702
|
{
|
701
703
|
node_ptr bp(b.pointed_node()), ep(e.pointed_node());
|
702
704
|
node_algorithms::unlink(bp, ep);
|
703
705
|
while(bp != ep){
|
704
706
|
node_ptr to_erase(bp);
|
705
707
|
bp = node_traits::get_next(bp);
|
706
|
-
|
708
|
+
BOOST_IF_CONSTEXPR(safemode_or_autounlink)
|
707
709
|
node_algorithms::init(to_erase);
|
708
710
|
disposer(priv_value_traits().to_value_ptr(to_erase));
|
709
711
|
this->priv_size_traits().decrement();
|
@@ -720,9 +722,9 @@ class list_impl
|
|
720
722
|
//! if it's a safe-mode or auto-unlink value_type. Constant time otherwise.
|
721
723
|
//!
|
722
724
|
//! <b>Note</b>: Invalidates the iterators (but not the references) to the erased elements.
|
723
|
-
void clear()
|
725
|
+
void clear() BOOST_NOEXCEPT
|
724
726
|
{
|
725
|
-
|
727
|
+
BOOST_IF_CONSTEXPR(safemode_or_autounlink){
|
726
728
|
this->clear_and_dispose(detail::null_disposer());
|
727
729
|
}
|
728
730
|
else{
|
@@ -743,13 +745,13 @@ class list_impl
|
|
743
745
|
//!
|
744
746
|
//! <b>Note</b>: Invalidates the iterators to the erased elements.
|
745
747
|
template <class Disposer>
|
746
|
-
void clear_and_dispose(Disposer disposer)
|
748
|
+
void clear_and_dispose(Disposer disposer) BOOST_NOEXCEPT
|
747
749
|
{
|
748
750
|
const_iterator it(this->begin()), itend(this->end());
|
749
751
|
while(it != itend){
|
750
752
|
node_ptr to_erase(it.pointed_node());
|
751
753
|
++it;
|
752
|
-
|
754
|
+
BOOST_IF_CONSTEXPR(safemode_or_autounlink)
|
753
755
|
node_algorithms::init(to_erase);
|
754
756
|
disposer(priv_value_traits().to_value_ptr(to_erase));
|
755
757
|
}
|
@@ -822,7 +824,7 @@ class list_impl
|
|
822
824
|
//! <b>Complexity</b>: Constant time. No copy constructors are called.
|
823
825
|
//!
|
824
826
|
//! <b>Note</b>: Does not affect the validity of iterators and references.
|
825
|
-
iterator insert(const_iterator p, reference value)
|
827
|
+
iterator insert(const_iterator p, reference value) BOOST_NOEXCEPT
|
826
828
|
{
|
827
829
|
node_ptr to_insert = this->priv_value_traits().to_node_ptr(value);
|
828
830
|
BOOST_INTRUSIVE_SAFE_HOOK_DEFAULT_ASSERT(!safemode_or_autounlink || node_algorithms::inited(to_insert));
|
@@ -843,7 +845,7 @@ class list_impl
|
|
843
845
|
//!
|
844
846
|
//! <b>Note</b>: Does not affect the validity of iterators and references.
|
845
847
|
template<class Iterator>
|
846
|
-
void insert(const_iterator p, Iterator b, Iterator e)
|
848
|
+
void insert(const_iterator p, Iterator b, Iterator e) BOOST_NOEXCEPT
|
847
849
|
{
|
848
850
|
for (; b != e; ++b)
|
849
851
|
this->insert(p, *b);
|
@@ -865,7 +867,7 @@ class list_impl
|
|
865
867
|
//! <b>Note</b>: Invalidates the iterators (but not the references)
|
866
868
|
//! to the erased elements.
|
867
869
|
template<class Iterator>
|
868
|
-
void assign(Iterator b, Iterator e)
|
870
|
+
void assign(Iterator b, Iterator e) BOOST_NOEXCEPT
|
869
871
|
{
|
870
872
|
this->clear();
|
871
873
|
this->insert(this->cend(), b, e);
|
@@ -888,7 +890,7 @@ class list_impl
|
|
888
890
|
//! <b>Note</b>: Invalidates the iterators (but not the references)
|
889
891
|
//! to the erased elements.
|
890
892
|
template<class Iterator, class Disposer>
|
891
|
-
void dispose_and_assign(Disposer disposer, Iterator b, Iterator e)
|
893
|
+
void dispose_and_assign(Disposer disposer, Iterator b, Iterator e) BOOST_NOEXCEPT
|
892
894
|
{
|
893
895
|
this->clear_and_dispose(disposer);
|
894
896
|
this->insert(this->cend(), b, e);
|
@@ -905,7 +907,7 @@ class list_impl
|
|
905
907
|
//!
|
906
908
|
//! <b>Note</b>: Iterators of values obtained from list x now point to elements of
|
907
909
|
//! this list. Iterators of this list and all the references are not invalidated.
|
908
|
-
void splice(const_iterator p, list_impl& x)
|
910
|
+
void splice(const_iterator p, list_impl& x) BOOST_NOEXCEPT
|
909
911
|
{
|
910
912
|
if(!x.empty()){
|
911
913
|
node_algorithms::transfer
|
@@ -930,7 +932,7 @@ class list_impl
|
|
930
932
|
//!
|
931
933
|
//! <b>Note</b>: Iterators of values obtained from list x now point to elements of this
|
932
934
|
//! list. Iterators of this list and all the references are not invalidated.
|
933
|
-
void splice(const_iterator p, list_impl&x, const_iterator new_ele)
|
935
|
+
void splice(const_iterator p, list_impl&x, const_iterator new_ele) BOOST_NOEXCEPT
|
934
936
|
{
|
935
937
|
node_algorithms::transfer(p.pointed_node(), new_ele.pointed_node());
|
936
938
|
x.priv_size_traits().decrement();
|
@@ -950,9 +952,9 @@ class list_impl
|
|
950
952
|
//!
|
951
953
|
//! <b>Note</b>: Iterators of values obtained from list x now point to elements of this
|
952
954
|
//! list. Iterators of this list and all the references are not invalidated.
|
953
|
-
void splice(const_iterator p, list_impl&x, const_iterator f, const_iterator e)
|
955
|
+
void splice(const_iterator p, list_impl&x, const_iterator f, const_iterator e) BOOST_NOEXCEPT
|
954
956
|
{
|
955
|
-
|
957
|
+
BOOST_IF_CONSTEXPR(constant_time_size)
|
956
958
|
this->splice(p, x, f, e, node_algorithms::distance(f.pointed_node(), e.pointed_node()));
|
957
959
|
else
|
958
960
|
this->splice(p, x, f, e, 1);//intrusive::iterator_distance is a dummy value
|
@@ -971,10 +973,10 @@ class list_impl
|
|
971
973
|
//!
|
972
974
|
//! <b>Note</b>: Iterators of values obtained from list x now point to elements of this
|
973
975
|
//! list. Iterators of this list and all the references are not invalidated.
|
974
|
-
void splice(const_iterator p, list_impl&x, const_iterator f, const_iterator e, size_type n)
|
976
|
+
void splice(const_iterator p, list_impl&x, const_iterator f, const_iterator e, size_type n) BOOST_NOEXCEPT
|
975
977
|
{
|
976
978
|
if(n){
|
977
|
-
|
979
|
+
BOOST_IF_CONSTEXPR(constant_time_size){
|
978
980
|
BOOST_INTRUSIVE_INVARIANT_ASSERT(n == node_algorithms::distance(f.pointed_node(), e.pointed_node()));
|
979
981
|
node_algorithms::transfer(p.pointed_node(), f.pointed_node(), e.pointed_node());
|
980
982
|
size_traits &thist = this->priv_size_traits();
|
@@ -1102,7 +1104,7 @@ class list_impl
|
|
1102
1104
|
//! <b>Complexity</b>: This function is linear time.
|
1103
1105
|
//!
|
1104
1106
|
//! <b>Note</b>: Iterators and references are not invalidated
|
1105
|
-
void reverse()
|
1107
|
+
void reverse() BOOST_NOEXCEPT
|
1106
1108
|
{ node_algorithms::reverse(this->get_root_node()); }
|
1107
1109
|
|
1108
1110
|
//! <b>Effects</b>: Removes all the elements that compare equal to value.
|
@@ -1114,7 +1116,7 @@ class list_impl
|
|
1114
1116
|
//!
|
1115
1117
|
//! <b>Note</b>: The relative order of elements that are not removed is unchanged,
|
1116
1118
|
//! and iterators to elements that are not removed remain valid.
|
1117
|
-
void remove(const_reference value)
|
1119
|
+
void remove(const_reference value) BOOST_NOEXCEPT
|
1118
1120
|
{ this->remove_if(value_equal<const_reference>(value)); }
|
1119
1121
|
|
1120
1122
|
//! <b>Requires</b>: Disposer::operator()(pointer) shouldn't throw.
|
@@ -1129,7 +1131,7 @@ class list_impl
|
|
1129
1131
|
//! <b>Note</b>: The relative order of elements that are not removed is unchanged,
|
1130
1132
|
//! and iterators to elements that are not removed remain valid.
|
1131
1133
|
template<class Disposer>
|
1132
|
-
void remove_and_dispose(const_reference value, Disposer disposer)
|
1134
|
+
void remove_and_dispose(const_reference value, Disposer disposer) BOOST_NOEXCEPT
|
1133
1135
|
{ this->remove_and_dispose_if(value_equal<const_reference>(value), disposer); }
|
1134
1136
|
|
1135
1137
|
//! <b>Effects</b>: Removes all the elements for which a specified
|
@@ -1267,7 +1269,7 @@ class list_impl
|
|
1267
1269
|
//! <b>Note</b>: Iterators and references are not invalidated.
|
1268
1270
|
//! This static function is available only if the <i>value traits</i>
|
1269
1271
|
//! is stateless.
|
1270
|
-
static iterator s_iterator_to(reference value)
|
1272
|
+
static iterator s_iterator_to(reference value) BOOST_NOEXCEPT
|
1271
1273
|
{
|
1272
1274
|
BOOST_STATIC_ASSERT((!stateful_value_traits));
|
1273
1275
|
BOOST_INTRUSIVE_INVARIANT_ASSERT(!node_algorithms::inited(value_traits::to_node_ptr(value)));
|
@@ -1285,7 +1287,7 @@ class list_impl
|
|
1285
1287
|
//! <b>Note</b>: Iterators and references are not invalidated.
|
1286
1288
|
//! This static function is available only if the <i>value traits</i>
|
1287
1289
|
//! is stateless.
|
1288
|
-
static const_iterator s_iterator_to(const_reference value)
|
1290
|
+
static const_iterator s_iterator_to(const_reference value) BOOST_NOEXCEPT
|
1289
1291
|
{
|
1290
1292
|
BOOST_STATIC_ASSERT((!stateful_value_traits));
|
1291
1293
|
reference r =*detail::uncast(pointer_traits<const_pointer>::pointer_to(value));
|
@@ -1302,7 +1304,7 @@ class list_impl
|
|
1302
1304
|
//! <b>Complexity</b>: Constant time.
|
1303
1305
|
//!
|
1304
1306
|
//! <b>Note</b>: Iterators and references are not invalidated.
|
1305
|
-
iterator iterator_to(reference value)
|
1307
|
+
iterator iterator_to(reference value) BOOST_NOEXCEPT
|
1306
1308
|
{
|
1307
1309
|
BOOST_INTRUSIVE_INVARIANT_ASSERT(!node_algorithms::inited(this->priv_value_traits().to_node_ptr(value)));
|
1308
1310
|
return iterator(this->priv_value_traits().to_node_ptr(value), this->priv_value_traits_ptr());
|
@@ -1317,7 +1319,7 @@ class list_impl
|
|
1317
1319
|
//! <b>Complexity</b>: Constant time.
|
1318
1320
|
//!
|
1319
1321
|
//! <b>Note</b>: Iterators and references are not invalidated.
|
1320
|
-
const_iterator iterator_to(const_reference value) const
|
1322
|
+
const_iterator iterator_to(const_reference value) const BOOST_NOEXCEPT
|
1321
1323
|
{
|
1322
1324
|
reference r = *detail::uncast(pointer_traits<const_pointer>::pointer_to(value));
|
1323
1325
|
BOOST_INTRUSIVE_INVARIANT_ASSERT(!node_algorithms::inited(this->priv_value_traits().to_node_ptr(r)));
|
@@ -1341,7 +1343,7 @@ class list_impl
|
|
1341
1343
|
== (node_traits::get_previous(header_ptr) == header_ptr));
|
1342
1344
|
if (node_traits::get_next(header_ptr) == header_ptr)
|
1343
1345
|
{
|
1344
|
-
|
1346
|
+
BOOST_IF_CONSTEXPR(constant_time_size)
|
1345
1347
|
BOOST_INTRUSIVE_INVARIANT_ASSERT(this->priv_size_traits().get_size() == 0);
|
1346
1348
|
return;
|
1347
1349
|
}
|
@@ -1356,11 +1358,11 @@ class list_impl
|
|
1356
1358
|
if (p == header_ptr) break;
|
1357
1359
|
++node_count;
|
1358
1360
|
}
|
1359
|
-
|
1361
|
+
BOOST_IF_CONSTEXPR(constant_time_size)
|
1360
1362
|
BOOST_INTRUSIVE_INVARIANT_ASSERT(this->priv_size_traits().get_size() == node_count);
|
1361
1363
|
}
|
1362
1364
|
|
1363
|
-
friend bool operator==(const list_impl &x, const list_impl &y)
|
1365
|
+
BOOST_INTRUSIVE_FORCEINLINE friend bool operator==(const list_impl &x, const list_impl &y)
|
1364
1366
|
{
|
1365
1367
|
if(constant_time_size && x.size() != y.size()){
|
1366
1368
|
return false;
|
@@ -1368,28 +1370,28 @@ class list_impl
|
|
1368
1370
|
return ::boost::intrusive::algo_equal(x.cbegin(), x.cend(), y.cbegin(), y.cend());
|
1369
1371
|
}
|
1370
1372
|
|
1371
|
-
friend bool operator!=(const list_impl &x, const list_impl &y)
|
1373
|
+
BOOST_INTRUSIVE_FORCEINLINE friend bool operator!=(const list_impl &x, const list_impl &y)
|
1372
1374
|
{ return !(x == y); }
|
1373
1375
|
|
1374
|
-
friend bool operator<(const list_impl &x, const list_impl &y)
|
1376
|
+
BOOST_INTRUSIVE_FORCEINLINE friend bool operator<(const list_impl &x, const list_impl &y)
|
1375
1377
|
{ return ::boost::intrusive::algo_lexicographical_compare(x.begin(), x.end(), y.begin(), y.end()); }
|
1376
1378
|
|
1377
|
-
friend bool operator>(const list_impl &x, const list_impl &y)
|
1379
|
+
BOOST_INTRUSIVE_FORCEINLINE friend bool operator>(const list_impl &x, const list_impl &y)
|
1378
1380
|
{ return y < x; }
|
1379
1381
|
|
1380
|
-
friend bool operator<=(const list_impl &x, const list_impl &y)
|
1382
|
+
BOOST_INTRUSIVE_FORCEINLINE friend bool operator<=(const list_impl &x, const list_impl &y)
|
1381
1383
|
{ return !(y < x); }
|
1382
1384
|
|
1383
|
-
friend bool operator>=(const list_impl &x, const list_impl &y)
|
1385
|
+
BOOST_INTRUSIVE_FORCEINLINE friend bool operator>=(const list_impl &x, const list_impl &y)
|
1384
1386
|
{ return !(x < y); }
|
1385
1387
|
|
1386
|
-
friend void swap(list_impl &x, list_impl &y)
|
1388
|
+
BOOST_INTRUSIVE_FORCEINLINE friend void swap(list_impl &x, list_impl &y) BOOST_NOEXCEPT
|
1387
1389
|
{ x.swap(y); }
|
1388
1390
|
|
1389
1391
|
/// @cond
|
1390
1392
|
|
1391
1393
|
private:
|
1392
|
-
static list_impl &priv_container_from_end_iterator(const const_iterator &end_iterator)
|
1394
|
+
static list_impl &priv_container_from_end_iterator(const const_iterator &end_iterator) BOOST_NOEXCEPT
|
1393
1395
|
{
|
1394
1396
|
BOOST_STATIC_ASSERT((has_container_from_iterator));
|
1395
1397
|
node_ptr p = end_iterator.pointed_node();
|
@@ -1499,10 +1501,10 @@ class list
|
|
1499
1501
|
BOOST_INTRUSIVE_FORCEINLINE void clone_from(BOOST_RV_REF(list) src, Cloner cloner, Disposer disposer)
|
1500
1502
|
{ Base::clone_from(BOOST_MOVE_BASE(Base, src), cloner, disposer); }
|
1501
1503
|
|
1502
|
-
BOOST_INTRUSIVE_FORCEINLINE static list &container_from_end_iterator(iterator end_iterator)
|
1504
|
+
BOOST_INTRUSIVE_FORCEINLINE static list &container_from_end_iterator(iterator end_iterator) BOOST_NOEXCEPT
|
1503
1505
|
{ return static_cast<list &>(Base::container_from_end_iterator(end_iterator)); }
|
1504
1506
|
|
1505
|
-
BOOST_INTRUSIVE_FORCEINLINE static const list &container_from_end_iterator(const_iterator end_iterator)
|
1507
|
+
BOOST_INTRUSIVE_FORCEINLINE static const list &container_from_end_iterator(const_iterator end_iterator) BOOST_NOEXCEPT
|
1506
1508
|
{ return static_cast<const list &>(Base::container_from_end_iterator(end_iterator)); }
|
1507
1509
|
};
|
1508
1510
|
|