passenger 5.1.4 → 5.1.5
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of passenger might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/.editorconfig +9 -0
- data/CHANGELOG +9 -0
- data/build/cxx_tests.rb +11 -1
- data/build/documentation.rb +0 -32
- data/build/support/cxx_dependency_map.rb +602 -2
- data/build/test_basics.rb +3 -3
- data/dev/boost-patches/0001-Patch-boost-thread-so-that-oxt-thread-can-use-it.patch +48 -0
- data/dev/boost-patches/0002-Make-boost-thread_interrupted-derive-from-oxt-tracab.patch +33 -0
- data/dev/boost-patches/0003-Disable-a-Clang-pragma-to-prevent-warnings-on-OS-X.patch +25 -0
- data/dev/ci/README.md +121 -0
- data/dev/ci/lib/functions.sh +129 -0
- data/dev/ci/lib/set-container-envvars.sh +46 -0
- data/dev/ci/lib/setup-container.sh +43 -0
- data/dev/ci/run-tests-natively +24 -0
- data/dev/ci/run-tests-with-docker +42 -0
- data/dev/ci/scripts/debug-console-wrapper.sh +27 -0
- data/dev/ci/scripts/docker-entrypoint-stage2.sh +17 -0
- data/dev/ci/scripts/docker-entrypoint.sh +17 -0
- data/dev/ci/scripts/inituidgid +17 -0
- data/dev/ci/scripts/run-tests-natively-stage2.sh +17 -0
- data/dev/ci/scripts/setup-host-natively.sh +11 -0
- data/dev/ci/setup-host +50 -0
- data/dev/ci/tests/apache2/run +6 -0
- data/dev/ci/tests/apache2/setup +4 -0
- data/dev/ci/tests/cxx/run +9 -0
- data/dev/ci/tests/cxx/setup +4 -0
- data/dev/ci/tests/nginx-dynamic/run +20 -0
- data/dev/ci/tests/nginx-dynamic/setup +4 -0
- data/dev/ci/tests/nginx/run +5 -0
- data/dev/ci/tests/nginx/setup +4 -0
- data/dev/ci/tests/nodejs/run +4 -0
- data/dev/ci/tests/nodejs/setup +4 -0
- data/dev/ci/tests/ruby/run +4 -0
- data/dev/ci/tests/ruby/setup +4 -0
- data/dev/ci/tests/source-packaging/run +4 -0
- data/dev/ci/tests/source-packaging/setup +4 -0
- data/dev/ci/tests/standalone/run +4 -0
- data/dev/ci/tests/standalone/setup +4 -0
- data/dev/copy_boost_headers +8 -2
- data/src/agent/Core/ApiServer.h +11 -5
- data/src/agent/Core/Controller.h +12 -46
- data/src/agent/Core/Controller/CheckoutSession.cpp +1 -1
- data/src/agent/Core/Controller/Config.h +369 -0
- data/src/agent/Core/Controller/ForwardResponse.cpp +4 -4
- data/src/agent/Core/Controller/Hooks.cpp +15 -3
- data/src/agent/Core/Controller/Implementation.cpp +1 -1
- data/src/agent/Core/Controller/InitRequest.cpp +28 -39
- data/src/agent/Core/Controller/InitializationAndShutdown.cpp +25 -60
- data/src/agent/Core/Controller/InternalUtils.cpp +0 -16
- data/src/agent/Core/Controller/Miscellaneous.cpp +0 -17
- data/src/agent/Core/Controller/Request.h +2 -0
- data/src/agent/Core/Controller/SendRequest.cpp +4 -4
- data/src/agent/Core/Controller/{StateInspectionAndConfiguration.cpp → StateInspection.cpp} +0 -22
- data/src/agent/Core/Controller/TurboCaching.h +11 -10
- data/src/agent/Core/CoreMain.cpp +16 -6
- data/src/agent/Core/ResponseCache.h +3 -3
- data/src/agent/Core/SpawningKit/SmartSpawner.h +9 -3
- data/src/agent/Core/SpawningKit/Spawner.h +7 -3
- data/src/agent/UstRouter/ApiServer.h +3 -2
- data/src/agent/UstRouter/Controller.h +66 -32
- data/src/agent/UstRouter/UstRouterMain.cpp +10 -2
- data/src/agent/Watchdog/ApiServer.h +3 -2
- data/src/agent/Watchdog/WatchdogMain.cpp +3 -1
- data/src/apache2_module/ConfigurationCommands.cpp +1 -1
- data/src/cxx_supportlib/ConfigKit/Common.h +125 -0
- data/src/cxx_supportlib/ConfigKit/ConfigKit.h +34 -0
- data/src/cxx_supportlib/ConfigKit/README.md +895 -0
- data/src/cxx_supportlib/ConfigKit/Schema.h +331 -0
- data/src/cxx_supportlib/ConfigKit/Store.h +385 -0
- data/src/cxx_supportlib/ConfigKit/TableTranslator.h +185 -0
- data/src/cxx_supportlib/ConfigKit/Utils.h +141 -0
- data/src/cxx_supportlib/ConfigKit/VariantMapUtils.h +81 -0
- data/src/cxx_supportlib/Constants.h +1 -1
- data/src/cxx_supportlib/Crypto.cpp +2 -2
- data/src/cxx_supportlib/Logging.h +0 -35
- data/src/cxx_supportlib/ServerKit/HttpServer.h +35 -16
- data/src/cxx_supportlib/ServerKit/Server.h +65 -25
- data/src/cxx_supportlib/oxt/macros.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/replace.hpp +0 -2
- data/src/cxx_supportlib/vendor-modified/boost/array.hpp +53 -42
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_template.hpp +11 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/bitwise_cast.hpp +13 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_x86.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_msvc_x86.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/config.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/interlocked.hpp +8 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_emulated.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_alpha.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_arm.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_atomic.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_ppc.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_sparc.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_sync.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_x86.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_x86_dcas.hpp +28 -17
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_linux_arm.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_msvc_arm.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_msvc_x86.hpp +9 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/platform.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/bind/arg.hpp +10 -3
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind.hpp +90 -18
- data/src/cxx_supportlib/vendor-modified/boost/cerrno.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/chrono/duration.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/auto_link.hpp +8 -3
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/borland.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang.hpp +35 -6
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/codegear.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/comeau.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/common_edg.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/compaq_cxx.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/cray.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/digitalmars.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc.hpp +19 -4
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc_xml.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/greenhills.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/hp_acc.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/intel.hpp +29 -7
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/kai.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/metrowerks.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/mpw.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/nvcc.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/pathscale.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/pgi.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/sgi_mipspro.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/sunpro_cc.hpp +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/vacpp.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +44 -16
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/cygwin.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/linux.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/select_compiler_config.hpp +21 -21
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/dinkumware.hpp +42 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcomo.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcpp.hpp +40 -7
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libstdcpp3.hpp +39 -6
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/modena.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/msl.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/roguewave.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/sgi.hpp +8 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/stlport.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/vacpp.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/suffix.hpp +33 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +0 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +0 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +34 -27
- data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +62 -26
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/addressof.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_begin.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/construct_in_place.hpp +39 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +49 -32
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/dispatch_uses_allocator.hpp +175 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +223 -98
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_sorted.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterators.hpp +88 -41
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mpl.hpp +7 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mutex.hpp +4 -9
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_alloc_holder.hpp +45 -18
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +205 -26
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +290 -181
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/value_init.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/variadic_templates_tools.hpp +24 -19
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +38 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +320 -46
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +91 -18
- data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +23 -19
- data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +491 -120
- data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +0 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/node_handle.hpp +399 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/deque.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/flat_map.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/flat_set.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/list.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/map.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/set.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/slist.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/small_vector.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/stable_vector.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/string.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/vector.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +101 -20
- data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +19 -14
- data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +117 -59
- data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +8 -6
- data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +33 -28
- data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +414 -70
- data/src/cxx_supportlib/vendor-modified/boost/container/throw_exception.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator_fwd.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +134 -117
- data/src/cxx_supportlib/vendor-modified/boost/core/addressof.hpp +202 -99
- data/src/cxx_supportlib/vendor-modified/boost/core/demangle.hpp +8 -10
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +217 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/scoped_enum.hpp +29 -27
- data/src/cxx_supportlib/vendor-modified/boost/current_function.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/c_time.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/date_time/constrained_value.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_duration.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_duration_types.hpp +6 -5
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_facet.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_names_put.hpp +8 -7
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_calendar.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_date.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_day.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_day_of_year.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_duration.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_duration_types.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_facet.hpp +27 -7
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_month.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_serialize.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_weekday.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_year.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian_calendar.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time/local_date_time.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time/posix_time_zone.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/period.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/date_duration_operators.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/posix_time_config.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/posix_time_duration.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/ptime.hpp +6 -5
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/time_parsers.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_duration.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_facet.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_zone_base.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/year_month_day.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/detail/iterator.hpp +13 -0
- data/src/cxx_supportlib/vendor-modified/boost/detail/lcast_precision.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/detail/workaround.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/error_info_impl.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/shared_ptr.hpp +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/exception.hpp +25 -3
- data/src/cxx_supportlib/vendor-modified/boost/exception/get_error_info.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/info.hpp +114 -1
- data/src/cxx_supportlib/vendor-modified/boost/function/function_base.hpp +116 -142
- data/src/cxx_supportlib/vendor-modified/boost/function/function_template.hpp +57 -69
- data/src/cxx_supportlib/vendor-modified/boost/functional/hash/detail/hash_float.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/functional/hash/extensions.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/functional/hash/hash.hpp +27 -13
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/any_hook.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avl_set.hpp +99 -12
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avl_set_hook.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree.hpp +35 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree_algorithms.hpp +37 -6
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bs_set.hpp +95 -8
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bs_set_hook.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree.hpp +209 -72
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree_algorithms.hpp +86 -20
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_list_algorithms.hpp +11 -11
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_slist_algorithms.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/algo_type.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/any_node_and_algorithms.hpp +58 -45
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/avltree_node.hpp +27 -26
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/bstree_algorithms_base.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/common_slist_algorithms.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/config_begin.hpp +8 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/default_header_holder.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/ebo_functor_holder.hpp +27 -26
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/equal_to_value.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/exception_disposer.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/generic_hook.hpp +9 -7
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/has_member_function_callable_with.hpp +83 -57
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hashtable_node.hpp +30 -30
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hook_traits.hpp +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/iiterator.hpp +8 -7
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/iterator.hpp +16 -15
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/key_nodeptr_comp.hpp +70 -44
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/list_iterator.hpp +22 -21
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/list_node.hpp +7 -6
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/parent_from_member.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/rbtree_node.hpp +29 -28
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/reverse_iterator.hpp +33 -12
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/size_holder.hpp +19 -12
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/slist_iterator.hpp +21 -20
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/slist_node.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/to_raw_pointer.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/transform_iterator.hpp +23 -22
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_iterator.hpp +23 -22
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_node.hpp +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_value_compare.hpp +103 -29
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/workaround.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +295 -211
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/linear_slist_algorithms.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +20 -7
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/list_hook.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/member_value_traits.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/options.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/parent_from_member.hpp +3 -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 +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/priority_compare.hpp +22 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree.hpp +36 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree_algorithms.hpp +43 -13
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/set.hpp +95 -8
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/set_hook.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sg_set.hpp +96 -12
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree.hpp +102 -5
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree_algorithms.hpp +48 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +20 -11
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist_hook.hpp +9 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splay_set.hpp +95 -8
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree.hpp +36 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree_algorithms.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap.hpp +167 -23
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_algorithms.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_set.hpp +100 -46
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/trivial_value_traits.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set.hpp +37 -27
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set_hook.hpp +30 -14
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +35 -36
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +6 -28
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/try_lexical_convert.hpp +20 -5
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/posix_api.cpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/regex.cpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/once.cpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/thread.cpp +11 -7
- data/src/cxx_supportlib/vendor-modified/boost/math/policies/policy.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/fpclassify.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/math_fwd.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/math/tools/config.hpp +10 -2
- data/src/cxx_supportlib/vendor-modified/boost/move/adl_move_swap.hpp +40 -7
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_merge.hpp +67 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_sort.hpp +63 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/adaptive_sort_merge.hpp +2437 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/basic_op.hpp +121 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/insertion_sort.hpp +127 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/merge.hpp +637 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/merge_sort.hpp +139 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/move.hpp +155 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algorithm.hpp +1 -116
- data/src/cxx_supportlib/vendor-modified/boost/move/core.hpp +14 -13
- data/src/cxx_supportlib/vendor-modified/boost/move/default_delete.hpp +17 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/config_begin.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/destruct_n.hpp +67 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/fwd_macros.hpp +227 -32
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/iterator_traits.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils.hpp +30 -9
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils_core.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/move_helpers.hpp +84 -80
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/placement_new.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/reverse_iterator.hpp +171 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +14 -20
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/unique_ptr_meta_utils.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/workaround.hpp +14 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/iterator.hpp +32 -33
- data/src/cxx_supportlib/vendor-modified/boost/move/make_unique.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/unique_ptr.hpp +49 -49
- data/src/cxx_supportlib/vendor-modified/boost/move/utility.hpp +8 -7
- data/src/cxx_supportlib/vendor-modified/boost/move/utility_core.hpp +17 -16
- data/src/cxx_supportlib/vendor-modified/boost/mpl/print.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/none.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/none_t.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/operators.hpp +197 -255
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/old_optional_implementation.hpp +1059 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_aligned_storage.hpp +75 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_config.hpp +116 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp +36 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_reference_spec.hpp +253 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_relops.hpp +196 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_swap.hpp +117 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp +372 -554
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional_fwd.hpp +12 -1
- data/src/cxx_supportlib/vendor-modified/boost/pool/detail/mutex.hpp +15 -7
- data/src/cxx_supportlib/vendor-modified/boost/pool/pool_alloc.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/intel.h +9 -2
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/visualc.h +15 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd.h +16 -4
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/x86.h +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/x86_amd.h +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/x86_amd/versions.h +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/cygwin.h +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/version.h +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/predef/version_number.h +20 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/cat.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/config/config.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/detail/binary_transform.hpp +5 -6
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/detail/to_list_msvc.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/to_list.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/const_iterator.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/range/size_type.hpp +0 -5
- data/src/cxx_supportlib/vendor-modified/boost/regex/concepts.hpp +16 -16
- data/src/cxx_supportlib/vendor-modified/boost/regex/config.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/pending/unicode_iterator.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_creator.hpp +102 -87
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_parser.hpp +45 -21
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/cpp_regex_traits.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/fileiter.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/instances.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/match_flags.hpp +14 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/mem_block_cache.hpp +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher.hpp +5 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_common.hpp +5 -14
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_non_recursive.hpp +116 -13
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_recursive.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_format.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_traits_defaults.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_workaround.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/w32_regex_traits.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/allocate_shared_array.hpp +1004 -159
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/bad_weak_ptr.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/shared_count.hpp +4 -58
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base.hpp +5 -2
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_clang.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_impl.hpp +0 -8
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_has_sync.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_noexcept.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/enable_shared_from_this.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ptr.hpp +28 -3
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ref_counter.hpp +187 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared_array.hpp +52 -144
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared_object.hpp +120 -450
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_array.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_ptr.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_array.hpp +7 -6
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_ptr.hpp +70 -8
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/weak_ptr.hpp +6 -5
- data/src/cxx_supportlib/vendor-modified/boost/system/error_code.hpp +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/system/system_error.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/thread/barrier.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/completion_latch.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/queue_views.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/sync_timed_queue.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/config.hpp +11 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/thread.hpp +11 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/exceptions.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/executor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/generic_executor_ref.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/loop_executor.hpp +22 -18
- data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +163 -55
- data/src/cxx_supportlib/vendor-modified/boost/thread/futures/launch.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/futures/wait_for_all.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/lock_types.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/thread/locks.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/condition_variable.hpp +6 -7
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/condition_variable_fwd.hpp +17 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/shared_mutex.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/thread_data.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/timespec.hpp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/scoped_thread.hpp +23 -18
- data/src/cxx_supportlib/vendor-modified/boost/thread/synchronized_value.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/thread/thread_functors.hpp +19 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/thread_guard.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/thread/user_scheduler.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_index.hpp +265 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_index/stl_type_index.hpp +272 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_index/type_index_facade.hpp +300 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/add_reference.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/aligned_storage.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/common_type.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/common_arithmetic_type.hpp +9 -3
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/mp_defer.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/extent.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_nothrow_assign.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_nothrow_constructor.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_nothrow_destructor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_assign.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_copy.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_destructor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_move_assign.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_move_constructor.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_abstract.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_array.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_assignable.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_const.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_default_constructible.hpp +21 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_destructible.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_move_assignable.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_move_constructible.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_pod.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_rvalue_reference.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_virtual_base_of.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_volatile.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/make_void.hpp +52 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/rank.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_all_extents.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_const.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_cv.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_extent.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_pointer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_volatile.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/type_with_alignment.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fwd.hpp +40 -6
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +4986 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/map.hpp +107 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/set.hpp +105 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map.hpp +1814 -1255
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map_fwd.hpp +41 -45
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set.hpp +1498 -1161
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set_fwd.hpp +40 -44
- data/src/cxx_supportlib/vendor-modified/boost/utility.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/utility/base_from_member.hpp +7 -6
- data/src/cxx_supportlib/vendor-modified/boost/utility/compare_pointees.hpp +10 -2
- data/src/cxx_supportlib/vendor-modified/boost/utility/string_ref.hpp +39 -22
- data/src/cxx_supportlib/vendor-modified/boost/utility/string_view.hpp +690 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/string_view_fwd.hpp +39 -0
- data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
- data/src/helper-scripts/crash-watch.rb +3 -0
- data/src/ruby_supportlib/phusion_passenger.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/apache2/config_options.rb +1 -0
- data/src/ruby_supportlib/phusion_passenger/packaging.rb +2 -12
- metadata +77 -38
- data/dev/ci/inituidgid +0 -24
- data/dev/ci/run_jenkins.sh +0 -70
- data/dev/ci/run_travis.sh +0 -314
- data/doc/Design and Architecture.html +0 -2421
- data/doc/Design and Architecture.txt +0 -511
- data/doc/Security of user switching support.html +0 -1833
- data/doc/Users guide Apache.html +0 -3101
- data/doc/Users guide Apache.idmap.txt +0 -451
- data/doc/Users guide Apache.txt +0 -534
- data/doc/Users guide Nginx.html +0 -3026
- data/doc/Users guide Nginx.idmap.txt +0 -431
- data/doc/Users guide Nginx.txt +0 -451
- data/doc/Users guide Standalone.html +0 -2092
- data/doc/Users guide Standalone.idmap.txt +0 -137
- data/doc/Users guide Standalone.txt +0 -81
- data/doc/Users guide.html +0 -1606
- data/doc/Users guide.txt +0 -8
- data/src/cxx_supportlib/vendor-modified/boost/align/align.hpp +0 -20
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/address.hpp +0 -29
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/align.hpp +0 -40
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/align_cxx11.hpp +0 -22
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/is_alignment.hpp +0 -29
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/hash_table.hpp +0 -383
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/array_allocator.hpp +0 -318
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/array_count_impl.hpp +0 -67
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/array_traits.hpp +0 -60
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/array_utility.hpp +0 -214
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_if_array.hpp +0 -34
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/allocate.hpp +0 -1128
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/buckets.hpp +0 -928
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/equivalent.hpp +0 -686
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/extract_key.hpp +0 -188
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/table.hpp +0 -873
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/unique.hpp +0 -628
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/util.hpp +0 -266
@@ -569,6 +569,34 @@ class treap_algorithms
|
|
569
569
|
rotate_up_n(header, new_node, commit_data.rotations);
|
570
570
|
}
|
571
571
|
|
572
|
+
//! @copydoc ::boost::intrusive::bstree_algorithms::transfer_unique
|
573
|
+
template<class NodePtrCompare, class KeyNodePtrPrioCompare>
|
574
|
+
static bool transfer_unique
|
575
|
+
(const node_ptr & header1, NodePtrCompare comp, KeyNodePtrPrioCompare pcomp, const node_ptr &header2, const node_ptr & z)
|
576
|
+
{
|
577
|
+
insert_commit_data commit_data;
|
578
|
+
bool const transferable = insert_unique_check(header1, z, comp, pcomp, commit_data).second;
|
579
|
+
if(transferable){
|
580
|
+
erase(header2, z, pcomp);
|
581
|
+
insert_unique_commit(header1, z, commit_data);
|
582
|
+
}
|
583
|
+
return transferable;
|
584
|
+
}
|
585
|
+
|
586
|
+
//! @copydoc ::boost::intrusive::bstree_algorithms::transfer_equal
|
587
|
+
template<class NodePtrCompare, class KeyNodePtrPrioCompare>
|
588
|
+
static void transfer_equal
|
589
|
+
(const node_ptr & header1, NodePtrCompare comp, KeyNodePtrPrioCompare pcomp, const node_ptr &header2, const node_ptr & z)
|
590
|
+
{
|
591
|
+
insert_commit_data commit_data;
|
592
|
+
bstree_algo::insert_equal_upper_bound_check(header1, z, comp, commit_data);
|
593
|
+
rebalance_after_insertion_check(header1, commit_data.node, z, pcomp, commit_data.rotations);
|
594
|
+
rebalance_for_erasure(header2, z, pcomp);
|
595
|
+
bstree_algo::erase(header2, z);
|
596
|
+
bstree_algo::insert_unique_commit(header1, z, commit_data);
|
597
|
+
rotate_up_n(header1, z, commit_data.rotations);
|
598
|
+
}
|
599
|
+
|
572
600
|
#ifdef BOOST_INTRUSIVE_DOXYGEN_INVOKED
|
573
601
|
|
574
602
|
//! @copydoc ::boost::intrusive::bstree_algorithms::is_header
|
@@ -26,6 +26,11 @@
|
|
26
26
|
namespace boost {
|
27
27
|
namespace intrusive {
|
28
28
|
|
29
|
+
#if !defined(BOOST_INTRUSIVE_DOXYGEN_INVOKED)
|
30
|
+
template<class ValueTraits, class VoidOrKeyOfValue, class VoidOrKeyComp, class VoidOrPrioComp, class SizeType, bool ConstantTimeSize, typename HeaderHolder>
|
31
|
+
class treap_multiset_impl;
|
32
|
+
#endif
|
33
|
+
|
29
34
|
//! The class template treap_set is an intrusive container, that mimics most of
|
30
35
|
//! the interface of std::set as described in the C++ standard.
|
31
36
|
//!
|
@@ -83,31 +88,19 @@ class treap_set_impl
|
|
83
88
|
static const bool constant_time_size = implementation_defined::constant_time_size;
|
84
89
|
|
85
90
|
public:
|
86
|
-
//!
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
//!
|
92
|
-
|
93
|
-
explicit treap_set_impl( const key_compare &cmp = key_compare()
|
91
|
+
//! @copydoc ::boost::intrusive::treap::treap()
|
92
|
+
treap_set_impl()
|
93
|
+
: tree_type()
|
94
|
+
{}
|
95
|
+
|
96
|
+
//! @copydoc ::boost::intrusive::treap::treap(const key_compare &,const priority_compare &,const value_traits &)
|
97
|
+
explicit treap_set_impl( const key_compare &cmp
|
94
98
|
, const priority_compare &pcmp = priority_compare()
|
95
99
|
, const value_traits &v_traits = value_traits())
|
96
100
|
: tree_type(cmp, pcmp, v_traits)
|
97
101
|
{}
|
98
102
|
|
99
|
-
//!
|
100
|
-
//! cmp must be a comparison function that induces a strict weak ordering.
|
101
|
-
//!
|
102
|
-
//! <b>Effects</b>: Constructs an empty treap_set and inserts elements from
|
103
|
-
//! [b, e).
|
104
|
-
//!
|
105
|
-
//! <b>Complexity</b>: Linear in N if [b, e) is already sorted using
|
106
|
-
//! comp and otherwise N * log N, where N is distance(last, first).
|
107
|
-
//!
|
108
|
-
//! <b>Throws</b>: If value_traits::node_traits::node
|
109
|
-
//! constructor throws (this does not happen with predefined Boost.Intrusive hooks)
|
110
|
-
//! or the copy constructor/operator() of the key_compare object throws.
|
103
|
+
//! @copydoc ::boost::intrusive::treap::treap(bool,Iterator,Iterator,const key_compare &,const priority_compare &,const value_traits &)
|
111
104
|
template<class Iterator>
|
112
105
|
treap_set_impl( Iterator b, Iterator e
|
113
106
|
, const key_compare &cmp = key_compare()
|
@@ -167,6 +160,15 @@ class treap_set_impl
|
|
167
160
|
//! @copydoc ::boost::intrusive::treap::crend()const
|
168
161
|
const_reverse_iterator crend() const;
|
169
162
|
|
163
|
+
//! @copydoc ::boost::intrusive::treap::root()
|
164
|
+
iterator root();
|
165
|
+
|
166
|
+
//! @copydoc ::boost::intrusive::treap::root()const
|
167
|
+
const_iterator root() const;
|
168
|
+
|
169
|
+
//! @copydoc ::boost::intrusive::treap::croot()const
|
170
|
+
const_iterator croot() const;
|
171
|
+
|
170
172
|
//! @copydoc ::boost::intrusive::treap::container_from_end_iterator(iterator)
|
171
173
|
static treap_set_impl &container_from_end_iterator(iterator end_iterator);
|
172
174
|
|
@@ -241,6 +243,15 @@ class treap_set_impl
|
|
241
243
|
iterator insert(const_iterator hint, reference value)
|
242
244
|
{ return tree_type::insert_unique(hint, value); }
|
243
245
|
|
246
|
+
//! @copydoc ::boost::intrusive::treap::insert_unique_check(const key_type&,insert_commit_data&)
|
247
|
+
std::pair<iterator, bool> insert_check( const key_type &key, insert_commit_data &commit_data)
|
248
|
+
{ return tree_type::insert_unique_check(key, commit_data); }
|
249
|
+
|
250
|
+
//! @copydoc ::boost::intrusive::treap::insert_unique_check(const_iterator,const key_type&,insert_commit_data&)
|
251
|
+
std::pair<iterator, bool> insert_check
|
252
|
+
( const_iterator hint, const key_type &key, insert_commit_data &commit_data)
|
253
|
+
{ return tree_type::insert_unique_check(hint, key, commit_data); }
|
254
|
+
|
244
255
|
//! @copydoc ::boost::intrusive::treap::insert_unique_check(const KeyType&,KeyTypeKeyCompare,KeyValuePrioCompare,insert_commit_data&)
|
245
256
|
template<class KeyType, class KeyTypeKeyCompare, class KeyValuePrioCompare>
|
246
257
|
std::pair<iterator, bool> insert_check
|
@@ -368,21 +379,21 @@ class treap_set_impl
|
|
368
379
|
|
369
380
|
#endif // #ifdef BOOST_INTRUSIVE_DOXYGEN_INVOKED
|
370
381
|
|
371
|
-
//! @copydoc ::boost::intrusive::
|
382
|
+
//! @copydoc ::boost::intrusive::treap::equal_range(const key_type &)
|
372
383
|
std::pair<iterator,iterator> equal_range(const key_type &key)
|
373
384
|
{ return this->tree_type::lower_bound_range(key); }
|
374
385
|
|
375
|
-
//! @copydoc ::boost::intrusive::
|
386
|
+
//! @copydoc ::boost::intrusive::treap::equal_range(const KeyType&,KeyTypeKeyCompare)
|
376
387
|
template<class KeyType, class KeyTypeKeyCompare>
|
377
388
|
std::pair<iterator,iterator> equal_range(const KeyType& key, KeyTypeKeyCompare comp)
|
378
389
|
{ return this->tree_type::equal_range(key, comp); }
|
379
390
|
|
380
|
-
//! @copydoc ::boost::intrusive::
|
391
|
+
//! @copydoc ::boost::intrusive::treap::equal_range(const key_type &)const
|
381
392
|
std::pair<const_iterator, const_iterator>
|
382
393
|
equal_range(const key_type &key) const
|
383
394
|
{ return this->tree_type::lower_bound_range(key); }
|
384
395
|
|
385
|
-
//! @copydoc ::boost::intrusive::
|
396
|
+
//! @copydoc ::boost::intrusive::treap::equal_range(const KeyType&,KeyTypeKeyCompare)const
|
386
397
|
template<class KeyType, class KeyTypeKeyCompare>
|
387
398
|
std::pair<const_iterator, const_iterator>
|
388
399
|
equal_range(const KeyType& key, KeyTypeKeyCompare comp) const
|
@@ -432,6 +443,25 @@ class treap_set_impl
|
|
432
443
|
//! @copydoc ::boost::intrusive::treap::remove_node
|
433
444
|
void remove_node(reference value);
|
434
445
|
|
446
|
+
|
447
|
+
//! @copydoc ::boost::intrusive::treap::merge_unique
|
448
|
+
template<class ...Options2>
|
449
|
+
void merge(treap_set<T, Options2...> &source);
|
450
|
+
|
451
|
+
//! @copydoc ::boost::intrusive::treap::merge_unique
|
452
|
+
template<class ...Options2>
|
453
|
+
void merge(treap_multiset<T, Options2...> &source);
|
454
|
+
|
455
|
+
#else
|
456
|
+
|
457
|
+
template<class Compare2>
|
458
|
+
void merge(treap_set_impl<ValueTraits, VoidOrKeyOfValue, Compare2, VoidOrPrioComp, SizeType, ConstantTimeSize, HeaderHolder> &source)
|
459
|
+
{ return tree_type::merge_unique(source); }
|
460
|
+
|
461
|
+
template<class Compare2>
|
462
|
+
void merge(treap_multiset_impl<ValueTraits, VoidOrKeyOfValue, Compare2, VoidOrPrioComp, SizeType, ConstantTimeSize, HeaderHolder> &source)
|
463
|
+
{ return tree_type::merge_unique(source); }
|
464
|
+
|
435
465
|
#endif //#ifdef BOOST_INTRUSIVE_DOXYGEN_INVOKED
|
436
466
|
};
|
437
467
|
|
@@ -508,7 +538,11 @@ class treap_set
|
|
508
538
|
//Assert if passed value traits are compatible with the type
|
509
539
|
BOOST_STATIC_ASSERT((detail::is_same<typename value_traits::value_type, T>::value));
|
510
540
|
|
511
|
-
|
541
|
+
treap_set()
|
542
|
+
: Base()
|
543
|
+
{}
|
544
|
+
|
545
|
+
explicit treap_set( const key_compare &cmp
|
512
546
|
, const priority_compare &pcmp = priority_compare()
|
513
547
|
, const value_traits &v_traits = value_traits())
|
514
548
|
: Base(cmp, pcmp, v_traits)
|
@@ -608,31 +642,20 @@ class treap_multiset_impl
|
|
608
642
|
static const bool constant_time_size = implementation_defined::constant_time_size;
|
609
643
|
|
610
644
|
public:
|
611
|
-
|
612
|
-
//!
|
613
|
-
|
614
|
-
|
615
|
-
|
616
|
-
|
617
|
-
//!
|
618
|
-
explicit treap_multiset_impl( const key_compare &cmp
|
645
|
+
|
646
|
+
//! @copydoc ::boost::intrusive::treap::treap()
|
647
|
+
treap_multiset_impl()
|
648
|
+
: tree_type()
|
649
|
+
{}
|
650
|
+
|
651
|
+
//! @copydoc ::boost::intrusive::treap::treap(const key_compare &,const priority_compare &,const value_traits &)
|
652
|
+
explicit treap_multiset_impl( const key_compare &cmp
|
619
653
|
, const priority_compare &pcmp = priority_compare()
|
620
654
|
, const value_traits &v_traits = value_traits())
|
621
655
|
: tree_type(cmp, pcmp, v_traits)
|
622
656
|
{}
|
623
657
|
|
624
|
-
//!
|
625
|
-
//! cmp must be a comparison function that induces a strict weak ordering.
|
626
|
-
//!
|
627
|
-
//! <b>Effects</b>: Constructs an empty treap_multiset and inserts elements from
|
628
|
-
//! [b, e).
|
629
|
-
//!
|
630
|
-
//! <b>Complexity</b>: Linear in N if [b, e) is already sorted using
|
631
|
-
//! comp and otherwise N * log N, where N is distance(last, first).
|
632
|
-
//!
|
633
|
-
//! <b>Throws</b>: If value_traits::node_traits::node
|
634
|
-
//! constructor throws (this does not happen with predefined Boost.Intrusive hooks)
|
635
|
-
//! or the copy constructor/operator() of the key_compare object throws.
|
658
|
+
//! @copydoc ::boost::intrusive::treap::treap(bool,Iterator,Iterator,const key_compare &,const priority_compare &,const value_traits &)
|
636
659
|
template<class Iterator>
|
637
660
|
treap_multiset_impl( Iterator b, Iterator e
|
638
661
|
, const key_compare &cmp = key_compare()
|
@@ -692,6 +715,15 @@ class treap_multiset_impl
|
|
692
715
|
//! @copydoc ::boost::intrusive::treap::crend()const
|
693
716
|
const_reverse_iterator crend() const;
|
694
717
|
|
718
|
+
//! @copydoc ::boost::intrusive::treap::root()
|
719
|
+
iterator root();
|
720
|
+
|
721
|
+
//! @copydoc ::boost::intrusive::treap::root()const
|
722
|
+
const_iterator root() const;
|
723
|
+
|
724
|
+
//! @copydoc ::boost::intrusive::treap::croot()const
|
725
|
+
const_iterator croot() const;
|
726
|
+
|
695
727
|
//! @copydoc ::boost::intrusive::treap::container_from_end_iterator(iterator)
|
696
728
|
static treap_multiset_impl &container_from_end_iterator(iterator end_iterator);
|
697
729
|
|
@@ -924,6 +956,24 @@ class treap_multiset_impl
|
|
924
956
|
//! @copydoc ::boost::intrusive::treap::remove_node
|
925
957
|
void remove_node(reference value);
|
926
958
|
|
959
|
+
//! @copydoc ::boost::intrusive::treap::merge_unique
|
960
|
+
template<class ...Options2>
|
961
|
+
void merge(treap_multiset<T, Options2...> &source);
|
962
|
+
|
963
|
+
//! @copydoc ::boost::intrusive::treap::merge_unique
|
964
|
+
template<class ...Options2>
|
965
|
+
void merge(treap_set<T, Options2...> &source);
|
966
|
+
|
967
|
+
#else
|
968
|
+
|
969
|
+
template<class Compare2>
|
970
|
+
void merge(treap_multiset_impl<ValueTraits, VoidOrKeyOfValue, Compare2, VoidOrPrioComp, SizeType, ConstantTimeSize, HeaderHolder> &source)
|
971
|
+
{ return tree_type::merge_equal(source); }
|
972
|
+
|
973
|
+
template<class Compare2>
|
974
|
+
void merge(treap_set_impl<ValueTraits, VoidOrKeyOfValue, Compare2, VoidOrPrioComp, SizeType, ConstantTimeSize, HeaderHolder> &source)
|
975
|
+
{ return tree_type::merge_equal(source); }
|
976
|
+
|
927
977
|
#endif //#ifdef BOOST_INTRUSIVE_DOXYGEN_INVOKED
|
928
978
|
};
|
929
979
|
|
@@ -1000,7 +1050,11 @@ class treap_multiset
|
|
1000
1050
|
//Assert if passed value traits are compatible with the type
|
1001
1051
|
BOOST_STATIC_ASSERT((detail::is_same<typename value_traits::value_type, T>::value));
|
1002
1052
|
|
1003
|
-
|
1053
|
+
treap_multiset()
|
1054
|
+
: Base()
|
1055
|
+
{}
|
1056
|
+
|
1057
|
+
explicit treap_multiset( const key_compare &cmp
|
1004
1058
|
, const priority_compare &pcmp = priority_compare()
|
1005
1059
|
, const value_traits &v_traits = value_traits())
|
1006
1060
|
: Base(cmp, pcmp, v_traits)
|
@@ -14,6 +14,7 @@
|
|
14
14
|
#define BOOST_INTRUSIVE_TRIVIAL_VALUE_TRAITS_HPP
|
15
15
|
|
16
16
|
#include <boost/intrusive/detail/config_begin.hpp>
|
17
|
+
#include <boost/intrusive/detail/workaround.hpp>
|
17
18
|
#include <boost/intrusive/intrusive_fwd.hpp>
|
18
19
|
#include <boost/intrusive/link_mode.hpp>
|
19
20
|
#include <boost/intrusive/pointer_traits.hpp>
|
@@ -42,12 +43,12 @@ struct trivial_value_traits
|
|
42
43
|
typedef node_ptr pointer;
|
43
44
|
typedef const_node_ptr const_pointer;
|
44
45
|
static const link_mode_type link_mode = LinkMode;
|
45
|
-
static node_ptr to_node_ptr (value_type &value)
|
46
|
+
BOOST_INTRUSIVE_FORCEINLINE static node_ptr to_node_ptr (value_type &value)
|
46
47
|
{ return pointer_traits<node_ptr>::pointer_to(value); }
|
47
|
-
static const_node_ptr to_node_ptr (const value_type &value)
|
48
|
+
BOOST_INTRUSIVE_FORCEINLINE static const_node_ptr to_node_ptr (const value_type &value)
|
48
49
|
{ return pointer_traits<const_node_ptr>::pointer_to(value); }
|
49
|
-
static const pointer & to_value_ptr(const node_ptr &n) { return n; }
|
50
|
-
static const const_pointer &to_value_ptr(const const_node_ptr &n) { return n; }
|
50
|
+
BOOST_INTRUSIVE_FORCEINLINE static const pointer & to_value_ptr(const node_ptr &n) { return n; }
|
51
|
+
BOOST_INTRUSIVE_FORCEINLINE static const const_pointer &to_value_ptr(const const_node_ptr &n) { return n; }
|
51
52
|
};
|
52
53
|
|
53
54
|
} //namespace intrusive
|
@@ -120,7 +120,7 @@ class unordered_set_impl
|
|
120
120
|
public:
|
121
121
|
|
122
122
|
//! @copydoc ::boost::intrusive::hashtable::hashtable(const bucket_traits &,const hasher &,const key_equal &,const value_traits &)
|
123
|
-
explicit unordered_set_impl( const bucket_traits &b_traits
|
123
|
+
BOOST_INTRUSIVE_FORCEINLINE explicit unordered_set_impl( const bucket_traits &b_traits
|
124
124
|
, const hasher & hash_func = hasher()
|
125
125
|
, const key_equal &equal_func = key_equal()
|
126
126
|
, const value_traits &v_traits = value_traits())
|
@@ -129,7 +129,7 @@ class unordered_set_impl
|
|
129
129
|
|
130
130
|
//! @copydoc ::boost::intrusive::hashtable::hashtable(bool,Iterator,Iterator,const bucket_traits &,const hasher &,const key_equal &,const value_traits &)
|
131
131
|
template<class Iterator>
|
132
|
-
unordered_set_impl( Iterator b
|
132
|
+
BOOST_INTRUSIVE_FORCEINLINE unordered_set_impl( Iterator b
|
133
133
|
, Iterator e
|
134
134
|
, const bucket_traits &b_traits
|
135
135
|
, const hasher & hash_func = hasher()
|
@@ -139,12 +139,12 @@ class unordered_set_impl
|
|
139
139
|
{}
|
140
140
|
|
141
141
|
//! @copydoc ::boost::intrusive::hashtable::hashtable(hashtable&&)
|
142
|
-
unordered_set_impl(BOOST_RV_REF(unordered_set_impl) x)
|
142
|
+
BOOST_INTRUSIVE_FORCEINLINE unordered_set_impl(BOOST_RV_REF(unordered_set_impl) x)
|
143
143
|
: table_type(BOOST_MOVE_BASE(table_type, x))
|
144
144
|
{}
|
145
145
|
|
146
146
|
//! @copydoc ::boost::intrusive::hashtable::operator=(hashtable&&)
|
147
|
-
unordered_set_impl& operator=(BOOST_RV_REF(unordered_set_impl) x)
|
147
|
+
BOOST_INTRUSIVE_FORCEINLINE unordered_set_impl& operator=(BOOST_RV_REF(unordered_set_impl) x)
|
148
148
|
{ return static_cast<unordered_set_impl&>(table_type::operator=(BOOST_MOVE_BASE(table_type, x))); }
|
149
149
|
|
150
150
|
#ifdef BOOST_INTRUSIVE_DOXYGEN_INVOKED
|
@@ -196,26 +196,30 @@ class unordered_set_impl
|
|
196
196
|
|
197
197
|
//! @copydoc ::boost::intrusive::hashtable::clone_from(hashtable&&,Cloner,Disposer)
|
198
198
|
template <class Cloner, class Disposer>
|
199
|
-
void clone_from(BOOST_RV_REF(unordered_set_impl) src, Cloner cloner, Disposer disposer)
|
199
|
+
BOOST_INTRUSIVE_FORCEINLINE void clone_from(BOOST_RV_REF(unordered_set_impl) src, Cloner cloner, Disposer disposer)
|
200
200
|
{ table_type::clone_from(BOOST_MOVE_BASE(table_type, src), cloner, disposer); }
|
201
201
|
|
202
202
|
//! @copydoc ::boost::intrusive::hashtable::insert_unique(reference)
|
203
|
-
std::pair<iterator, bool> insert(reference value)
|
203
|
+
BOOST_INTRUSIVE_FORCEINLINE std::pair<iterator, bool> insert(reference value)
|
204
204
|
{ return table_type::insert_unique(value); }
|
205
205
|
|
206
206
|
//! @copydoc ::boost::intrusive::hashtable::insert_unique(Iterator,Iterator)
|
207
207
|
template<class Iterator>
|
208
|
-
void insert(Iterator b, Iterator e)
|
208
|
+
BOOST_INTRUSIVE_FORCEINLINE void insert(Iterator b, Iterator e)
|
209
209
|
{ table_type::insert_unique(b, e); }
|
210
210
|
|
211
|
+
//! @copydoc ::boost::intrusive::hashtable::insert_unique_check(const key_type&,insert_commit_data&)
|
212
|
+
BOOST_INTRUSIVE_FORCEINLINE std::pair<iterator, bool> insert_check(const key_type &key, insert_commit_data &commit_data)
|
213
|
+
{ return table_type::insert_unique_check(key, commit_data); }
|
214
|
+
|
211
215
|
//! @copydoc ::boost::intrusive::hashtable::insert_unique_check(const KeyType&,KeyHasher,KeyEqual,insert_commit_data&)
|
212
216
|
template<class KeyType, class KeyHasher, class KeyEqual>
|
213
|
-
std::pair<iterator, bool> insert_check
|
217
|
+
BOOST_INTRUSIVE_FORCEINLINE std::pair<iterator, bool> insert_check
|
214
218
|
(const KeyType &key, KeyHasher hasher, KeyEqual key_value_equal, insert_commit_data &commit_data)
|
215
219
|
{ return table_type::insert_unique_check(key, hasher, key_value_equal, commit_data); }
|
216
220
|
|
217
221
|
//! @copydoc ::boost::intrusive::hashtable::insert_unique_commit
|
218
|
-
iterator insert_commit(reference value, const insert_commit_data &commit_data)
|
222
|
+
BOOST_INTRUSIVE_FORCEINLINE iterator insert_commit(reference value, const insert_commit_data &commit_data)
|
219
223
|
{ return table_type::insert_unique_commit(value, commit_data); }
|
220
224
|
|
221
225
|
#ifdef BOOST_INTRUSIVE_DOXYGEN_INVOKED
|
@@ -356,6 +360,9 @@ class unordered_set_impl
|
|
356
360
|
//! @copydoc ::boost::intrusive::hashtable::rehash(const bucket_traits &)
|
357
361
|
void rehash(const bucket_traits &new_bucket_traits);
|
358
362
|
|
363
|
+
//! @copydoc ::boost::intrusive::hashtable::full_rehash
|
364
|
+
void full_rehash();
|
365
|
+
|
359
366
|
//! @copydoc ::boost::intrusive::hashtable::incremental_rehash(bool)
|
360
367
|
bool incremental_rehash(bool grow = true);
|
361
368
|
|
@@ -499,8 +506,8 @@ class unordered_set
|
|
499
506
|
{}
|
500
507
|
|
501
508
|
template<class Iterator>
|
502
|
-
unordered_set
|
503
|
-
, Iterator e
|
509
|
+
BOOST_INTRUSIVE_FORCEINLINE unordered_set
|
510
|
+
( Iterator b, Iterator e
|
504
511
|
, const bucket_traits &b_traits
|
505
512
|
, const hasher & hash_func = hasher()
|
506
513
|
, const key_equal &equal_func = key_equal()
|
@@ -508,19 +515,19 @@ class unordered_set
|
|
508
515
|
: Base(b, e, b_traits, hash_func, equal_func, v_traits)
|
509
516
|
{}
|
510
517
|
|
511
|
-
unordered_set(BOOST_RV_REF(unordered_set) x)
|
518
|
+
BOOST_INTRUSIVE_FORCEINLINE unordered_set(BOOST_RV_REF(unordered_set) x)
|
512
519
|
: Base(BOOST_MOVE_BASE(Base, x))
|
513
520
|
{}
|
514
521
|
|
515
|
-
unordered_set& operator=(BOOST_RV_REF(unordered_set) x)
|
522
|
+
BOOST_INTRUSIVE_FORCEINLINE unordered_set& operator=(BOOST_RV_REF(unordered_set) x)
|
516
523
|
{ return static_cast<unordered_set&>(this->Base::operator=(BOOST_MOVE_BASE(Base, x))); }
|
517
524
|
|
518
525
|
template <class Cloner, class Disposer>
|
519
|
-
void clone_from(const unordered_set &src, Cloner cloner, Disposer disposer)
|
526
|
+
BOOST_INTRUSIVE_FORCEINLINE void clone_from(const unordered_set &src, Cloner cloner, Disposer disposer)
|
520
527
|
{ Base::clone_from(src, cloner, disposer); }
|
521
528
|
|
522
529
|
template <class Cloner, class Disposer>
|
523
|
-
void clone_from(BOOST_RV_REF(unordered_set) src, Cloner cloner, Disposer disposer)
|
530
|
+
BOOST_INTRUSIVE_FORCEINLINE void clone_from(BOOST_RV_REF(unordered_set) src, Cloner cloner, Disposer disposer)
|
524
531
|
{ Base::clone_from(BOOST_MOVE_BASE(Base, src), cloner, disposer); }
|
525
532
|
};
|
526
533
|
|
@@ -609,7 +616,7 @@ class unordered_multiset_impl
|
|
609
616
|
public:
|
610
617
|
|
611
618
|
//! @copydoc ::boost::intrusive::hashtable::hashtable(const bucket_traits &,const hasher &,const key_equal &,const value_traits &)
|
612
|
-
explicit unordered_multiset_impl ( const bucket_traits &b_traits
|
619
|
+
BOOST_INTRUSIVE_FORCEINLINE explicit unordered_multiset_impl ( const bucket_traits &b_traits
|
613
620
|
, const hasher & hash_func = hasher()
|
614
621
|
, const key_equal &equal_func = key_equal()
|
615
622
|
, const value_traits &v_traits = value_traits())
|
@@ -618,7 +625,7 @@ class unordered_multiset_impl
|
|
618
625
|
|
619
626
|
//! @copydoc ::boost::intrusive::hashtable::hashtable(bool,Iterator,Iterator,const bucket_traits &,const hasher &,const key_equal &,const value_traits &)
|
620
627
|
template<class Iterator>
|
621
|
-
unordered_multiset_impl ( Iterator b
|
628
|
+
BOOST_INTRUSIVE_FORCEINLINE unordered_multiset_impl ( Iterator b
|
622
629
|
, Iterator e
|
623
630
|
, const bucket_traits &b_traits
|
624
631
|
, const hasher & hash_func = hasher()
|
@@ -629,13 +636,13 @@ class unordered_multiset_impl
|
|
629
636
|
|
630
637
|
//! <b>Effects</b>: to-do
|
631
638
|
//!
|
632
|
-
unordered_multiset_impl(BOOST_RV_REF(unordered_multiset_impl) x)
|
639
|
+
BOOST_INTRUSIVE_FORCEINLINE unordered_multiset_impl(BOOST_RV_REF(unordered_multiset_impl) x)
|
633
640
|
: table_type(BOOST_MOVE_BASE(table_type, x))
|
634
641
|
{}
|
635
642
|
|
636
643
|
//! <b>Effects</b>: to-do
|
637
644
|
//!
|
638
|
-
unordered_multiset_impl& operator=(BOOST_RV_REF(unordered_multiset_impl) x)
|
645
|
+
BOOST_INTRUSIVE_FORCEINLINE unordered_multiset_impl& operator=(BOOST_RV_REF(unordered_multiset_impl) x)
|
639
646
|
{ return static_cast<unordered_multiset_impl&>(table_type::operator=(BOOST_MOVE_BASE(table_type, x))); }
|
640
647
|
|
641
648
|
#ifdef BOOST_INTRUSIVE_DOXYGEN_INVOKED
|
@@ -688,16 +695,16 @@ class unordered_multiset_impl
|
|
688
695
|
|
689
696
|
//! @copydoc ::boost::intrusive::hashtable::clone_from(hashtable&&,Cloner,Disposer)
|
690
697
|
template <class Cloner, class Disposer>
|
691
|
-
void clone_from(BOOST_RV_REF(unordered_multiset_impl) src, Cloner cloner, Disposer disposer)
|
698
|
+
BOOST_INTRUSIVE_FORCEINLINE void clone_from(BOOST_RV_REF(unordered_multiset_impl) src, Cloner cloner, Disposer disposer)
|
692
699
|
{ table_type::clone_from(BOOST_MOVE_BASE(table_type, src), cloner, disposer); }
|
693
700
|
|
694
701
|
//! @copydoc ::boost::intrusive::hashtable::insert_equal(reference)
|
695
|
-
iterator insert(reference value)
|
702
|
+
BOOST_INTRUSIVE_FORCEINLINE iterator insert(reference value)
|
696
703
|
{ return table_type::insert_equal(value); }
|
697
704
|
|
698
705
|
//! @copydoc ::boost::intrusive::hashtable::insert_equal(Iterator,Iterator)
|
699
706
|
template<class Iterator>
|
700
|
-
void insert(Iterator b, Iterator e)
|
707
|
+
BOOST_INTRUSIVE_FORCEINLINE void insert(Iterator b, Iterator e)
|
701
708
|
{ table_type::insert_equal(b, e); }
|
702
709
|
|
703
710
|
#ifdef BOOST_INTRUSIVE_DOXYGEN_INVOKED
|
@@ -832,6 +839,9 @@ class unordered_multiset_impl
|
|
832
839
|
//! @copydoc ::boost::intrusive::hashtable::rehash(const bucket_traits &)
|
833
840
|
void rehash(const bucket_traits &new_bucket_traits);
|
834
841
|
|
842
|
+
//! @copydoc ::boost::intrusive::hashtable::full_rehash
|
843
|
+
void full_rehash();
|
844
|
+
|
835
845
|
//! @copydoc ::boost::intrusive::hashtable::incremental_rehash(bool)
|
836
846
|
bool incremental_rehash(bool grow = true);
|
837
847
|
|
@@ -944,7 +954,7 @@ class unordered_multiset
|
|
944
954
|
: Base(b_traits, hash_func, equal_func, v_traits)
|
945
955
|
{}
|
946
956
|
|
947
|
-
template<class Iterator>
|
957
|
+
template<class Iterator> BOOST_INTRUSIVE_FORCEINLINE
|
948
958
|
unordered_multiset( Iterator b
|
949
959
|
, Iterator e
|
950
960
|
, const bucket_traits &b_traits
|
@@ -954,19 +964,19 @@ class unordered_multiset
|
|
954
964
|
: Base(b, e, b_traits, hash_func, equal_func, v_traits)
|
955
965
|
{}
|
956
966
|
|
957
|
-
unordered_multiset(BOOST_RV_REF(unordered_multiset) x)
|
967
|
+
BOOST_INTRUSIVE_FORCEINLINE unordered_multiset(BOOST_RV_REF(unordered_multiset) x)
|
958
968
|
: Base(BOOST_MOVE_BASE(Base, x))
|
959
969
|
{}
|
960
970
|
|
961
|
-
unordered_multiset& operator=(BOOST_RV_REF(unordered_multiset) x)
|
971
|
+
BOOST_INTRUSIVE_FORCEINLINE unordered_multiset& operator=(BOOST_RV_REF(unordered_multiset) x)
|
962
972
|
{ return static_cast<unordered_multiset&>(this->Base::operator=(BOOST_MOVE_BASE(Base, x))); }
|
963
973
|
|
964
974
|
template <class Cloner, class Disposer>
|
965
|
-
void clone_from(const unordered_multiset &src, Cloner cloner, Disposer disposer)
|
975
|
+
BOOST_INTRUSIVE_FORCEINLINE void clone_from(const unordered_multiset &src, Cloner cloner, Disposer disposer)
|
966
976
|
{ Base::clone_from(src, cloner, disposer); }
|
967
977
|
|
968
978
|
template <class Cloner, class Disposer>
|
969
|
-
void clone_from(BOOST_RV_REF(unordered_multiset) src, Cloner cloner, Disposer disposer)
|
979
|
+
BOOST_INTRUSIVE_FORCEINLINE void clone_from(BOOST_RV_REF(unordered_multiset) src, Cloner cloner, Disposer disposer)
|
970
980
|
{ Base::clone_from(BOOST_MOVE_BASE(Base, src), cloner, disposer); }
|
971
981
|
};
|
972
982
|
|