passenger 5.0.24 → 5.0.25
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 +8 -18
- data/CHANGELOG +20 -0
- data/build/cplusplus_support.rb +3 -3
- data/build/cxx_dependency_map.rb +148 -96
- data/build/cxx_tests.rb +24 -12
- data/build/packaging.rb +1 -2
- data/dev/copy_boost_headers +32 -9
- data/resources/templates/standalone/config.erb +2 -0
- data/resources/templates/standalone/footer.erb +3 -0
- data/resources/templates/standalone/server.erb +7 -0
- data/src/agent/Core/ApplicationPool/Pool/Miscellaneous.cpp +2 -2
- data/src/agent/Core/SpawningKit/DirectSpawner.h +3 -0
- data/src/agent/Core/UnionStation/Transaction.h +1 -15
- data/src/agent/README.md +15 -3
- data/src/agent/UstRouter/Controller.h +95 -90
- data/src/agent/UstRouter/FileSink.h +3 -2
- data/src/agent/UstRouter/LogSink.h +5 -6
- data/src/agent/UstRouter/RemoteSender.h +41 -12
- data/src/agent/UstRouter/RemoteSink.h +3 -2
- data/src/agent/UstRouter/Transaction.h +198 -66
- data/src/apache2_module/Configuration.cpp +57 -2
- data/src/apache2_module/Configuration.h +3 -1
- data/src/apache2_module/Configuration.hpp +3 -1
- data/src/apache2_module/Hooks.cpp +4 -2
- data/src/cxx_supportlib/Constants.h +1 -1
- data/src/cxx_supportlib/MemoryKit/palloc.h +1 -0
- data/src/cxx_supportlib/ServerKit/AcceptLoadBalancer.h +1 -0
- data/src/cxx_supportlib/ServerKit/FileBufferedChannel.h +4 -3
- data/src/cxx_supportlib/ServerKit/Server.h +1 -0
- data/src/cxx_supportlib/Utils/BufferedIO.h +21 -4
- data/src/cxx_supportlib/Utils/IOUtils.cpp +62 -12
- data/src/cxx_supportlib/Utils/StrIntUtils.cpp +3 -3
- data/src/cxx_supportlib/Utils/StrIntUtils.h +2 -2
- data/src/cxx_supportlib/WatchdogLauncher.cpp +13 -1
- data/src/cxx_supportlib/WatchdogLauncher.h +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/classification.hpp +312 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/concept.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/classification.hpp +353 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/find_format.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/find_format_all.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/find_format_store.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/find_iterator.hpp +87 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/finder.hpp +1 -8
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/finder_regex.hpp +122 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/formatter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/formatter_regex.hpp +61 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/predicate.hpp +77 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/trim.hpp +95 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/util.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/erase.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/find.hpp +334 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/find_format.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/find_iterator.hpp +388 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/finder.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/formatter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/iter_find.hpp +193 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/join.hpp +145 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/predicate.hpp +475 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/predicate_facade.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/regex.hpp +646 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/regex_find_format.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/replace.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/sequence_traits.hpp +0 -73
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/split.hpp +163 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/std/list_traits.hpp +68 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/std/rope_traits.hpp +81 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/std/slist_traits.hpp +69 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/std/string_traits.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/std_containers_traits.hpp +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/trim.hpp +398 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/trim_all.hpp +217 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/align.hpp +20 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/address.hpp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/align.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/align_cxx11.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/is_alignment.hpp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/aligned_storage.hpp +1 -164
- data/src/cxx_supportlib/vendor-modified/boost/assert.hpp +33 -84
- data/src/cxx_supportlib/vendor-modified/boost/atomic.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic.hpp +83 -231
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic_flag.hpp +33 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/capabilities.hpp +161 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_flag.hpp +70 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_template.hpp +774 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/bitwise_cast.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_alpha.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_arm.hpp +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_atomic.hpp +134 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_ppc.hpp +36 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_sparc.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_sync.hpp +62 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_x86.hpp +52 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_linux_arm.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_msvc_arm.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_msvc_x86.hpp +50 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/config.hpp +57 -36
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/int_sizes.hpp +140 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/interlocked.hpp +297 -16
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/link.hpp +58 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/lockpool.hpp +30 -76
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/operations.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/operations_fwd.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/operations_lockfree.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_cas_based.hpp +105 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_emulated.hpp +161 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_extending_cas_based.hpp +68 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_alpha.hpp +876 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_arm.hpp +973 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_atomic.hpp +395 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_ppc.hpp +802 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_sparc.hpp +240 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_sync.hpp +270 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_x86.hpp +514 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_x86_dcas.hpp +616 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_linux_arm.hpp +178 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_msvc_arm.hpp +824 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_msvc_common.hpp +38 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_msvc_x86.hpp +928 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/pause.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/platform.hpp +91 -32
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/storage_type.hpp +280 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/fences.hpp +67 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind.hpp +18 -1
- data/src/cxx_supportlib/vendor-modified/boost/bind/apply.hpp +74 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/arg.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind.hpp +507 -2
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind_mf_cc.hpp +214 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/make_adaptable.hpp +187 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn_vw.hpp +130 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/placeholders.hpp +29 -36
- data/src/cxx_supportlib/vendor-modified/boost/bind/protect.hpp +304 -0
- data/src/cxx_supportlib/vendor-modified/boost/checked_delete.hpp +13 -65
- data/src/cxx_supportlib/vendor-modified/boost/chrono/config.hpp +9 -13
- data/src/cxx_supportlib/vendor-modified/boost/chrono/duration.hpp +10 -4
- data/src/cxx_supportlib/vendor-modified/boost/concept/assert.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/concept/detail/concept_def.hpp +0 -17
- data/src/cxx_supportlib/vendor-modified/boost/concept/detail/general.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/concept/usage.hpp +0 -8
- data/src/cxx_supportlib/vendor-modified/boost/concept_check.hpp +25 -26
- data/src/cxx_supportlib/vendor-modified/boost/config.hpp +9 -12
- data/src/cxx_supportlib/vendor-modified/boost/config/auto_link.hpp +17 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/borland.hpp +36 -6
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang.hpp +135 -14
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/codegear.hpp +41 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/common_edg.hpp +48 -9
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/cray.hpp +33 -5
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/digitalmars.hpp +36 -16
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc.hpp +121 -87
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc_xml.hpp +39 -5
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/hp_acc.hpp +13 -9
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/intel.hpp +327 -64
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/metrowerks.hpp +44 -10
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/mpw.hpp +38 -4
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/nvcc.hpp +0 -12
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/pathscale.hpp +36 -3
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/pgi.hpp +37 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/sunpro_cc.hpp +63 -23
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/vacpp.hpp +44 -13
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +102 -128
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp.hpp +258 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/cloudabi.hpp +18 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/haiku.hpp +31 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/linux.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/macos.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/solaris.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/select_compiler_config.hpp +43 -7
- data/src/cxx_supportlib/vendor-modified/boost/config/select_platform_config.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/select_stdlib_config.hpp +28 -8
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/dinkumware.hpp +58 -15
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcomo.hpp +13 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcpp.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libstdcpp3.hpp +129 -14
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/modena.hpp +13 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/msl.hpp +13 -9
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/roguewave.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/sgi.hpp +14 -4
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/stlport.hpp +13 -8
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/vacpp.hpp +13 -3
- data/src/cxx_supportlib/vendor-modified/boost/config/suffix.hpp +159 -85
- data/src/cxx_supportlib/vendor-modified/boost/config/user.hpp +15 -6
- data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +351 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +371 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +283 -213
- data/src/cxx_supportlib/vendor-modified/boost/container/container_fwd.hpp +195 -51
- data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +840 -625
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool.hpp +166 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool_impl.hpp +24 -13
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/addressof.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +289 -181
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/algorithm.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_helpers.hpp +60 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_lib.h +314 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/allocation_type.hpp +11 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/allocator_version_traits.hpp +24 -25
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/auto_link.hpp +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/block_list.hpp +139 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/block_slist.hpp +157 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +74 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_begin.hpp +16 -14
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_end.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/construct_in_place.hpp +62 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +1142 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/destroyers.hpp +61 -48
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/dispatch_uses_allocator.hpp +293 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/dlmalloc.hpp +103 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +335 -408
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/function_detector.hpp +9 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/hash_table.hpp +383 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterator.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterator_to_raw_pointer.hpp +58 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterators.hpp +300 -83
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/math_functions.hpp +13 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/min_max.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/minimal_char_traits_header.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mpl.hpp +45 -118
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/multiallocation_chain.hpp +22 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mutex.hpp +288 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/next_capacity.hpp +75 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_alloc_holder.hpp +115 -109
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool.hpp +157 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool_impl.hpp +33 -23
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +62 -89
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/placement_new.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common.hpp +11 -6
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common_alloc.hpp +102 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_resource.hpp +191 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/singleton.hpp +121 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/std_fwd.hpp +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/to_raw_pointer.hpp +33 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/transform_iterator.hpp +17 -13
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +646 -595
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/type_traits.hpp +44 -184
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/value_init.hpp +7 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/variadic_templates_tools.hpp +9 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/version_type.hpp +23 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +50 -15
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +627 -287
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +608 -657
- data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +395 -376
- data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +616 -625
- data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +179 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +344 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +80 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/deque.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/flat_map.hpp +63 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/flat_set.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/global_resource.hpp +66 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/list.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/map.hpp +63 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/memory_resource.hpp +101 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/monotonic_buffer_resource.hpp +180 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/polymorphic_allocator.hpp +166 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/pool_options.hpp +52 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp +193 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/set.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/slist.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/small_vector.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/stable_vector.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/string.hpp +48 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/synchronized_pool_resource.hpp +138 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/unsynchronized_pool_resource.hpp +194 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/vector.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/scoped_allocator.hpp +423 -1019
- data/src/cxx_supportlib/vendor-modified/boost/container/scoped_allocator_fwd.hpp +23 -35
- data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +520 -626
- data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +416 -407
- data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +574 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +711 -470
- data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +314 -145
- data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +477 -282
- data/src/cxx_supportlib/vendor-modified/boost/container/throw_exception.hpp +63 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator.hpp +169 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator_fwd.hpp +73 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +1660 -945
- data/src/cxx_supportlib/vendor-modified/boost/core/addressof.hpp +162 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/checked_delete.hpp +69 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/demangle.hpp +128 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/enable_if.hpp +128 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/explicit_operator_bool.hpp +154 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/ignore_unused.hpp +70 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/is_same.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +171 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test_trait.hpp +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/no_exceptions_support.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/noncopyable.hpp +48 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/null_deleter.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/ref.hpp +301 -0
- data/src/cxx_supportlib/vendor-modified/boost/{detail/scoped_enum_emulation.hpp → core/scoped_enum.hpp} +19 -164
- data/src/cxx_supportlib/vendor-modified/boost/core/swap.hpp +60 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/typeinfo.hpp +151 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/underlying_type.hpp +79 -0
- data/src/cxx_supportlib/vendor-modified/boost/cstdint.hpp +132 -95
- data/src/cxx_supportlib/vendor-modified/boost/current_function.hpp +8 -5
- data/src/cxx_supportlib/vendor-modified/boost/date_time/adjust_functors.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/c_local_time_adjustor.hpp +69 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/c_time.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/compiler_config.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/constrained_value.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_clock_device.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_defs.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_duration.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_duration_types.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_facet.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_format_simple.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_formatting.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_formatting_limited.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_formatting_locales.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_generator_formatter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_generator_parser.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_generators.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_iterator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_names_put.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_parsing.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/dst_rules.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/dst_transition_generators.hpp +75 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/filetime_functions.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/format_date_parser.hpp +11 -7
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/conversion.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/formatters.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/formatters_limited.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_calendar.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_date.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_day.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_day_of_year.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_duration.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_duration_types.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_facet.hpp +352 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_month.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_serialize.hpp +517 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_weekday.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_year.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_ymd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/gregorian.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/gregorian_io.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/gregorian_types.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/parsers.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian_calendar.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian_calendar.ipp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/date_time/int_adapter.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/iso_format.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time/conversion.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time/custom_time_zone.hpp +169 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time/date_duration_operators.hpp +115 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time/dst_transition_day_rules.hpp +77 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time/local_date_time.hpp +528 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time/local_time.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time/local_time_io.hpp +184 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time/local_time_types.hpp +52 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time/posix_time_zone.hpp +474 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time/tz_database.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time_adjustor.hpp +218 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/local_timezone_defs.hpp +193 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/locale_config.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/microsec_time_clock.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/date_time/parse_format_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/period.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/period_formatter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/period_parser.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/conversion.hpp +9 -1
- 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.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/posix_time_config.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/posix_time_duration.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/posix_time_io.hpp +1 -4
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/posix_time_legacy_io.hpp +153 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/posix_time_system.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/ptime.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/time_formatters.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/time_formatters_limited.hpp +212 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/time_parsers.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/time_period.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/time_serialize.hpp +201 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/special_defs.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/special_values_formatter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/string_convert.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/date_time/string_parse_tree.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/strings_from_facet.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_clock.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_defs.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_duration.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_facet.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_formatting_streams.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_iterator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_parsing.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_resolution_traits.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_system_counted.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_system_split.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_zone_base.hpp +99 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_zone_names.hpp +98 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/tz_db_base.hpp +396 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/wrapping_int.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/year_month_day.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/detail/basic_pointerbuf.hpp +139 -0
- data/src/cxx_supportlib/vendor-modified/boost/detail/container_fwd.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/detail/endian.hpp +3 -118
- data/src/cxx_supportlib/vendor-modified/boost/detail/fenv.hpp +30 -3
- data/src/cxx_supportlib/vendor-modified/boost/detail/indirect_traits.hpp +0 -283
- data/src/cxx_supportlib/vendor-modified/boost/detail/iterator.hpp +9 -477
- data/src/cxx_supportlib/vendor-modified/boost/detail/no_exceptions_support.hpp +12 -82
- data/src/cxx_supportlib/vendor-modified/boost/detail/reference_content.hpp +0 -21
- data/src/cxx_supportlib/vendor-modified/boost/detail/sp_typeinfo.hpp +8 -107
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/clone_current_exception.hpp +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/exception_ptr.hpp +8 -3
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/type_info.hpp +7 -9
- data/src/cxx_supportlib/vendor-modified/boost/exception/diagnostic_information.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/exception/exception.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/foreach.hpp +11 -12
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/gen_maybe_include.pl +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/function/function0.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/function/function1.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/function/function10.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/function/function2.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/function/function3.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/function/function4.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/function/function5.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/function/function6.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/function/function7.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/function/function8.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/function/function9.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/function/function_base.hpp +6 -24
- data/src/cxx_supportlib/vendor-modified/boost/function/function_fwd.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/function/function_template.hpp +35 -30
- data/src/cxx_supportlib/vendor-modified/boost/function/function_typeof.hpp +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/function/gen_function_N.pl +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/functional/hash/detail/float_functions.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/functional/hash/detail/hash_float.hpp +22 -28
- data/src/cxx_supportlib/vendor-modified/boost/functional/hash/detail/limits.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/functional/hash/extensions.hpp +5 -66
- data/src/cxx_supportlib/vendor-modified/boost/functional/hash/hash.hpp +77 -48
- data/src/cxx_supportlib/vendor-modified/boost/functional/hash/hash_fwd.hpp +3 -7
- data/src/cxx_supportlib/vendor-modified/boost/functional/hash_fwd.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/get_pointer.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/integer.hpp +25 -24
- data/src/cxx_supportlib/vendor-modified/boost/integer/common_factor_ct.hpp +102 -0
- data/src/cxx_supportlib/vendor-modified/boost/integer_fwd.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/integer_traits.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/any_hook.hpp +47 -55
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avl_set.hpp +655 -2197
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avl_set_hook.hpp +16 -22
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree.hpp +376 -1605
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree_algorithms.hpp +329 -601
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bs_set.hpp +982 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bs_set_hook.hpp +17 -27
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree.hpp +2101 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/{detail/tree_algorithms.hpp → bstree_algorithms.hpp} +973 -684
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_list_algorithms.hpp +121 -66
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_slist_algorithms.hpp +30 -28
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/derivation_value_traits.hpp +22 -15
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/algo_type.hpp +50 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/algorithm.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/any_node_and_algorithms.hpp +48 -61
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/array_initializer.hpp +95 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/assert.hpp +6 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/avltree_node.hpp +19 -24
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/bstree_algorithms_base.hpp +184 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/common_slist_algorithms.hpp +104 -8
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/config_begin.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/config_end.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/default_header_holder.hpp +69 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/ebo_functor_holder.hpp +235 -39
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/empty_node_checker.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/equal_to_value.hpp +48 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/exception_disposer.hpp +88 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/function_detector.hpp +8 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/generic_hook.hpp +107 -95
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/get_value_traits.hpp +222 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/has_member_function_callable_with.hpp +279 -296
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hashtable_node.hpp +122 -85
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hook_traits.hpp +186 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/iiterator.hpp +121 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/is_stateful_value_traits.hpp +9 -5
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/iterator.hpp +155 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/key_nodeptr_comp.hpp +99 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/list_iterator.hpp +133 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/list_node.hpp +14 -139
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/math.hpp +295 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/minimal_less_equal_header.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/minimal_pair_header.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/mpl.hpp +160 -337
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/node_cloner_disposer.hpp +105 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/node_holder.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/node_to_value.hpp +130 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/parent_from_member.hpp +34 -11
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/pointer_element.hpp +168 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/rbtree_node.hpp +22 -19
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/reverse_iterator.hpp +144 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/simple_disposers.hpp +50 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/size_holder.hpp +84 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/slist_iterator.hpp +124 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/slist_node.hpp +14 -117
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/std_fwd.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/to_raw_pointer.hpp +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/transform_iterator.hpp +18 -20
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_iterator.hpp +171 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_node.hpp +13 -133
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_value_compare.hpp +89 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/uncast.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/workaround.hpp +22 -6
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +2006 -1615
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/intrusive_fwd.hpp +450 -229
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/linear_slist_algorithms.hpp +17 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/link_mode.hpp +21 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +253 -282
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/list_hook.hpp +17 -20
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/member_value_traits.hpp +21 -7
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/options.hpp +94 -648
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pack_options.hpp +374 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/parent_from_member.hpp +10 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_plus_bits.hpp +16 -8
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_rebind.hpp +188 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_traits.hpp +97 -44
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/priority_compare.hpp +29 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree.hpp +366 -1592
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree_algorithms.hpp +297 -639
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/set.hpp +619 -2187
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/set_hook.hpp +16 -22
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sg_set.hpp +661 -2252
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree.hpp +468 -1493
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree_algorithms.hpp +163 -594
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +326 -307
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist_hook.hpp +16 -21
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splay_set.hpp +686 -2238
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree.hpp +425 -1575
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree_algorithms.hpp +422 -703
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap.hpp +440 -1122
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_algorithms.hpp +158 -406
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_set.hpp +558 -2257
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/trivial_value_traits.hpp +14 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set.hpp +476 -1611
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set_hook.hpp +36 -27
- data/src/cxx_supportlib/vendor-modified/boost/iterator.hpp +3 -42
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/config_def.hpp +4 -13
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/config_undef.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/enable_if.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/facade_iterator_category.hpp +15 -22
- data/src/cxx_supportlib/vendor-modified/boost/iterator/interoperable.hpp +8 -4
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_adaptor.hpp +59 -64
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_categories.hpp +77 -50
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_concepts.hpp +13 -22
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_facade.hpp +318 -212
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_traits.hpp +17 -49
- data/src/cxx_supportlib/vendor-modified/boost/iterator/{detail/minimum_category.hpp → minimum_category.hpp} +24 -45
- data/src/cxx_supportlib/vendor-modified/boost/iterator/reverse_iterator.hpp +10 -5
- data/src/cxx_supportlib/vendor-modified/boost/iterator/transform_iterator.hpp +17 -18
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp +29 -2649
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/bad_lexical_cast.hpp +101 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical.hpp +498 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +787 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +194 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/inf_nan.hpp +197 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/is_character.hpp +58 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_char_constants.hpp +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +294 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/widest_char.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/try_lexical_convert.hpp +212 -0
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/c_regex_traits.cpp +24 -11
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/cpp_regex_traits.cpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/cregex.cpp +40 -40
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/posix_api.cpp +14 -17
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/regex.cpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/regex_raw_buffer.cpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/regex_traits_defaults.cpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/static_mutex.cpp +8 -4
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/wc_regex_traits.cpp +24 -11
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/wide_posix_api.cpp +11 -14
- data/src/cxx_supportlib/vendor-modified/boost/libs/system/src/error_code.cpp +3 -420
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/future.cpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/once.cpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/once_atomic.cpp +0 -6
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/thread.cpp +173 -77
- data/src/cxx_supportlib/vendor-modified/boost/math/policies/policy.hpp +83 -33
- data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/detail/fp_traits.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/fpclassify.hpp +42 -12
- data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/math_fwd.hpp +196 -18
- data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/sign.hpp +52 -8
- data/src/cxx_supportlib/vendor-modified/boost/math/tools/config.hpp +111 -13
- data/src/cxx_supportlib/vendor-modified/boost/math/tools/promotion.hpp +40 -8
- data/src/cxx_supportlib/vendor-modified/boost/math/tools/real_cast.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/math/tools/user.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/memory_order.hpp +9 -5
- data/src/cxx_supportlib/vendor-modified/boost/move/adl_move_swap.hpp +233 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algorithm.hpp +10 -3
- data/src/cxx_supportlib/vendor-modified/boost/move/core.hpp +223 -54
- data/src/cxx_supportlib/vendor-modified/boost/move/default_delete.hpp +201 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/config_begin.hpp +6 -10
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/config_end.hpp +2 -10
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/fwd_macros.hpp +661 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/iterator_traits.hpp +73 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils.hpp +468 -62
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils_core.hpp +120 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/move_helpers.hpp +206 -129
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/std_ns_begin.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/std_ns_end.hpp +14 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +1078 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/unique_ptr_meta_utils.hpp +591 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/workaround.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/iterator.hpp +33 -19
- data/src/cxx_supportlib/vendor-modified/boost/move/make_unique.hpp +237 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/move.hpp +9 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/traits.hpp +30 -95
- data/src/cxx_supportlib/vendor-modified/boost/move/unique_ptr.hpp +871 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/utility.hpp +53 -98
- data/src/cxx_supportlib/vendor-modified/boost/move/utility_core.hpp +317 -0
- data/src/cxx_supportlib/vendor-modified/boost/mpl/O1_size.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/O1_size_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/accumulate.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/advance.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/advance_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/alias.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/always.hpp +6 -7
- data/src/cxx_supportlib/vendor-modified/boost/mpl/and.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/mpl/apply.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/apply_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/apply_wrap.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/arg.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/arg_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/arithmetic.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/as_sequence.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/assert.hpp +6 -5
- data/src/cxx_supportlib/vendor-modified/boost/mpl/at.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/at_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/O1_size_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/adl_barrier.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/advance_backward.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/advance_forward.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/apply_1st.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/arg_typedef.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/arithmetic_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/arity.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/arity_spec.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/at_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/back_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/basic_bind.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/begin_end_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/clear_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/common_name_wknd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/comparison_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/adl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/arrays.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/bcc.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/bind.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/compiler.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/ctps.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/dependent_nttp.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/dmc_ambiguous_ctps.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/dtp.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/eti.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/forwarding.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/gcc.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/gpu.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/has_apply.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/has_xxx.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/integral.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/intel.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/lambda.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/msvc.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/msvc_typename.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/nttp.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/operators.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/overload_resolution.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/pp_counter.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/preprocessor.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/static_constant.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/ttp.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/typeof.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/use_preprocessed.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/workaround.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/contains_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/count_args.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/count_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/empty_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/erase_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/erase_key_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/filter_iter.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/fold_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/fold_impl_body.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/fold_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/fold_pred.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/front_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/full_lambda.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/has_apply.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/has_begin.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/has_key_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/has_rebind.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/has_size.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/has_tag.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/has_type.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/include_preprocessed.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/insert_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/insert_range_impl.hpp +22 -19
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/inserter_algorithm.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/integral_wrapper.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/is_msvc_eti_arg.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/iter_apply.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/iter_fold_if_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/iter_fold_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/iter_push_front.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/joint_iter.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/lambda_arity_param.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/lambda_no_ctps.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/lambda_spec.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/lambda_support.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/largest_int.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/logical_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/msvc_dtw.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/msvc_eti_base.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/msvc_is_class.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/msvc_never_true.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/msvc_type.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/na.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/na_assert.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/na_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/na_spec.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/nested_type_wknd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/nttp_decl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/numeric_cast_utils.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/numeric_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/order_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/overload_names.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/partition_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/pop_back_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/pop_front_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessor/add.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessor/def_params_tail.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessor/default_params.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessor/enum.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessor/ext_params.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessor/filter_params.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessor/is_seq.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessor/params.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessor/partial_spec_params.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessor/range.hpp +11 -4
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessor/repeat.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessor/sub.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessor/token_equal.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessor/tuple.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/ptr_to_ref.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/push_back_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/push_front_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/range_c/O1_size.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/range_c/back.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/range_c/empty.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/range_c/front.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/range_c/iterator.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/range_c/size.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/range_c/tag.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/reverse_fold_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/reverse_fold_impl_body.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/reverse_iter_fold_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/sequence_wrapper.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/shift_op.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/single_element_iter.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/size_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/sort_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/static_cast.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/template_arity.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/template_arity_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/test.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/test/assert.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/test/data.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/test/test_case.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/traits_lambda_spec.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/transform_iter.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/type_wrapper.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/unwrap.hpp +7 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/value_wknd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/yes_no.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/back.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/back_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/back_inserter.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/base.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/begin.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/begin_end.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/begin_end_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/bind.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/bind_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/bitand.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/mpl/bitor.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/mpl/bitwise.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/bitxor.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/bool.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/mpl/bool_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/clear.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/clear_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/comparison.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/contains.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/contains_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/copy.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/copy_if.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/count.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/count_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/count_if.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/deque.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/deref.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/distance.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/distance_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/divides.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/empty.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/empty_base.hpp +13 -9
- data/src/cxx_supportlib/vendor-modified/boost/mpl/empty_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/empty_sequence.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/mpl/end.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/equal.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/equal_to.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/erase.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/erase_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/erase_key.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/erase_key_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/eval_if.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/mpl/filter_view.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/find.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/find_if.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/fold.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/for_each.hpp +11 -4
- data/src/cxx_supportlib/vendor-modified/boost/mpl/front.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/front_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/front_inserter.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/greater.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/greater_equal.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/has_key.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/has_key_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/has_xxx.hpp +12 -5
- data/src/cxx_supportlib/vendor-modified/boost/mpl/identity.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/if.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/index_if.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/index_of.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/inherit.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/inherit_linearly.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/insert.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/insert_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/insert_range.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/insert_range_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/inserter.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/int.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/int_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/integral_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/integral_c_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/integral_c_tag.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/is_placeholder.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/is_sequence.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/iter_fold.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/iter_fold_if.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/iterator_category.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/iterator_range.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/iterator_tags.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/joint_view.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/key_type.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/key_type_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/lambda.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/lambda_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/less.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/less_equal.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/limits/arity.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/limits/list.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/limits/map.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/limits/set.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/limits/unrolling.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/limits/vector.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/aux_/O1_size.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/aux_/begin_end.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/aux_/clear.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/aux_/empty.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/aux_/front.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/aux_/include_preprocessed.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/aux_/item.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/aux_/iterator.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/aux_/numbered.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/aux_/numbered_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/aux_/pop_front.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/aux_/push_back.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/aux_/push_front.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/aux_/size.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/aux_/tag.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/list0.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/list0_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/list10.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/list10_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/list20.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/list20_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/list30.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/list30_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/list40.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/list40_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/list50.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list/list50_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/list_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/logical.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/long.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/long_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/lower_bound.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/at_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/begin_end_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/clear_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/contains_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/empty_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/erase_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/erase_key_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/has_key_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/include_preprocessed.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/insert_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/insert_range_impl.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/item.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/iterator.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/key_type_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/map0.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/numbered.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/size_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/tag.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/value_type_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/map0.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/map10.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/map20.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/map30.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/map40.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/map/map50.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/math/fixed_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/math/is_even.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/math/rational_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/max.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/max_element.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/min.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/min_element.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/min_max.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/minus.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/modulus.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/multiplies.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/multiset/aux_/count_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/multiset/aux_/insert_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/multiset/aux_/item.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/multiset/aux_/multiset0.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/multiset/aux_/tag.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/multiset/multiset0.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/negate.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/next.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/next_prior.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/not.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/not_equal_to.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/numeric_cast.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/or.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/mpl/order.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/order_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/pair.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/pair_view.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/partition.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/placeholders.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/plus.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/pop_back.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/pop_back_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/pop_front.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/pop_front_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/print.hpp +7 -6
- data/src/cxx_supportlib/vendor-modified/boost/mpl/prior.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/protect.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/push_back.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/push_back_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/push_front.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/push_front_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/quote.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/range_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/remove.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/remove_if.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/replace.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/replace_if.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/reverse.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/reverse_fold.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/reverse_iter_fold.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/same_as.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/sequence_tag.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/sequence_tag_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/at_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/begin_end_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/clear_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/empty_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/erase_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/erase_key_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/has_key_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/include_preprocessed.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/insert_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/insert_range_impl.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/item.hpp +8 -6
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/iterator.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/key_type_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/numbered.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/numbered_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/set0.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/size_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/tag.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/value_type_impl.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/set0.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/set0_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/set10.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/set10_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/set20.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/set20_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/set30.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/set30_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/set40.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/set40_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/set50.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set/set50_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/set_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/shift_left.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/shift_right.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/single_view.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/size.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/size_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/size_t.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/size_t_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/sizeof.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/sort.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/stable_partition.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/string.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/mpl/switch.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/tag.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/times.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/transform.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/transform_view.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/unique.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/unpack_args.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/upper_bound.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/value_type.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/value_type_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/O1_size.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/at.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/back.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/begin_end.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/clear.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/empty.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/front.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/include_preprocessed.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/item.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/iterator.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/numbered.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/numbered_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/pop_back.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/pop_front.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/push_back.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/push_front.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/size.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/tag.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/vector0.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/vector0.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/vector0_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/vector10.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/vector10_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/vector20.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/vector20_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/vector30.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/vector30_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/vector40.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/vector40_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/vector50.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/vector50_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector_c.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/void.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/void_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/zip_view.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/next_prior.hpp +118 -4
- data/src/cxx_supportlib/vendor-modified/boost/noncopyable.hpp +12 -43
- data/src/cxx_supportlib/vendor-modified/boost/none.hpp +32 -1
- data/src/cxx_supportlib/vendor-modified/boost/none_t.hpp +18 -2
- data/src/cxx_supportlib/vendor-modified/boost/operators.hpp +9 -37
- data/src/cxx_supportlib/vendor-modified/boost/optional/bad_optional_access.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp +660 -84
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional_fwd.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional_io.hpp +94 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/arg_list.hpp +4 -27
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/cast.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/parenthesized_type.hpp +0 -84
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/set.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/tagged_argument.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/unwrap_cv_reference.hpp +0 -6
- data/src/cxx_supportlib/vendor-modified/boost/parameter/binding.hpp +2 -28
- data/src/cxx_supportlib/vendor-modified/boost/parameter/keyword.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/parameter/name.hpp +5 -15
- data/src/cxx_supportlib/vendor-modified/boost/parameter/preprocessor.hpp +6 -107
- data/src/cxx_supportlib/vendor-modified/boost/parameter/value_type.hpp +2 -28
- data/src/cxx_supportlib/vendor-modified/boost/pool/detail/mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/pool/pool.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/predef.h +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture.h +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/alpha.h +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/arm.h +70 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/blackfin.h +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/convex.h +65 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/ia64.h +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/m68k.h +82 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/mips.h +73 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/parisc.h +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/ppc.h +72 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/pyramid.h +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/rs6k.h +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/sparc.h +54 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/superh.h +67 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/sys370.h +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/sys390.h +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/x86.h +38 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/x86/32.h +87 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/x86/64.h +50 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/z.h +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler.h +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/borland.h +63 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/clang.h +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/comeau.h +61 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/compaq.h +66 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/diab.h +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/digitalmars.h +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/dignus.h +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/edg.h +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/ekopath.h +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/gcc.h +68 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/gcc_xml.h +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/greenhills.h +66 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/hp_acc.h +61 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/iar.h +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/ibm.h +72 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/intel.h +65 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/kai.h +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/llvm.h +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/metaware.h +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/metrowerks.h +77 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/microtec.h +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/mpw.h +63 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/palm.h +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/pgi.h +60 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/sgi_mipspro.h +66 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/sunpro.h +76 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/tendra.h +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/visualc.h +91 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/watcom.h +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/detail/_cassert.h +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/detail/_exception.h +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/detail/comp_detected.h +10 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/detail/endian_compat.h +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/detail/os_detected.h +10 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/detail/platform_detected.h +10 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/detail/test.h +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/detail/test_def.h +71 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware.h +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd.h +107 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/arm.h +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/arm/versions.h +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/ppc.h +69 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/ppc/versions.h +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/x86.h +123 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/x86/versions.h +129 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/x86_amd.h +87 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/x86_amd/versions.h +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/language.h +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/language/objc.h +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/language/stdc.h +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/language/stdcpp.h +121 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library.h +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/c.h +20 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/c/_prefix.h +13 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/c/gnu.h +61 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/c/uc.h +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/c/vms.h +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/c/zos.h +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std.h +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/_prefix.h +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/cxx.h +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/dinkumware.h +52 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/libcomo.h +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/modena.h +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/msl.h +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/roguewave.h +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/sgi.h +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/stdcpp3.h +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/stlport.h +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/vacpp.h +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/make.h +89 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os.h +33 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/aix.h +66 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/amigaos.h +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/android.h +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/beos.h +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/bsd.h +103 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/bsd/bsdi.h +48 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/bsd/dragonfly.h +50 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/bsd/free.h +60 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/bsd/net.h +84 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/bsd/open.h +171 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/cygwin.h +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/haiku.h +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/hpux.h +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/ios.h +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/irix.h +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/linux.h +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/macos.h +65 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/os400.h +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/qnxnto.h +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/solaris.h +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/unix.h +76 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/vms.h +52 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/windows.h +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/other.h +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/other/endian.h +204 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform.h +21 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/mingw.h +69 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_desktop.h +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_phone.h +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_runtime.h +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_store.h +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/version.h +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/version_number.h +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/dec.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/array/detail/get_data.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/array/push_back.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/array/push_front.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/array/to_list.hpp +17 -3
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/array/to_seq.hpp +16 -3
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/array/to_tuple.hpp +12 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/config/config.hpp +11 -12
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities/detail/is_empty.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities/empty.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities/identity.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities/is_empty.hpp +17 -4
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities/is_empty_or_1.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities/is_empty_variadic.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/library.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/to_array.hpp +33 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/to_tuple.hpp +27 -4
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/punctuation.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/punctuation/detail/is_begin_parens.hpp +48 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/punctuation/is_begin_parens.hpp +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/punctuation/remove_parens.hpp +39 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/for.hpp +19 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/detail/binary_transform.hpp +10 -2
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/detail/is_empty.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/for_each.hpp +57 -10
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/for_each_i.hpp +58 -10
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/replace.hpp +18 -2
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/rest_n.hpp +19 -3
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/size.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/variadic_seq_to_seq.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple.hpp +8 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/detail/is_single_return.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/eat.hpp +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/elem.hpp +12 -2
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/insert.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/pop_back.hpp +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/pop_front.hpp +65 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/push_back.hpp +31 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/push_front.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/rem.hpp +18 -3
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/remove.hpp +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/replace.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/reverse.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/to_array.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/to_list.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/to_seq.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/detail/is_single_return.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/algorithm/equal.hpp +5 -3
- data/src/cxx_supportlib/vendor-modified/boost/range/as_literal.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/range/begin.hpp +5 -13
- data/src/cxx_supportlib/vendor-modified/boost/range/concepts.hpp +35 -15
- data/src/cxx_supportlib/vendor-modified/boost/range/config.hpp +9 -7
- data/src/cxx_supportlib/vendor-modified/boost/range/const_iterator.hpp +39 -30
- data/src/cxx_supportlib/vendor-modified/boost/range/detail/common.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/range/detail/extract_optional_type.hpp +21 -25
- data/src/cxx_supportlib/vendor-modified/boost/range/detail/has_member_size.hpp +66 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/detail/implementation_help.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/detail/msvc_has_iterator_workaround.hpp +132 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/difference_type.hpp +20 -2
- data/src/cxx_supportlib/vendor-modified/boost/range/distance.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/range/empty.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/range/end.hpp +5 -13
- data/src/cxx_supportlib/vendor-modified/boost/range/functions.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/range/has_range_iterator.hpp +83 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/iterator.hpp +36 -34
- data/src/cxx_supportlib/vendor-modified/boost/range/iterator_range_core.hpp +481 -251
- data/src/cxx_supportlib/vendor-modified/boost/range/mutable_iterator.hpp +41 -29
- data/src/cxx_supportlib/vendor-modified/boost/range/range_fwd.hpp +63 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/rbegin.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/range/rend.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/range/reverse_iterator.hpp +5 -3
- data/src/cxx_supportlib/vendor-modified/boost/range/size.hpp +30 -6
- data/src/cxx_supportlib/vendor-modified/boost/range/size_type.hpp +18 -12
- data/src/cxx_supportlib/vendor-modified/boost/range/value_type.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/abs.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/gcd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/lcm.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/sign.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/overflow_helpers.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/ratio/ratio.hpp +63 -3
- data/src/cxx_supportlib/vendor-modified/boost/ratio/ratio_fwd.hpp +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/ref.hpp +12 -184
- data/src/cxx_supportlib/vendor-modified/boost/regex/config.hpp +51 -9
- data/src/cxx_supportlib/vendor-modified/boost/regex/mfc.hpp +30 -34
- data/src/cxx_supportlib/vendor-modified/boost/regex/pattern_except.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/pending/static_mutex.hpp +10 -7
- data/src/cxx_supportlib/vendor-modified/boost/regex/pending/unicode_iterator.hpp +11 -5
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex.hpp +18 -19
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_creator.hpp +25 -38
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_parser.hpp +211 -14
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/cpp_regex_traits.hpp +161 -106
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/cregex.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/fileiter.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/instances.hpp +24 -21
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/iterator_traits.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/match_flags.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/match_results.hpp +24 -19
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/mem_block_cache.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher.hpp +46 -20
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_common.hpp +38 -14
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_non_recursive.hpp +206 -31
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_recursive.hpp +122 -16
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/primary_transform.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/protected_call.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_format.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_grep.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_iterator.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_match.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_raw_buffer.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_replace.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_search.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_split.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_token_iterator.hpp +6 -15
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_traits.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_traits_defaults.hpp +10 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_workaround.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/states.hpp +23 -3
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/sub_match.hpp +75 -71
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/u32regex_iterator.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/u32regex_token_iterator.hpp +6 -15
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/w32_regex_traits.hpp +43 -41
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/allocate_shared_array.hpp +103 -172
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/array_allocator.hpp +318 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/array_count_impl.hpp +67 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/array_traits.hpp +16 -9
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/array_utility.hpp +106 -70
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count.hpp +36 -59
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_nt.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/{atomic_count_pthreads.hpp → atomic_count_pt.hpp} +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_spin.hpp +62 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_std_atomic.hpp +60 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/operator_bool.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/shared_count.hpp +116 -10
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_convertible.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base.hpp +15 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_clang.hpp +140 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_pt.hpp +16 -15
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_std_atomic.hpp +137 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_impl.hpp +21 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_disable_deprecated.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_forward.hpp +13 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_if_array.hpp +8 -5
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_nullptr_t.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock.hpp +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_gcc_arm.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_pool.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_std_atomic.hpp +83 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/yield_k.hpp +30 -2
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/enable_shared_from_this.hpp +10 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ptr.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared_array.hpp +80 -169
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared_object.hpp +121 -118
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_ptr.hpp +10 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_array.hpp +8 -6
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_ptr.hpp +54 -12
- data/src/cxx_supportlib/vendor-modified/boost/static_assert.hpp +4 -19
- data/src/cxx_supportlib/vendor-modified/boost/swap.hpp +11 -6
- data/src/cxx_supportlib/vendor-modified/boost/system/config.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_code.ipp +467 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/error_code.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/barrier.hpp +222 -36
- data/src/cxx_supportlib/vendor-modified/boost/thread/caller_context.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/completion_latch.hpp +4 -11
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/deque_adaptor.hpp +209 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/deque_base.hpp +202 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/deque_views.hpp +165 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/detail/sync_deque_base.hpp +223 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/detail/sync_queue_base.hpp +223 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/queue_adaptor.hpp +209 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/queue_base.hpp +202 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/queue_op_status.hpp +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/queue_views.hpp +155 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/sync_bounded_queue.hpp +725 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/sync_deque.hpp +327 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/sync_priority_queue.hpp +369 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/sync_queue.hpp +335 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/sync_timed_queue.hpp +466 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/deque.hpp +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/devector.hpp +102 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/functional.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/list.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory.hpp +61 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/allocator_arg.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/allocator_traits.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/config.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/default_delete.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/pointer_traits.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/scoped_allocator.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/shared_ptr.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/unique_ptr.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/queue.hpp +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/tuple.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/vector.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/cv_status.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/config.hpp +32 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/counter.hpp +17 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/delete.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/function_wrapper.hpp +93 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/invoke.hpp +373 -120
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/invoker.hpp +762 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/is_convertible.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/memory.hpp +11 -119
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/move.hpp +116 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/nullary_function.hpp +234 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/thread.hpp +41 -16
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/thread_group.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/variadic_footer.hpp +10 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/variadic_header.hpp +19 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/exceptional_ptr.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/exceptions.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/executor.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/basic_thread_pool.hpp +318 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/detail/priority_executor_base.hpp +77 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/detail/scheduled_executor_base.hpp +66 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/executor.hpp +148 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/executor_adaptor.hpp +136 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/generic_executor_ref.hpp +213 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/inline_executor.hpp +171 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/loop_executor.hpp +205 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/scheduled_thread_pool.hpp +48 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/scheduler.hpp +271 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/scheduling_adaptor.hpp +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/serial_executor.hpp +216 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/serial_executor_cont.hpp +170 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/thread_executor.hpp +157 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/work.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/experimental/config/inline_namespace.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/experimental/exception_list.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/experimental/parallel/v1/exception_list.hpp +70 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/experimental/parallel/v1/inline_namespace.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/experimental/parallel/v2/inline_namespace.hpp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/experimental/parallel/v2/task_region.hpp +316 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/experimental/task_region.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/externally_locked.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +3327 -1705
- data/src/cxx_supportlib/vendor-modified/boost/thread/futures/future_error.hpp +98 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/{future_error_code.hpp → futures/future_error_code.hpp} +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/thread/futures/future_status.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/futures/is_future_type.hpp +21 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/futures/launch.hpp +31 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/futures/wait_for_all.hpp +74 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/futures/wait_for_any.hpp +161 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/latch.hpp +43 -15
- data/src/cxx_supportlib/vendor-modified/boost/thread/lock_types.hpp +45 -41
- data/src/cxx_supportlib/vendor-modified/boost/thread/lockable_adapter.hpp +28 -28
- data/src/cxx_supportlib/vendor-modified/boost/thread/once.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/ostream_buffer.hpp +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/poly_lockable.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/condition_variable.hpp +101 -56
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/condition_variable_fwd.hpp +141 -47
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/mutex.hpp +20 -13
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/once.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/once_atomic.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/recursive_mutex.hpp +11 -8
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/thread_data.hpp +39 -10
- data/src/cxx_supportlib/vendor-modified/boost/thread/scoped_thread.hpp +15 -11
- data/src/cxx_supportlib/vendor-modified/boost/thread/shared_mutex.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/sync_bounded_queue.hpp +2 -580
- data/src/cxx_supportlib/vendor-modified/boost/thread/sync_queue.hpp +2 -502
- data/src/cxx_supportlib/vendor-modified/boost/thread/synchronized_value.hpp +78 -11
- data/src/cxx_supportlib/vendor-modified/boost/thread/testable_mutex.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/thread_pool.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/tss.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/thread/user_scheduler.hpp +202 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/v2/shared_mutex.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/thread/v2/thread.hpp +73 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/with_lock_guard.hpp +234 -0
- data/src/cxx_supportlib/vendor-modified/boost/throw_exception.hpp +7 -5
- data/src/cxx_supportlib/vendor-modified/boost/token_functions.hpp +3 -17
- data/src/cxx_supportlib/vendor-modified/boost/token_iterator.hpp +14 -14
- data/src/cxx_supportlib/vendor-modified/boost/tuple/detail/tuple_basic.hpp +14 -5
- data/src/cxx_supportlib/vendor-modified/boost/tuple/tuple.hpp +1 -24
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/add_const.hpp +9 -10
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/add_cv.hpp +2 -9
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/add_lvalue_reference.hpp +8 -7
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/add_pointer.hpp +6 -17
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/add_reference.hpp +14 -62
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/add_rvalue_reference.hpp +5 -7
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/add_volatile.hpp +2 -9
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/aligned_storage.hpp +134 -9
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/alignment_of.hpp +9 -18
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/{detail/wrap.hpp → alignment_traits.hpp} +7 -10
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/arithmetic_traits.hpp +20 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/array_traits.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/broken_compiler_spec.hpp +9 -105
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/common_type.hpp +118 -131
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/conditional.hpp +20 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/config.hpp +5 -60
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/copy_cv.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/decay.hpp +12 -13
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/declval.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/bool_trait_def.hpp +9 -26
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/bool_trait_undef.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/common_arithmetic_type.hpp +212 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/common_type_impl.hpp +107 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/composite_member_pointer_type.hpp +113 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/composite_pointer_type.hpp +153 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/config.hpp +72 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/has_binary_operator.hpp +12 -19
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/has_postfix_operator.hpp +12 -19
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/has_prefix_operator.hpp +14 -19
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/ice_and.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/ice_eq.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/ice_not.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/ice_or.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_ptr_helper.hpp +13 -57
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_ptr_tester.hpp +13 -218
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_mem_fun_pointer_impl.hpp +13 -107
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_mem_fun_pointer_tester.hpp +15 -974
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/mp_defer.hpp +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/template_arity_spec.hpp +6 -21
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/extent.hpp +138 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/floating_point_promotion.hpp +20 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/function_traits.hpp +0 -62
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_bit_and.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_bit_and_assign.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_bit_or.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_bit_or_assign.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_bit_xor.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_bit_xor_assign.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_complement.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_dereference.hpp +31 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_divides.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_divides_assign.hpp +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_equal_to.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_greater.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_greater_equal.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_left_shift.hpp +19 -19
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_left_shift_assign.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_less.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_less_equal.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_logical_and.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_logical_not.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_logical_or.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_minus.hpp +60 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_minus_assign.hpp +65 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_modulus.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_modulus_assign.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_multiplies.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_multiplies_assign.hpp +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_negate.hpp +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_new_operator.hpp +147 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_not_equal_to.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_nothrow_assign.hpp +57 -18
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_nothrow_constructor.hpp +43 -24
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_nothrow_copy.hpp +52 -23
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_nothrow_destructor.hpp +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_operator.hpp +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_plus.hpp +54 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_plus_assign.hpp +66 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_post_decrement.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_post_increment.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_pre_decrement.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_pre_increment.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_right_shift.hpp +19 -19
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_right_shift_assign.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_assign.hpp +23 -29
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_constructor.hpp +31 -25
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_copy.hpp +34 -36
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_destructor.hpp +21 -22
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_move_assign.hpp +40 -25
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_move_constructor.hpp +45 -25
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_unary_minus.hpp +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_unary_plus.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_virtual_destructor.hpp +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/integral_constant.hpp +86 -33
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/integral_promotion.hpp +181 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/intrinsics.hpp +116 -41
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_abstract.hpp +6 -10
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_arithmetic.hpp +3 -32
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_array.hpp +12 -60
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_assignable.hpp +76 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_base_and_derived.hpp +9 -19
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_base_of.hpp +8 -20
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_base_of_tr1.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_class.hpp +17 -43
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_complex.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_compound.hpp +2 -24
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_const.hpp +8 -127
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_constructible.hpp +80 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_convertible.hpp +94 -98
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_copy_assignable.hpp +141 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_copy_constructible.hpp +187 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_default_constructible.hpp +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_destructible.hpp +60 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_empty.hpp +8 -117
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_enum.hpp +19 -42
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_final.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_float.hpp +2 -9
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_floating_point.hpp +12 -9
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_function.hpp +9 -18
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_fundamental.hpp +2 -21
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_integral.hpp +43 -37
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_lvalue_reference.hpp +8 -76
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_member_function_pointer.hpp +18 -34
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_member_object_pointer.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_member_pointer.hpp +8 -79
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_move_assignable.hpp +32 -35
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_move_constructible.hpp +43 -41
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_object.hpp +7 -32
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_pod.hpp +14 -101
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_pointer.hpp +12 -127
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_polymorphic.hpp +122 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_reference.hpp +6 -21
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_rvalue_reference.hpp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_same.hpp +4 -66
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_scalar.hpp +3 -31
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_signed.hpp +83 -60
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_stateless.hpp +8 -23
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_union.hpp +6 -32
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_unsigned.hpp +85 -57
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_virtual_base_of.hpp +105 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_void.hpp +7 -19
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_volatile.hpp +8 -115
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/make_signed.hpp +35 -57
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/make_unsigned.hpp +34 -57
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/promote.hpp +20 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/rank.hpp +86 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/reference_traits.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_all_extents.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_bounds.hpp +4 -31
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_const.hpp +8 -65
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_cv.hpp +13 -57
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_extent.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_pointer.hpp +8 -23
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_reference.hpp +5 -21
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_volatile.hpp +7 -61
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/type_identity.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/type_with_alignment.hpp +101 -239
- data/src/cxx_supportlib/vendor-modified/boost/typeof/dmc/typeof_impl.hpp +100 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode.hpp +61 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode_params.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/incr_registration_group.hpp +14 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/int_encoding.hpp +118 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/integral_template_param.hpp +80 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/modifiers.hpp +121 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/msvc/typeof_impl.hpp +283 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/pointers_data_members.hpp +38 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_functions.hpp +50 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_functions_iterate.hpp +135 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_fundamental.hpp +62 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_mem_functions.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/bitset.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/complex.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/deque.hpp +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/fstream.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/functional.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/iostream.hpp +18 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/istream.hpp +21 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/iterator.hpp +58 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/list.hpp +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/locale.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/map.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/memory.hpp +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/ostream.hpp +18 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/queue.hpp +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/set.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/sstream.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/stack.hpp +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/streambuf.hpp +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/string.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/utility.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/valarray.hpp +21 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/vector.hpp +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/template_encoding.hpp +160 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/template_template_param.hpp +149 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/type_encoding.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/type_template_param.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/typeof_impl.hpp +186 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/unsupported.hpp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector.hpp +166 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector100.hpp +321 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector150.hpp +471 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector200.hpp +621 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector50.hpp +171 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/allocate.hpp +42 -34
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/buckets.hpp +108 -56
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/equivalent.hpp +30 -24
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/extract_key.hpp +21 -16
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/table.hpp +45 -33
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/unique.hpp +21 -15
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/util.hpp +8 -2
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map.hpp +11 -6
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set.hpp +11 -6
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered_map.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/unordered_set.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/utility.hpp +21 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/addressof.hpp +11 -96
- data/src/cxx_supportlib/vendor-modified/boost/utility/base_from_member.hpp +171 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/binary.hpp +708 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/declval.hpp +5 -41
- data/src/cxx_supportlib/vendor-modified/boost/utility/detail/result_of_iterate.hpp +18 -5
- data/src/cxx_supportlib/vendor-modified/boost/utility/empty_deleter.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/enable_if.hpp +10 -112
- data/src/cxx_supportlib/vendor-modified/boost/utility/explicit_operator_bool.hpp +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/identity_type.hpp +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/in_place_factory.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/utility/result_of.hpp +25 -9
- data/src/cxx_supportlib/vendor-modified/boost/utility/string_ref.hpp +536 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/string_ref_fwd.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/swap.hpp +10 -48
- data/src/cxx_supportlib/vendor-modified/boost/utility/typed_in_place_factory.hpp +77 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/value_init.hpp +281 -0
- data/src/cxx_supportlib/vendor-modified/boost/version.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/visit_each.hpp +0 -2
- data/src/cxx_supportlib/vendor-modified/modp_b64.cpp +3 -1
- data/src/nginx_module/Configuration.c +157 -6
- data/src/nginx_module/Configuration.h +3 -1
- data/src/nginx_module/ContentHandler.c +2 -1
- data/src/nginx_module/ngx_http_passenger_module.c +27 -46
- data/src/nodejs_supportlib/phusion_passenger/log_express.js +1 -1
- data/src/ruby_supportlib/phusion_passenger.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/rack_handler.rb +102 -0
- data/src/ruby_supportlib/phusion_passenger/standalone/config_options_list.rb +20 -3
- data/src/ruby_supportlib/phusion_passenger/standalone/config_utils.rb +36 -3
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command.rb +1 -0
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/nginx_engine.rb +3 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/union_station_hooks_core/LICENSE.md +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/union_station_hooks_core/lib/union_station_hooks_core.rb +7 -0
- data/src/ruby_supportlib/phusion_passenger/vendor/union_station_hooks_core/lib/union_station_hooks_core/api.rb +28 -0
- data/src/ruby_supportlib/phusion_passenger/vendor/union_station_hooks_core/lib/union_station_hooks_core/request_reporter/misc.rb +4 -0
- data/src/ruby_supportlib/phusion_passenger/vendor/union_station_hooks_core/lib/union_station_hooks_core/spec_helper.rb +18 -0
- data/src/ruby_supportlib/phusion_passenger/vendor/union_station_hooks_core/lib/union_station_hooks_core/transaction.rb +1 -10
- data/src/ruby_supportlib/phusion_passenger/vendor/union_station_hooks_core/lib/union_station_hooks_core/version_data.rb +4 -4
- metadata +609 -62
- data/src/agent/UstRouter/DataStoreId.h +0 -184
- data/src/cxx_supportlib/vendor-copy/libuv/autom4te.cache/output.0 +0 -15374
- data/src/cxx_supportlib/vendor-copy/libuv/autom4te.cache/output.1 +0 -15374
- data/src/cxx_supportlib/vendor-copy/libuv/autom4te.cache/output.2 +0 -15374
- data/src/cxx_supportlib/vendor-copy/libuv/autom4te.cache/requests +0 -568
- data/src/cxx_supportlib/vendor-copy/libuv/autom4te.cache/traces.0 +0 -3104
- data/src/cxx_supportlib/vendor-copy/libuv/autom4te.cache/traces.1 +0 -3104
- data/src/cxx_supportlib/vendor-copy/libuv/autom4te.cache/traces.2 +0 -699
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/base.hpp +0 -585
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/cas32strong.hpp +0 -885
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/cas32weak.hpp +0 -947
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/cas64strong.hpp +0 -443
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/gcc-alpha.hpp +0 -368
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/gcc-armv6plus.hpp +0 -252
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/gcc-cas.hpp +0 -157
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/gcc-ppc.hpp +0 -2850
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/gcc-sparcv9.hpp +0 -1259
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/gcc-x86.hpp +0 -1766
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/generic-cas.hpp +0 -206
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/linux-arm.hpp +0 -189
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type-classification.hpp +0 -45
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/algorithms.hpp +0 -84
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/memory_util.hpp +0 -83
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/preprocessor.hpp +0 -232
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/utilities.hpp +0 -1141
- data/src/cxx_supportlib/vendor-modified/boost/detail/is_incrementable.hpp +0 -134
- data/src/cxx_supportlib/vendor-modified/boost/detail/is_xxx.hpp +0 -61
- data/src/cxx_supportlib/vendor-modified/boost/detail/limits.hpp +0 -449
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/attribute_noreturn.hpp +0 -17
- data/src/cxx_supportlib/vendor-modified/boost/indirect_reference.hpp +0 -43
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/clear_on_destructor_base.hpp +0 -36
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/memory_util.hpp +0 -288
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/preprocessor.hpp +0 -52
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/utilities.hpp +0 -858
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splay_set_hook.hpp +0 -292
- data/src/cxx_supportlib/vendor-modified/boost/libs/atomic/lockpool.cpp +0 -24
- data/src/cxx_supportlib/vendor-modified/boost/libs/system/src/local_free_on_destruction.hpp +0 -40
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/timeconv.inl +0 -151
- data/src/cxx_supportlib/vendor-modified/boost/math/common_factor_ct.hpp +0 -180
- data/src/cxx_supportlib/vendor-modified/boost/math_fwd.hpp +0 -108
- data/src/cxx_supportlib/vendor-modified/boost/parameter.hpp +0 -21
- data/src/cxx_supportlib/vendor-modified/boost/pointee.hpp +0 -74
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/allocate_array_helper.hpp +0 -169
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/array_deleter.hpp +0 -124
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/make_array_helper.hpp +0 -157
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/async_func.hpp +0 -571
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/common_type_imp.hpp +0 -333
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/cv_traits_impl.hpp +0 -97
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/false_result.hpp +0 -28
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/size_t_trait_def.hpp +0 -60
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/size_t_trait_undef.hpp +0 -16
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/type_trait_def.hpp +0 -67
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/type_trait_undef.hpp +0 -19
- data/src/cxx_supportlib/vendor-modified/boost/units/detail/utility.hpp +0 -104
@@ -1,59 +1,54 @@
|
|
1
1
|
//////////////////////////////////////////////////////////////////////////////
|
2
2
|
//
|
3
|
-
// (C) Copyright Ion Gaztanaga 2005-
|
3
|
+
// (C) Copyright Ion Gaztanaga 2005-2013. Distributed under the Boost
|
4
4
|
// Software License, Version 1.0. (See accompanying file
|
5
5
|
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
6
6
|
//
|
7
7
|
// See http://www.boost.org/libs/container for documentation.
|
8
8
|
//
|
9
9
|
//////////////////////////////////////////////////////////////////////////////
|
10
|
-
|
11
10
|
#ifndef BOOST_CONTAINER_FLAT_SET_HPP
|
12
11
|
#define BOOST_CONTAINER_FLAT_SET_HPP
|
13
12
|
|
14
|
-
#
|
13
|
+
#ifndef BOOST_CONFIG_HPP
|
14
|
+
# include <boost/config.hpp>
|
15
|
+
#endif
|
16
|
+
|
17
|
+
#if defined(BOOST_HAS_PRAGMA_ONCE)
|
15
18
|
# pragma once
|
16
19
|
#endif
|
17
20
|
|
18
21
|
#include <boost/container/detail/config_begin.hpp>
|
19
22
|
#include <boost/container/detail/workaround.hpp>
|
20
23
|
|
24
|
+
// container
|
25
|
+
#include <boost/container/allocator_traits.hpp>
|
21
26
|
#include <boost/container/container_fwd.hpp>
|
22
|
-
#include <
|
23
|
-
|
24
|
-
#include <memory>
|
27
|
+
#include <boost/container/new_allocator.hpp> //new_allocator
|
28
|
+
// container/detail
|
25
29
|
#include <boost/container/detail/flat_tree.hpp>
|
26
30
|
#include <boost/container/detail/mpl.hpp>
|
27
|
-
|
28
|
-
#include <boost/move/
|
31
|
+
// move
|
32
|
+
#include <boost/move/traits.hpp>
|
33
|
+
#include <boost/move/utility_core.hpp>
|
34
|
+
// move/detail
|
35
|
+
#if defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
|
36
|
+
#include <boost/move/detail/fwd_macros.hpp>
|
37
|
+
#endif
|
29
38
|
#include <boost/move/detail/move_helpers.hpp>
|
39
|
+
// intrusive/detail
|
40
|
+
#include <boost/intrusive/detail/minimal_pair_header.hpp> //pair
|
41
|
+
#include <boost/intrusive/detail/minimal_less_equal_header.hpp>//less, equal
|
42
|
+
// std
|
43
|
+
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
44
|
+
#include <initializer_list>
|
45
|
+
#endif
|
30
46
|
|
31
47
|
namespace boost {
|
32
48
|
namespace container {
|
33
49
|
|
34
|
-
/// @cond
|
35
|
-
// Forward declarations of operators < and ==, needed for friend declaration.
|
36
|
-
|
37
|
-
#ifdef BOOST_CONTAINER_DOXYGEN_INVOKED
|
38
|
-
template <class Key, class Compare = std::less<Key>, class Allocator = std::allocator<Key> >
|
39
|
-
#else
|
40
|
-
template <class Key, class Compare, class Allocator>
|
41
|
-
#endif
|
42
|
-
class flat_set;
|
43
|
-
|
44
|
-
template <class Key, class Compare, class Allocator>
|
45
|
-
inline bool operator==(const flat_set<Key,Compare,Allocator>& x,
|
46
|
-
const flat_set<Key,Compare,Allocator>& y);
|
47
|
-
|
48
|
-
template <class Key, class Compare, class Allocator>
|
49
|
-
inline bool operator<(const flat_set<Key,Compare,Allocator>& x,
|
50
|
-
const flat_set<Key,Compare,Allocator>& y);
|
51
|
-
/// @endcond
|
52
|
-
|
53
50
|
//! flat_set is a Sorted Associative Container that stores objects of type Key.
|
54
|
-
//!
|
55
|
-
//! as well as its key type, is Key. It is also a Unique Associative Container,
|
56
|
-
//! meaning that no two elements are the same.
|
51
|
+
//! It is also a Unique Associative Container, meaning that no two elements are the same.
|
57
52
|
//!
|
58
53
|
//! flat_set is similar to std::set but it's implemented like an ordered vector.
|
59
54
|
//! This means that inserting a new element into a flat_set invalidates
|
@@ -61,19 +56,27 @@ inline bool operator<(const flat_set<Key,Compare,Allocator>& x,
|
|
61
56
|
//!
|
62
57
|
//! Erasing an element of a flat_set invalidates iterators and references
|
63
58
|
//! pointing to elements that come after (their keys are bigger) the erased element.
|
59
|
+
//!
|
60
|
+
//! This container provides random-access iterators.
|
61
|
+
//!
|
62
|
+
//! \tparam Key is the type to be inserted in the set, which is also the key_type
|
63
|
+
//! \tparam Compare is the comparison functor used to order keys
|
64
|
+
//! \tparam Allocator is the allocator to be used to allocate memory for this container
|
64
65
|
#ifdef BOOST_CONTAINER_DOXYGEN_INVOKED
|
65
|
-
template <class Key, class Compare = std::less<Key>, class Allocator =
|
66
|
+
template <class Key, class Compare = std::less<Key>, class Allocator = new_allocator<Key> >
|
66
67
|
#else
|
67
68
|
template <class Key, class Compare, class Allocator>
|
68
69
|
#endif
|
69
70
|
class flat_set
|
71
|
+
///@cond
|
72
|
+
: public container_detail::flat_tree<Key, Key, container_detail::identity<Key>, Compare, Allocator>
|
73
|
+
///@endcond
|
70
74
|
{
|
71
|
-
|
75
|
+
#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
72
76
|
private:
|
73
77
|
BOOST_COPYABLE_AND_MOVABLE(flat_set)
|
74
|
-
typedef container_detail::flat_tree<Key, Key, container_detail::identity<Key>, Compare, Allocator>
|
75
|
-
|
76
|
-
/// @endcond
|
78
|
+
typedef container_detail::flat_tree<Key, Key, container_detail::identity<Key>, Compare, Allocator> base_t;
|
79
|
+
#endif //#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
77
80
|
|
78
81
|
public:
|
79
82
|
//////////////////////////////////////////////
|
@@ -85,6 +88,7 @@ class flat_set
|
|
85
88
|
typedef Key value_type;
|
86
89
|
typedef Compare key_compare;
|
87
90
|
typedef Compare value_compare;
|
91
|
+
typedef ::boost::container::allocator_traits<Allocator> allocator_traits_type;
|
88
92
|
typedef typename ::boost::container::allocator_traits<Allocator>::pointer pointer;
|
89
93
|
typedef typename ::boost::container::allocator_traits<Allocator>::const_pointer const_pointer;
|
90
94
|
typedef typename ::boost::container::allocator_traits<Allocator>::reference reference;
|
@@ -92,11 +96,11 @@ class flat_set
|
|
92
96
|
typedef typename ::boost::container::allocator_traits<Allocator>::size_type size_type;
|
93
97
|
typedef typename ::boost::container::allocator_traits<Allocator>::difference_type difference_type;
|
94
98
|
typedef Allocator allocator_type;
|
95
|
-
typedef typename BOOST_CONTAINER_IMPDEF(
|
96
|
-
typedef typename BOOST_CONTAINER_IMPDEF(
|
97
|
-
typedef typename BOOST_CONTAINER_IMPDEF(
|
98
|
-
typedef typename BOOST_CONTAINER_IMPDEF(
|
99
|
-
typedef typename BOOST_CONTAINER_IMPDEF(
|
99
|
+
typedef typename BOOST_CONTAINER_IMPDEF(base_t::stored_allocator_type) stored_allocator_type;
|
100
|
+
typedef typename BOOST_CONTAINER_IMPDEF(base_t::iterator) iterator;
|
101
|
+
typedef typename BOOST_CONTAINER_IMPDEF(base_t::const_iterator) const_iterator;
|
102
|
+
typedef typename BOOST_CONTAINER_IMPDEF(base_t::reverse_iterator) reverse_iterator;
|
103
|
+
typedef typename BOOST_CONTAINER_IMPDEF(base_t::const_reverse_iterator) const_reverse_iterator;
|
100
104
|
|
101
105
|
public:
|
102
106
|
//////////////////////////////////////////////
|
@@ -105,23 +109,30 @@ class flat_set
|
|
105
109
|
//
|
106
110
|
//////////////////////////////////////////////
|
107
111
|
|
108
|
-
//! <b>Effects</b>: Default constructs an empty
|
112
|
+
//! <b>Effects</b>: Default constructs an empty container.
|
109
113
|
//!
|
110
114
|
//! <b>Complexity</b>: Constant.
|
111
115
|
explicit flat_set()
|
112
|
-
:
|
116
|
+
: base_t()
|
113
117
|
{}
|
114
118
|
|
115
|
-
//! <b>Effects</b>: Constructs an empty
|
119
|
+
//! <b>Effects</b>: Constructs an empty container using the specified
|
116
120
|
//! comparison object and allocator.
|
117
121
|
//!
|
118
122
|
//! <b>Complexity</b>: Constant.
|
119
123
|
explicit flat_set(const Compare& comp,
|
120
124
|
const allocator_type& a = allocator_type())
|
121
|
-
:
|
125
|
+
: base_t(comp, a)
|
126
|
+
{}
|
127
|
+
|
128
|
+
//! <b>Effects</b>: Constructs an empty container using the specified allocator.
|
129
|
+
//!
|
130
|
+
//! <b>Complexity</b>: Constant.
|
131
|
+
explicit flat_set(const allocator_type& a)
|
132
|
+
: base_t(a)
|
122
133
|
{}
|
123
134
|
|
124
|
-
//! <b>Effects</b>: Constructs an empty
|
135
|
+
//! <b>Effects</b>: Constructs an empty container using the specified comparison object and
|
125
136
|
//! allocator, and inserts elements from the range [first ,last ).
|
126
137
|
//!
|
127
138
|
//! <b>Complexity</b>: Linear in N if the range [first ,last ) is already sorted using
|
@@ -130,10 +141,20 @@ class flat_set
|
|
130
141
|
flat_set(InputIterator first, InputIterator last,
|
131
142
|
const Compare& comp = Compare(),
|
132
143
|
const allocator_type& a = allocator_type())
|
133
|
-
:
|
144
|
+
: base_t(true, first, last, comp, a)
|
134
145
|
{}
|
135
146
|
|
136
|
-
//! <b>Effects</b>: Constructs an empty
|
147
|
+
//! <b>Effects</b>: Constructs an empty container using the specified
|
148
|
+
//! allocator, and inserts elements from the range [first ,last ).
|
149
|
+
//!
|
150
|
+
//! <b>Complexity</b>: Linear in N if the range [first ,last ) is already sorted using
|
151
|
+
//! comp and otherwise N logN, where N is last - first.
|
152
|
+
template <class InputIterator>
|
153
|
+
flat_set(InputIterator first, InputIterator last, const allocator_type& a)
|
154
|
+
: base_t(true, first, last, Compare(), a)
|
155
|
+
{}
|
156
|
+
|
157
|
+
//! <b>Effects</b>: Constructs an empty container using the specified comparison object and
|
137
158
|
//! allocator, and inserts elements from the ordered unique range [first ,last). This function
|
138
159
|
//! is more efficient than the normal range creation for ordered ranges.
|
139
160
|
//!
|
@@ -147,58 +168,111 @@ class flat_set
|
|
147
168
|
flat_set(ordered_unique_range_t, InputIterator first, InputIterator last,
|
148
169
|
const Compare& comp = Compare(),
|
149
170
|
const allocator_type& a = allocator_type())
|
150
|
-
:
|
171
|
+
: base_t(ordered_range, first, last, comp, a)
|
172
|
+
{}
|
173
|
+
|
174
|
+
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
175
|
+
//! <b>Effects</b>: Constructs an empty container using the specified comparison object and
|
176
|
+
//! allocator, and inserts elements from the range [il.begin(), il.end()).
|
177
|
+
//!
|
178
|
+
//! <b>Complexity</b>: Linear in N if the range [il.begin(), il.end()) is already sorted using
|
179
|
+
//! comp and otherwise N logN, where N is il.begin() - il.end().
|
180
|
+
flat_set(std::initializer_list<value_type> il, const Compare& comp = Compare(),
|
181
|
+
const allocator_type& a = allocator_type())
|
182
|
+
: base_t(true, il.begin(), il.end(), comp, a)
|
183
|
+
{}
|
184
|
+
|
185
|
+
//! <b>Effects</b>: Constructs an empty container using the specified
|
186
|
+
//! allocator, and inserts elements from the range [il.begin(), il.end()).
|
187
|
+
//!
|
188
|
+
//! <b>Complexity</b>: Linear in N if the range [il.begin(), il.end()) is already sorted using
|
189
|
+
//! comp and otherwise N logN, where N is il.begin() - il.end().
|
190
|
+
flat_set(std::initializer_list<value_type> il, const allocator_type& a)
|
191
|
+
: base_t(true, il.begin(), il.end(), Compare(), a)
|
151
192
|
{}
|
152
193
|
|
153
|
-
//! <b>Effects</b>:
|
194
|
+
//! <b>Effects</b>: Constructs an empty container using the specified comparison object and
|
195
|
+
//! allocator, and inserts elements from the ordered unique range [il.begin(), il.end()). This function
|
196
|
+
//! is more efficient than the normal range creation for ordered ranges.
|
197
|
+
//!
|
198
|
+
//! <b>Requires</b>: [il.begin(), il.end()) must be ordered according to the predicate and must be
|
199
|
+
//! unique values.
|
200
|
+
//!
|
201
|
+
//! <b>Complexity</b>: Linear in N.
|
202
|
+
//!
|
203
|
+
//! <b>Note</b>: Non-standard extension.
|
204
|
+
flat_set(ordered_unique_range_t, std::initializer_list<value_type> il,
|
205
|
+
const Compare& comp = Compare(), const allocator_type& a = allocator_type())
|
206
|
+
: base_t(ordered_range, il.begin(), il.end(), comp, a)
|
207
|
+
{}
|
208
|
+
#endif
|
209
|
+
|
210
|
+
//! <b>Effects</b>: Copy constructs the container.
|
154
211
|
//!
|
155
212
|
//! <b>Complexity</b>: Linear in x.size().
|
156
213
|
flat_set(const flat_set& x)
|
157
|
-
:
|
214
|
+
: base_t(static_cast<const base_t&>(x))
|
158
215
|
{}
|
159
216
|
|
160
|
-
//! <b>Effects</b>: Move constructs
|
217
|
+
//! <b>Effects</b>: Move constructs thecontainer. Constructs *this using x's resources.
|
161
218
|
//!
|
162
219
|
//! <b>Complexity</b>: Constant.
|
163
220
|
//!
|
164
221
|
//! <b>Postcondition</b>: x is emptied.
|
165
|
-
flat_set(BOOST_RV_REF(flat_set)
|
166
|
-
:
|
222
|
+
flat_set(BOOST_RV_REF(flat_set) x)
|
223
|
+
: base_t(BOOST_MOVE_BASE(base_t, x))
|
167
224
|
{}
|
168
225
|
|
169
|
-
//! <b>Effects</b>: Copy constructs a
|
226
|
+
//! <b>Effects</b>: Copy constructs a container using the specified allocator.
|
170
227
|
//!
|
171
228
|
//! <b>Complexity</b>: Linear in x.size().
|
172
229
|
flat_set(const flat_set& x, const allocator_type &a)
|
173
|
-
:
|
230
|
+
: base_t(static_cast<const base_t&>(x), a)
|
174
231
|
{}
|
175
232
|
|
176
|
-
//! <b>Effects</b>: Move constructs a
|
233
|
+
//! <b>Effects</b>: Move constructs a container using the specified allocator.
|
177
234
|
//! Constructs *this using x's resources.
|
178
235
|
//!
|
179
|
-
//! <b>Complexity</b>: Constant if a ==
|
180
|
-
flat_set(BOOST_RV_REF(flat_set)
|
181
|
-
:
|
236
|
+
//! <b>Complexity</b>: Constant if a == x.get_allocator(), linear otherwise
|
237
|
+
flat_set(BOOST_RV_REF(flat_set) x, const allocator_type &a)
|
238
|
+
: base_t(BOOST_MOVE_BASE(base_t, x), a)
|
182
239
|
{}
|
183
240
|
|
184
241
|
//! <b>Effects</b>: Makes *this a copy of x.
|
185
242
|
//!
|
186
243
|
//! <b>Complexity</b>: Linear in x.size().
|
187
244
|
flat_set& operator=(BOOST_COPY_ASSIGN_REF(flat_set) x)
|
188
|
-
|
189
|
-
|
190
|
-
//! <b>
|
191
|
-
//!
|
192
|
-
//!
|
193
|
-
|
194
|
-
|
245
|
+
{ return static_cast<flat_set&>(this->base_t::operator=(static_cast<const base_t&>(x))); }
|
246
|
+
|
247
|
+
//! <b>Throws</b>: If allocator_traits_type::propagate_on_container_move_assignment
|
248
|
+
//! is false and (allocation throws or value_type's move constructor throws)
|
249
|
+
//!
|
250
|
+
//! <b>Complexity</b>: Constant if allocator_traits_type::
|
251
|
+
//! propagate_on_container_move_assignment is true or
|
252
|
+
//! this->get>allocator() == x.get_allocator(). Linear otherwise.
|
253
|
+
flat_set& operator=(BOOST_RV_REF(flat_set) x)
|
254
|
+
BOOST_NOEXCEPT_IF( allocator_traits_type::is_always_equal::value
|
255
|
+
&& boost::container::container_detail::is_nothrow_move_assignable<Compare>::value )
|
256
|
+
{ return static_cast<flat_set&>(this->base_t::operator=(BOOST_MOVE_BASE(base_t, x))); }
|
257
|
+
|
258
|
+
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
259
|
+
//! <b>Effects</b>: Copy all elements from il to *this.
|
260
|
+
//!
|
261
|
+
//! <b>Complexity</b>: Linear in il.size().
|
262
|
+
flat_set& operator=(std::initializer_list<value_type> il)
|
263
|
+
{
|
264
|
+
this->clear();
|
265
|
+
this->insert(il.begin(), il.end());
|
266
|
+
return *this;
|
267
|
+
}
|
268
|
+
#endif
|
195
269
|
|
196
|
-
|
270
|
+
#ifdef BOOST_CONTAINER_DOXYGEN_INVOKED
|
271
|
+
//! <b>Effects</b>: Returns a copy of the allocator that
|
197
272
|
//! was passed to the object's constructor.
|
198
273
|
//!
|
199
274
|
//! <b>Complexity</b>: Constant.
|
200
|
-
allocator_type get_allocator() const
|
201
|
-
{ return m_flat_tree.get_allocator(); }
|
275
|
+
allocator_type get_allocator() const BOOST_NOEXCEPT_OR_NOTHROW;
|
202
276
|
|
203
277
|
//! <b>Effects</b>: Returns a reference to the internal allocator.
|
204
278
|
//!
|
@@ -207,8 +281,7 @@ class flat_set
|
|
207
281
|
//! <b>Complexity</b>: Constant.
|
208
282
|
//!
|
209
283
|
//! <b>Note</b>: Non-standard extension.
|
210
|
-
stored_allocator_type &get_stored_allocator()
|
211
|
-
{ return m_flat_tree.get_stored_allocator(); }
|
284
|
+
stored_allocator_type &get_stored_allocator() BOOST_NOEXCEPT_OR_NOTHROW;
|
212
285
|
|
213
286
|
//! <b>Effects</b>: Returns a reference to the internal allocator.
|
214
287
|
//!
|
@@ -217,46 +290,35 @@ class flat_set
|
|
217
290
|
//! <b>Complexity</b>: Constant.
|
218
291
|
//!
|
219
292
|
//! <b>Note</b>: Non-standard extension.
|
220
|
-
const stored_allocator_type &get_stored_allocator() const
|
221
|
-
{ return m_flat_tree.get_stored_allocator(); }
|
222
|
-
|
223
|
-
//////////////////////////////////////////////
|
224
|
-
//
|
225
|
-
// iterators
|
226
|
-
//
|
227
|
-
//////////////////////////////////////////////
|
293
|
+
const stored_allocator_type &get_stored_allocator() const BOOST_NOEXCEPT_OR_NOTHROW;
|
228
294
|
|
229
295
|
//! <b>Effects</b>: Returns an iterator to the first element contained in the container.
|
230
296
|
//!
|
231
297
|
//! <b>Throws</b>: Nothing.
|
232
298
|
//!
|
233
299
|
//! <b>Complexity</b>: Constant.
|
234
|
-
iterator begin()
|
235
|
-
{ return m_flat_tree.begin(); }
|
300
|
+
iterator begin() BOOST_NOEXCEPT_OR_NOTHROW;
|
236
301
|
|
237
302
|
//! <b>Effects</b>: Returns a const_iterator to the first element contained in the container.
|
238
303
|
//!
|
239
304
|
//! <b>Throws</b>: Nothing.
|
240
305
|
//!
|
241
306
|
//! <b>Complexity</b>: Constant.
|
242
|
-
const_iterator begin() const
|
243
|
-
{ return m_flat_tree.begin(); }
|
307
|
+
const_iterator begin() const BOOST_NOEXCEPT_OR_NOTHROW;
|
244
308
|
|
245
309
|
//! <b>Effects</b>: Returns an iterator to the end of the container.
|
246
310
|
//!
|
247
311
|
//! <b>Throws</b>: Nothing.
|
248
312
|
//!
|
249
313
|
//! <b>Complexity</b>: Constant.
|
250
|
-
iterator end()
|
251
|
-
{ return m_flat_tree.end(); }
|
314
|
+
iterator end() BOOST_NOEXCEPT_OR_NOTHROW;
|
252
315
|
|
253
316
|
//! <b>Effects</b>: Returns a const_iterator to the end of the container.
|
254
317
|
//!
|
255
318
|
//! <b>Throws</b>: Nothing.
|
256
319
|
//!
|
257
320
|
//! <b>Complexity</b>: Constant.
|
258
|
-
const_iterator end() const
|
259
|
-
{ return m_flat_tree.end(); }
|
321
|
+
const_iterator end() const BOOST_NOEXCEPT_OR_NOTHROW;
|
260
322
|
|
261
323
|
//! <b>Effects</b>: Returns a reverse_iterator pointing to the beginning
|
262
324
|
//! of the reversed container.
|
@@ -264,8 +326,7 @@ class flat_set
|
|
264
326
|
//! <b>Throws</b>: Nothing.
|
265
327
|
//!
|
266
328
|
//! <b>Complexity</b>: Constant.
|
267
|
-
reverse_iterator rbegin()
|
268
|
-
{ return m_flat_tree.rbegin(); }
|
329
|
+
reverse_iterator rbegin() BOOST_NOEXCEPT_OR_NOTHROW;
|
269
330
|
|
270
331
|
//! <b>Effects</b>: Returns a const_reverse_iterator pointing to the beginning
|
271
332
|
//! of the reversed container.
|
@@ -273,8 +334,7 @@ class flat_set
|
|
273
334
|
//! <b>Throws</b>: Nothing.
|
274
335
|
//!
|
275
336
|
//! <b>Complexity</b>: Constant.
|
276
|
-
const_reverse_iterator rbegin() const
|
277
|
-
{ return m_flat_tree.rbegin(); }
|
337
|
+
const_reverse_iterator rbegin() const BOOST_NOEXCEPT_OR_NOTHROW;
|
278
338
|
|
279
339
|
//! <b>Effects</b>: Returns a reverse_iterator pointing to the end
|
280
340
|
//! of the reversed container.
|
@@ -282,8 +342,7 @@ class flat_set
|
|
282
342
|
//! <b>Throws</b>: Nothing.
|
283
343
|
//!
|
284
344
|
//! <b>Complexity</b>: Constant.
|
285
|
-
reverse_iterator rend()
|
286
|
-
{ return m_flat_tree.rend(); }
|
345
|
+
reverse_iterator rend() BOOST_NOEXCEPT_OR_NOTHROW;
|
287
346
|
|
288
347
|
//! <b>Effects</b>: Returns a const_reverse_iterator pointing to the end
|
289
348
|
//! of the reversed container.
|
@@ -291,24 +350,21 @@ class flat_set
|
|
291
350
|
//! <b>Throws</b>: Nothing.
|
292
351
|
//!
|
293
352
|
//! <b>Complexity</b>: Constant.
|
294
|
-
const_reverse_iterator rend() const
|
295
|
-
{ return m_flat_tree.rend(); }
|
353
|
+
const_reverse_iterator rend() const BOOST_NOEXCEPT_OR_NOTHROW;
|
296
354
|
|
297
355
|
//! <b>Effects</b>: Returns a const_iterator to the first element contained in the container.
|
298
356
|
//!
|
299
357
|
//! <b>Throws</b>: Nothing.
|
300
358
|
//!
|
301
359
|
//! <b>Complexity</b>: Constant.
|
302
|
-
const_iterator cbegin() const
|
303
|
-
{ return m_flat_tree.cbegin(); }
|
360
|
+
const_iterator cbegin() const BOOST_NOEXCEPT_OR_NOTHROW;
|
304
361
|
|
305
362
|
//! <b>Effects</b>: Returns a const_iterator to the end of the container.
|
306
363
|
//!
|
307
364
|
//! <b>Throws</b>: Nothing.
|
308
365
|
//!
|
309
366
|
//! <b>Complexity</b>: Constant.
|
310
|
-
const_iterator cend() const
|
311
|
-
{ return m_flat_tree.cend(); }
|
367
|
+
const_iterator cend() const BOOST_NOEXCEPT_OR_NOTHROW;
|
312
368
|
|
313
369
|
//! <b>Effects</b>: Returns a const_reverse_iterator pointing to the beginning
|
314
370
|
//! of the reversed container.
|
@@ -316,8 +372,7 @@ class flat_set
|
|
316
372
|
//! <b>Throws</b>: Nothing.
|
317
373
|
//!
|
318
374
|
//! <b>Complexity</b>: Constant.
|
319
|
-
const_reverse_iterator crbegin() const
|
320
|
-
{ return m_flat_tree.crbegin(); }
|
375
|
+
const_reverse_iterator crbegin() const BOOST_NOEXCEPT_OR_NOTHROW;
|
321
376
|
|
322
377
|
//! <b>Effects</b>: Returns a const_reverse_iterator pointing to the end
|
323
378
|
//! of the reversed container.
|
@@ -325,39 +380,28 @@ class flat_set
|
|
325
380
|
//! <b>Throws</b>: Nothing.
|
326
381
|
//!
|
327
382
|
//! <b>Complexity</b>: Constant.
|
328
|
-
const_reverse_iterator crend() const
|
329
|
-
{ return m_flat_tree.crend(); }
|
330
|
-
|
331
|
-
|
332
|
-
//////////////////////////////////////////////
|
333
|
-
//
|
334
|
-
// capacity
|
335
|
-
//
|
336
|
-
//////////////////////////////////////////////
|
383
|
+
const_reverse_iterator crend() const BOOST_NOEXCEPT_OR_NOTHROW;
|
337
384
|
|
338
385
|
//! <b>Effects</b>: Returns true if the container contains no elements.
|
339
386
|
//!
|
340
387
|
//! <b>Throws</b>: Nothing.
|
341
388
|
//!
|
342
389
|
//! <b>Complexity</b>: Constant.
|
343
|
-
bool empty() const
|
344
|
-
{ return m_flat_tree.empty(); }
|
390
|
+
bool empty() const BOOST_NOEXCEPT_OR_NOTHROW;
|
345
391
|
|
346
392
|
//! <b>Effects</b>: Returns the number of the elements contained in the container.
|
347
393
|
//!
|
348
394
|
//! <b>Throws</b>: Nothing.
|
349
395
|
//!
|
350
396
|
//! <b>Complexity</b>: Constant.
|
351
|
-
size_type size() const
|
352
|
-
{ return m_flat_tree.size(); }
|
397
|
+
size_type size() const BOOST_NOEXCEPT_OR_NOTHROW;
|
353
398
|
|
354
399
|
//! <b>Effects</b>: Returns the largest possible size of the container.
|
355
400
|
//!
|
356
401
|
//! <b>Throws</b>: Nothing.
|
357
402
|
//!
|
358
403
|
//! <b>Complexity</b>: Constant.
|
359
|
-
size_type max_size() const
|
360
|
-
{ return m_flat_tree.max_size(); }
|
404
|
+
size_type max_size() const BOOST_NOEXCEPT_OR_NOTHROW;
|
361
405
|
|
362
406
|
//! <b>Effects</b>: Number of elements for which memory has been allocated.
|
363
407
|
//! capacity() is always greater than or equal to size().
|
@@ -365,8 +409,7 @@ class flat_set
|
|
365
409
|
//! <b>Throws</b>: Nothing.
|
366
410
|
//!
|
367
411
|
//! <b>Complexity</b>: Constant.
|
368
|
-
size_type capacity() const
|
369
|
-
{ return m_flat_tree.capacity(); }
|
412
|
+
size_type capacity() const BOOST_NOEXCEPT_OR_NOTHROW;
|
370
413
|
|
371
414
|
//! <b>Effects</b>: If n is less than or equal to capacity(), this call has no
|
372
415
|
//! effect. Otherwise, it is a request for allocation of additional memory.
|
@@ -377,8 +420,7 @@ class flat_set
|
|
377
420
|
//!
|
378
421
|
//! <b>Note</b>: If capacity() is less than "cnt", iterators and references to
|
379
422
|
//! to values might be invalidated.
|
380
|
-
void reserve(size_type cnt)
|
381
|
-
{ m_flat_tree.reserve(cnt); }
|
423
|
+
void reserve(size_type cnt);
|
382
424
|
|
383
425
|
//! <b>Effects</b>: Tries to deallocate the excess of memory created
|
384
426
|
// with previous allocations. The size of the vector is unchanged
|
@@ -386,8 +428,9 @@ class flat_set
|
|
386
428
|
//! <b>Throws</b>: If memory allocation throws, or Key's copy constructor throws.
|
387
429
|
//!
|
388
430
|
//! <b>Complexity</b>: Linear to size().
|
389
|
-
void shrink_to_fit()
|
390
|
-
|
431
|
+
void shrink_to_fit();
|
432
|
+
|
433
|
+
#endif // #if defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
391
434
|
|
392
435
|
//////////////////////////////////////////////
|
393
436
|
//
|
@@ -395,7 +438,7 @@ class flat_set
|
|
395
438
|
//
|
396
439
|
//////////////////////////////////////////////
|
397
440
|
|
398
|
-
#if defined(
|
441
|
+
#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) || defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
399
442
|
|
400
443
|
//! <b>Effects</b>: Inserts an object x of type Key constructed with
|
401
444
|
//! std::forward<Args>(args)... if and only if there is no element in the container
|
@@ -410,8 +453,8 @@ class flat_set
|
|
410
453
|
//!
|
411
454
|
//! <b>Note</b>: If an element is inserted it might invalidate elements.
|
412
455
|
template <class... Args>
|
413
|
-
std::pair<iterator,bool> emplace(Args
|
414
|
-
{ return
|
456
|
+
std::pair<iterator,bool> emplace(BOOST_FWD_REF(Args)... args)
|
457
|
+
{ return this->base_t::emplace_unique(boost::forward<Args>(args)...); }
|
415
458
|
|
416
459
|
//! <b>Effects</b>: Inserts an object of type Key constructed with
|
417
460
|
//! std::forward<Args>(args)... in the container if and only if there is
|
@@ -426,26 +469,24 @@ class flat_set
|
|
426
469
|
//!
|
427
470
|
//! <b>Note</b>: If an element is inserted it might invalidate elements.
|
428
471
|
template <class... Args>
|
429
|
-
iterator emplace_hint(const_iterator
|
430
|
-
{ return
|
431
|
-
|
432
|
-
#else
|
433
|
-
|
434
|
-
#define
|
435
|
-
|
436
|
-
std::pair<iterator,bool> emplace(
|
437
|
-
{ return
|
438
|
-
|
439
|
-
|
440
|
-
iterator emplace_hint(const_iterator hint
|
441
|
-
|
442
|
-
|
443
|
-
|
444
|
-
|
445
|
-
#define BOOST_PP_LOCAL_LIMITS (0, BOOST_CONTAINER_MAX_CONSTRUCTOR_PARAMETERS)
|
446
|
-
#include BOOST_PP_LOCAL_ITERATE()
|
472
|
+
iterator emplace_hint(const_iterator p, BOOST_FWD_REF(Args)... args)
|
473
|
+
{ return this->base_t::emplace_hint_unique(p, boost::forward<Args>(args)...); }
|
474
|
+
|
475
|
+
#else // !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
|
476
|
+
|
477
|
+
#define BOOST_CONTAINER_FLAT_SET_EMPLACE_CODE(N) \
|
478
|
+
BOOST_MOVE_TMPL_LT##N BOOST_MOVE_CLASS##N BOOST_MOVE_GT##N \
|
479
|
+
std::pair<iterator,bool> emplace(BOOST_MOVE_UREF##N)\
|
480
|
+
{ return this->base_t::emplace_unique(BOOST_MOVE_FWD##N); }\
|
481
|
+
\
|
482
|
+
BOOST_MOVE_TMPL_LT##N BOOST_MOVE_CLASS##N BOOST_MOVE_GT##N \
|
483
|
+
iterator emplace_hint(const_iterator hint BOOST_MOVE_I##N BOOST_MOVE_UREF##N)\
|
484
|
+
{ return this->base_t::emplace_hint_unique(hint BOOST_MOVE_I##N BOOST_MOVE_FWD##N); }\
|
485
|
+
//
|
486
|
+
BOOST_MOVE_ITERATE_0TO9(BOOST_CONTAINER_FLAT_SET_EMPLACE_CODE)
|
487
|
+
#undef BOOST_CONTAINER_FLAT_SET_EMPLACE_CODE
|
447
488
|
|
448
|
-
#endif
|
489
|
+
#endif // !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
|
449
490
|
|
450
491
|
#if defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
451
492
|
//! <b>Effects</b>: Inserts x if and only if there is no element in the container
|
@@ -503,9 +544,9 @@ class flat_set
|
|
503
544
|
//! right before p) plus insertion linear to the elements with bigger keys than x.
|
504
545
|
//!
|
505
546
|
//! <b>Note</b>: If an element is inserted it might invalidate elements.
|
506
|
-
iterator insert(const_iterator
|
547
|
+
iterator insert(const_iterator p, value_type &&x);
|
507
548
|
#else
|
508
|
-
BOOST_MOVE_CONVERSION_AWARE_CATCH_1ARG(insert, value_type, iterator, this->priv_insert, const_iterator)
|
549
|
+
BOOST_MOVE_CONVERSION_AWARE_CATCH_1ARG(insert, value_type, iterator, this->priv_insert, const_iterator, const_iterator)
|
509
550
|
#endif
|
510
551
|
|
511
552
|
//! <b>Requires</b>: first, last are not iterators into *this.
|
@@ -519,7 +560,7 @@ class flat_set
|
|
519
560
|
//! <b>Note</b>: If an element is inserted it might invalidate elements.
|
520
561
|
template <class InputIterator>
|
521
562
|
void insert(InputIterator first, InputIterator last)
|
522
|
-
{
|
563
|
+
{ this->base_t::insert_unique(first, last); }
|
523
564
|
|
524
565
|
//! <b>Requires</b>: first, last are not iterators into *this and
|
525
566
|
//! must be ordered according to the predicate and must be
|
@@ -534,20 +575,46 @@ class flat_set
|
|
534
575
|
//! <b>Note</b>: Non-standard extension. If an element is inserted it might invalidate elements.
|
535
576
|
template <class InputIterator>
|
536
577
|
void insert(ordered_unique_range_t, InputIterator first, InputIterator last)
|
537
|
-
{
|
578
|
+
{ this->base_t::insert_unique(ordered_unique_range, first, last); }
|
579
|
+
|
580
|
+
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
581
|
+
//! <b>Effects</b>: inserts each element from the range [il.begin(), il.end()) if and only
|
582
|
+
//! if there is no element with key equivalent to the key of that element.
|
583
|
+
//!
|
584
|
+
//! <b>Complexity</b>: At most N log(size()+N) (N is the distance from il.begin() to il.end())
|
585
|
+
//! search time plus N*size() insertion time.
|
586
|
+
//!
|
587
|
+
//! <b>Note</b>: If an element is inserted it might invalidate elements.
|
588
|
+
void insert(std::initializer_list<value_type> il)
|
589
|
+
{ this->base_t::insert_unique(il.begin(), il.end()); }
|
590
|
+
|
591
|
+
//! <b>Requires</b>: Range [il.begin(), il.end()) must be ordered according to the predicate
|
592
|
+
//! and must be unique values.
|
593
|
+
//!
|
594
|
+
//! <b>Effects</b>: inserts each element from the range [il.begin(), il.end()) .This function
|
595
|
+
//! is more efficient than the normal range creation for ordered ranges.
|
596
|
+
//!
|
597
|
+
//! <b>Complexity</b>: At most N log(size()+N) (N is the distance from il.begin() to il.end())
|
598
|
+
//! search time plus N*size() insertion time.
|
599
|
+
//!
|
600
|
+
//! <b>Note</b>: Non-standard extension. If an element is inserted it might invalidate elements.
|
601
|
+
void insert(ordered_unique_range_t, std::initializer_list<value_type> il)
|
602
|
+
{ this->base_t::insert_unique(ordered_unique_range, il.begin(), il.end()); }
|
603
|
+
#endif
|
604
|
+
|
605
|
+
#if defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
538
606
|
|
539
|
-
//! <b>Effects</b>: Erases the element pointed to by
|
607
|
+
//! <b>Effects</b>: Erases the element pointed to by p.
|
540
608
|
//!
|
541
609
|
//! <b>Returns</b>: Returns an iterator pointing to the element immediately
|
542
610
|
//! following q prior to the element being erased. If no such element exists,
|
543
611
|
//! returns end().
|
544
612
|
//!
|
545
|
-
//! <b>Complexity</b>: Linear to the elements with keys bigger than
|
613
|
+
//! <b>Complexity</b>: Linear to the elements with keys bigger than p
|
546
614
|
//!
|
547
615
|
//! <b>Note</b>: Invalidates elements with keys
|
548
616
|
//! not less than the erased element.
|
549
|
-
iterator erase(const_iterator
|
550
|
-
{ return m_flat_tree.erase(position); }
|
617
|
+
iterator erase(const_iterator p);
|
551
618
|
|
552
619
|
//! <b>Effects</b>: Erases all elements in the container with key equivalent to x.
|
553
620
|
//!
|
@@ -555,8 +622,7 @@ class flat_set
|
|
555
622
|
//!
|
556
623
|
//! <b>Complexity</b>: Logarithmic search time plus erasure time
|
557
624
|
//! linear to the elements with bigger keys.
|
558
|
-
size_type erase(const key_type& x)
|
559
|
-
{ return m_flat_tree.erase(x); }
|
625
|
+
size_type erase(const key_type& x);
|
560
626
|
|
561
627
|
//! <b>Effects</b>: Erases all the elements in the range [first, last).
|
562
628
|
//!
|
@@ -566,8 +632,7 @@ class flat_set
|
|
566
632
|
//!
|
567
633
|
//! <b>Complexity</b>: Logarithmic search time plus erasure time
|
568
634
|
//! linear to the elements with bigger keys.
|
569
|
-
iterator erase(const_iterator first, const_iterator last)
|
570
|
-
{ return m_flat_tree.erase(first, last); }
|
635
|
+
iterator erase(const_iterator first, const_iterator last);
|
571
636
|
|
572
637
|
//! <b>Effects</b>: Swaps the contents of *this and x.
|
573
638
|
//!
|
@@ -575,210 +640,239 @@ class flat_set
|
|
575
640
|
//!
|
576
641
|
//! <b>Complexity</b>: Constant.
|
577
642
|
void swap(flat_set& x)
|
578
|
-
|
643
|
+
BOOST_NOEXCEPT_IF( allocator_traits_type::is_always_equal::value
|
644
|
+
&& boost::container::container_detail::is_nothrow_swappable<Compare>::value );
|
579
645
|
|
580
646
|
//! <b>Effects</b>: erase(a.begin(),a.end()).
|
581
647
|
//!
|
582
648
|
//! <b>Postcondition</b>: size() == 0.
|
583
649
|
//!
|
584
650
|
//! <b>Complexity</b>: linear in size().
|
585
|
-
void clear()
|
586
|
-
{ m_flat_tree.clear(); }
|
587
|
-
|
588
|
-
//////////////////////////////////////////////
|
589
|
-
//
|
590
|
-
// observers
|
591
|
-
//
|
592
|
-
//////////////////////////////////////////////
|
651
|
+
void clear() BOOST_NOEXCEPT_OR_NOTHROW;
|
593
652
|
|
594
653
|
//! <b>Effects</b>: Returns the comparison object out
|
595
654
|
//! of which a was constructed.
|
596
655
|
//!
|
597
656
|
//! <b>Complexity</b>: Constant.
|
598
|
-
key_compare key_comp() const
|
599
|
-
{ return m_flat_tree.key_comp(); }
|
657
|
+
key_compare key_comp() const;
|
600
658
|
|
601
659
|
//! <b>Effects</b>: Returns an object of value_compare constructed out
|
602
660
|
//! of the comparison object.
|
603
661
|
//!
|
604
662
|
//! <b>Complexity</b>: Constant.
|
605
|
-
value_compare value_comp() const
|
606
|
-
{ return m_flat_tree.key_comp(); }
|
607
|
-
|
608
|
-
//////////////////////////////////////////////
|
609
|
-
//
|
610
|
-
// set operations
|
611
|
-
//
|
612
|
-
//////////////////////////////////////////////
|
663
|
+
value_compare value_comp() const;
|
613
664
|
|
614
665
|
//! <b>Returns</b>: An iterator pointing to an element with the key
|
615
666
|
//! equivalent to x, or end() if such an element is not found.
|
616
667
|
//!
|
617
668
|
//! <b>Complexity</b>: Logarithmic.
|
618
|
-
iterator find(const key_type& x)
|
619
|
-
{ return m_flat_tree.find(x); }
|
669
|
+
iterator find(const key_type& x);
|
620
670
|
|
621
|
-
//! <b>Returns</b>:
|
671
|
+
//! <b>Returns</b>: A const_iterator pointing to an element with the key
|
622
672
|
//! equivalent to x, or end() if such an element is not found.
|
623
673
|
//!
|
624
|
-
//! <b>Complexity</b>: Logarithmic.
|
625
|
-
const_iterator find(const key_type& x) const
|
626
|
-
|
674
|
+
//! <b>Complexity</b>: Logarithmic.
|
675
|
+
const_iterator find(const key_type& x) const;
|
676
|
+
|
677
|
+
//! <b>Requires</b>: size() >= n.
|
678
|
+
//!
|
679
|
+
//! <b>Effects</b>: Returns an iterator to the nth element
|
680
|
+
//! from the beginning of the container. Returns end()
|
681
|
+
//! if n == size().
|
682
|
+
//!
|
683
|
+
//! <b>Throws</b>: Nothing.
|
684
|
+
//!
|
685
|
+
//! <b>Complexity</b>: Constant.
|
686
|
+
//!
|
687
|
+
//! <b>Note</b>: Non-standard extension
|
688
|
+
iterator nth(size_type n) BOOST_NOEXCEPT_OR_NOTHROW;
|
689
|
+
|
690
|
+
//! <b>Requires</b>: size() >= n.
|
691
|
+
//!
|
692
|
+
//! <b>Effects</b>: Returns a const_iterator to the nth element
|
693
|
+
//! from the beginning of the container. Returns end()
|
694
|
+
//! if n == size().
|
695
|
+
//!
|
696
|
+
//! <b>Throws</b>: Nothing.
|
697
|
+
//!
|
698
|
+
//! <b>Complexity</b>: Constant.
|
699
|
+
//!
|
700
|
+
//! <b>Note</b>: Non-standard extension
|
701
|
+
const_iterator nth(size_type n) const BOOST_NOEXCEPT_OR_NOTHROW;
|
702
|
+
|
703
|
+
//! <b>Requires</b>: size() >= n.
|
704
|
+
//!
|
705
|
+
//! <b>Effects</b>: Returns an iterator to the nth element
|
706
|
+
//! from the beginning of the container. Returns end()
|
707
|
+
//! if n == size().
|
708
|
+
//!
|
709
|
+
//! <b>Throws</b>: Nothing.
|
710
|
+
//!
|
711
|
+
//! <b>Complexity</b>: Constant.
|
712
|
+
//!
|
713
|
+
//! <b>Note</b>: Non-standard extension
|
714
|
+
size_type index_of(iterator p) BOOST_NOEXCEPT_OR_NOTHROW;
|
715
|
+
|
716
|
+
//! <b>Requires</b>: begin() <= p <= end().
|
717
|
+
//!
|
718
|
+
//! <b>Effects</b>: Returns the index of the element pointed by p
|
719
|
+
//! and size() if p == end().
|
720
|
+
//!
|
721
|
+
//! <b>Throws</b>: Nothing.
|
722
|
+
//!
|
723
|
+
//! <b>Complexity</b>: Constant.
|
724
|
+
//!
|
725
|
+
//! <b>Note</b>: Non-standard extension
|
726
|
+
size_type index_of(const_iterator p) const BOOST_NOEXCEPT_OR_NOTHROW;
|
727
|
+
|
728
|
+
#endif // #if defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
627
729
|
|
628
730
|
//! <b>Returns</b>: The number of elements with key equivalent to x.
|
629
731
|
//!
|
630
732
|
//! <b>Complexity</b>: log(size())+count(k)
|
631
733
|
size_type count(const key_type& x) const
|
632
|
-
|
734
|
+
{ return static_cast<size_type>(this->base_t::find(x) != this->base_t::cend()); }
|
633
735
|
|
736
|
+
#if defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
634
737
|
//! <b>Returns</b>: An iterator pointing to the first element with key not less
|
635
738
|
//! than k, or a.end() if such an element is not found.
|
636
739
|
//!
|
637
740
|
//! <b>Complexity</b>: Logarithmic
|
638
|
-
iterator lower_bound(const key_type& x)
|
639
|
-
{ return m_flat_tree.lower_bound(x); }
|
741
|
+
iterator lower_bound(const key_type& x);
|
640
742
|
|
641
|
-
//! <b>Returns</b>:
|
743
|
+
//! <b>Returns</b>: A const iterator pointing to the first element with key not
|
642
744
|
//! less than k, or a.end() if such an element is not found.
|
643
745
|
//!
|
644
746
|
//! <b>Complexity</b>: Logarithmic
|
645
|
-
const_iterator lower_bound(const key_type& x) const
|
646
|
-
{ return m_flat_tree.lower_bound(x); }
|
747
|
+
const_iterator lower_bound(const key_type& x) const;
|
647
748
|
|
648
749
|
//! <b>Returns</b>: An iterator pointing to the first element with key not less
|
649
750
|
//! than x, or end() if such an element is not found.
|
650
751
|
//!
|
651
752
|
//! <b>Complexity</b>: Logarithmic
|
652
|
-
iterator upper_bound(const key_type& x)
|
653
|
-
{ return m_flat_tree.upper_bound(x); }
|
753
|
+
iterator upper_bound(const key_type& x);
|
654
754
|
|
655
|
-
//! <b>Returns</b>:
|
755
|
+
//! <b>Returns</b>: A const iterator pointing to the first element with key not
|
656
756
|
//! less than x, or end() if such an element is not found.
|
657
757
|
//!
|
658
758
|
//! <b>Complexity</b>: Logarithmic
|
659
|
-
const_iterator upper_bound(const key_type& x) const
|
660
|
-
|
759
|
+
const_iterator upper_bound(const key_type& x) const;
|
760
|
+
|
761
|
+
#endif // #if defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
661
762
|
|
662
763
|
//! <b>Effects</b>: Equivalent to std::make_pair(this->lower_bound(k), this->upper_bound(k)).
|
663
764
|
//!
|
664
765
|
//! <b>Complexity</b>: Logarithmic
|
665
766
|
std::pair<const_iterator, const_iterator> equal_range(const key_type& x) const
|
666
|
-
|
767
|
+
{ return this->base_t::lower_bound_range(x); }
|
667
768
|
|
668
769
|
//! <b>Effects</b>: Equivalent to std::make_pair(this->lower_bound(k), this->upper_bound(k)).
|
669
770
|
//!
|
670
771
|
//! <b>Complexity</b>: Logarithmic
|
671
772
|
std::pair<iterator,iterator> equal_range(const key_type& x)
|
672
|
-
|
773
|
+
{ return this->base_t::lower_bound_range(x); }
|
673
774
|
|
674
|
-
|
675
|
-
template <class K1, class C1, class A1>
|
676
|
-
friend bool operator== (const flat_set<K1,C1,A1>&, const flat_set<K1,C1,A1>&);
|
775
|
+
#if defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
677
776
|
|
678
|
-
|
679
|
-
|
777
|
+
//! <b>Effects</b>: Returns true if x and y are equal
|
778
|
+
//!
|
779
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
780
|
+
friend bool operator==(const flat_set& x, const flat_set& y);
|
680
781
|
|
681
|
-
|
682
|
-
|
683
|
-
|
684
|
-
|
782
|
+
//! <b>Effects</b>: Returns true if x and y are unequal
|
783
|
+
//!
|
784
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
785
|
+
friend bool operator!=(const flat_set& x, const flat_set& y);
|
685
786
|
|
686
|
-
|
687
|
-
|
688
|
-
|
689
|
-
|
690
|
-
};
|
787
|
+
//! <b>Effects</b>: Returns true if x is less than y
|
788
|
+
//!
|
789
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
790
|
+
friend bool operator<(const flat_set& x, const flat_set& y);
|
691
791
|
|
692
|
-
|
693
|
-
|
694
|
-
|
695
|
-
|
792
|
+
//! <b>Effects</b>: Returns true if x is greater than y
|
793
|
+
//!
|
794
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
795
|
+
friend bool operator>(const flat_set& x, const flat_set& y);
|
696
796
|
|
697
|
-
|
698
|
-
|
699
|
-
|
700
|
-
|
797
|
+
//! <b>Effects</b>: Returns true if x is equal or less than y
|
798
|
+
//!
|
799
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
800
|
+
friend bool operator<=(const flat_set& x, const flat_set& y);
|
701
801
|
|
702
|
-
|
703
|
-
|
704
|
-
|
705
|
-
|
802
|
+
//! <b>Effects</b>: Returns true if x is equal or greater than y
|
803
|
+
//!
|
804
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
805
|
+
friend bool operator>=(const flat_set& x, const flat_set& y);
|
706
806
|
|
707
|
-
|
708
|
-
|
709
|
-
|
710
|
-
|
807
|
+
//! <b>Effects</b>: x.swap(y)
|
808
|
+
//!
|
809
|
+
//! <b>Complexity</b>: Constant.
|
810
|
+
friend void swap(flat_set& x, flat_set& y);
|
711
811
|
|
712
|
-
|
713
|
-
inline bool operator<=(const flat_set<Key,Compare,Allocator>& x,
|
714
|
-
const flat_set<Key,Compare,Allocator>& y)
|
715
|
-
{ return !(y < x); }
|
812
|
+
#endif //#ifdef BOOST_CONTAINER_DOXYGEN_INVOKED
|
716
813
|
|
717
|
-
|
718
|
-
|
719
|
-
|
720
|
-
|
814
|
+
#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
815
|
+
private:
|
816
|
+
template<class KeyType>
|
817
|
+
std::pair<iterator, bool> priv_insert(BOOST_FWD_REF(KeyType) x)
|
818
|
+
{ return this->base_t::insert_unique(::boost::forward<KeyType>(x)); }
|
721
819
|
|
722
|
-
template
|
723
|
-
|
724
|
-
{ x
|
820
|
+
template<class KeyType>
|
821
|
+
iterator priv_insert(const_iterator p, BOOST_FWD_REF(KeyType) x)
|
822
|
+
{ return this->base_t::insert_unique(p, ::boost::forward<KeyType>(x)); }
|
823
|
+
#endif //#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
824
|
+
};
|
725
825
|
|
726
|
-
|
826
|
+
#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
727
827
|
|
728
828
|
} //namespace container {
|
729
829
|
|
730
830
|
//!has_trivial_destructor_after_move<> == true_type
|
731
831
|
//!specialization for optimizations
|
732
|
-
template <class Key, class
|
733
|
-
struct has_trivial_destructor_after_move<boost::container::flat_set<Key,
|
832
|
+
template <class Key, class Compare, class Allocator>
|
833
|
+
struct has_trivial_destructor_after_move<boost::container::flat_set<Key, Compare, Allocator> >
|
734
834
|
{
|
735
|
-
|
835
|
+
typedef typename ::boost::container::allocator_traits<Allocator>::pointer pointer;
|
836
|
+
static const bool value = ::boost::has_trivial_destructor_after_move<Allocator>::value &&
|
837
|
+
::boost::has_trivial_destructor_after_move<pointer>::value &&
|
838
|
+
::boost::has_trivial_destructor_after_move<Compare>::value;
|
736
839
|
};
|
737
840
|
|
738
841
|
namespace container {
|
739
842
|
|
740
|
-
|
741
|
-
|
742
|
-
#ifdef BOOST_CONTAINER_DOXYGEN_INVOKED
|
743
|
-
template <class Key, class Compare = std::less<Key>, class Allocator = std::allocator<Key> >
|
744
|
-
#else
|
745
|
-
template <class Key, class Compare, class Allocator>
|
746
|
-
#endif
|
747
|
-
class flat_multiset;
|
748
|
-
|
749
|
-
template <class Key, class Compare, class Allocator>
|
750
|
-
inline bool operator==(const flat_multiset<Key,Compare,Allocator>& x,
|
751
|
-
const flat_multiset<Key,Compare,Allocator>& y);
|
752
|
-
|
753
|
-
template <class Key, class Compare, class Allocator>
|
754
|
-
inline bool operator<(const flat_multiset<Key,Compare,Allocator>& x,
|
755
|
-
const flat_multiset<Key,Compare,Allocator>& y);
|
756
|
-
/// @endcond
|
843
|
+
#endif //#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
757
844
|
|
758
845
|
//! flat_multiset is a Sorted Associative Container that stores objects of type Key.
|
759
|
-
//!
|
760
|
-
//!
|
761
|
-
//! flat_Multiset can store multiple copies of the same key value.
|
846
|
+
//!
|
847
|
+
//! flat_multiset can store multiple copies of the same key value.
|
762
848
|
//!
|
763
849
|
//! flat_multiset is similar to std::multiset but it's implemented like an ordered vector.
|
764
850
|
//! This means that inserting a new element into a flat_multiset invalidates
|
765
851
|
//! previous iterators and references
|
766
852
|
//!
|
767
|
-
//! Erasing an element
|
768
|
-
//! pointing to elements that come after (their keys are
|
853
|
+
//! Erasing an element invalidates iterators and references
|
854
|
+
//! pointing to elements that come after (their keys are bigger) the erased element.
|
855
|
+
//!
|
856
|
+
//! This container provides random-access iterators.
|
857
|
+
//!
|
858
|
+
//! \tparam Key is the type to be inserted in the multiset, which is also the key_type
|
859
|
+
//! \tparam Compare is the comparison functor used to order keys
|
860
|
+
//! \tparam Allocator is the allocator to be used to allocate memory for this container
|
769
861
|
#ifdef BOOST_CONTAINER_DOXYGEN_INVOKED
|
770
|
-
template <class Key, class Compare = std::less<Key>, class Allocator =
|
862
|
+
template <class Key, class Compare = std::less<Key>, class Allocator = new_allocator<Key> >
|
771
863
|
#else
|
772
864
|
template <class Key, class Compare, class Allocator>
|
773
865
|
#endif
|
774
866
|
class flat_multiset
|
867
|
+
///@cond
|
868
|
+
: public container_detail::flat_tree<Key, Key, container_detail::identity<Key>, Compare, Allocator>
|
869
|
+
///@endcond
|
775
870
|
{
|
776
|
-
|
871
|
+
#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
777
872
|
private:
|
778
873
|
BOOST_COPYABLE_AND_MOVABLE(flat_multiset)
|
779
|
-
typedef container_detail::flat_tree<Key, Key, container_detail::identity<Key>, Compare, Allocator>
|
780
|
-
|
781
|
-
/// @endcond
|
874
|
+
typedef container_detail::flat_tree<Key, Key, container_detail::identity<Key>, Compare, Allocator> base_t;
|
875
|
+
#endif //#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
782
876
|
|
783
877
|
public:
|
784
878
|
//////////////////////////////////////////////
|
@@ -790,6 +884,7 @@ class flat_multiset
|
|
790
884
|
typedef Key value_type;
|
791
885
|
typedef Compare key_compare;
|
792
886
|
typedef Compare value_compare;
|
887
|
+
typedef ::boost::container::allocator_traits<Allocator> allocator_traits_type;
|
793
888
|
typedef typename ::boost::container::allocator_traits<Allocator>::pointer pointer;
|
794
889
|
typedef typename ::boost::container::allocator_traits<Allocator>::const_pointer const_pointer;
|
795
890
|
typedef typename ::boost::container::allocator_traits<Allocator>::reference reference;
|
@@ -797,28 +892,40 @@ class flat_multiset
|
|
797
892
|
typedef typename ::boost::container::allocator_traits<Allocator>::size_type size_type;
|
798
893
|
typedef typename ::boost::container::allocator_traits<Allocator>::difference_type difference_type;
|
799
894
|
typedef Allocator allocator_type;
|
800
|
-
typedef typename BOOST_CONTAINER_IMPDEF(
|
801
|
-
typedef typename BOOST_CONTAINER_IMPDEF(
|
802
|
-
typedef typename BOOST_CONTAINER_IMPDEF(
|
803
|
-
typedef typename BOOST_CONTAINER_IMPDEF(
|
804
|
-
typedef typename BOOST_CONTAINER_IMPDEF(
|
895
|
+
typedef typename BOOST_CONTAINER_IMPDEF(base_t::stored_allocator_type) stored_allocator_type;
|
896
|
+
typedef typename BOOST_CONTAINER_IMPDEF(base_t::iterator) iterator;
|
897
|
+
typedef typename BOOST_CONTAINER_IMPDEF(base_t::const_iterator) const_iterator;
|
898
|
+
typedef typename BOOST_CONTAINER_IMPDEF(base_t::reverse_iterator) reverse_iterator;
|
899
|
+
typedef typename BOOST_CONTAINER_IMPDEF(base_t::const_reverse_iterator) const_reverse_iterator;
|
805
900
|
|
806
|
-
//!
|
807
|
-
//!
|
808
|
-
//! <b>Complexity</b>: Constant.
|
901
|
+
//! @copydoc ::boost::container::flat_set::flat_set()
|
809
902
|
explicit flat_multiset()
|
810
|
-
:
|
903
|
+
: base_t()
|
811
904
|
{}
|
812
905
|
|
906
|
+
//! @copydoc ::boost::container::flat_set::flat_set(const Compare&, const allocator_type&)
|
813
907
|
explicit flat_multiset(const Compare& comp,
|
814
908
|
const allocator_type& a = allocator_type())
|
815
|
-
:
|
909
|
+
: base_t(comp, a)
|
910
|
+
{}
|
911
|
+
|
912
|
+
//! @copydoc ::boost::container::flat_set::flat_set(const allocator_type&)
|
913
|
+
explicit flat_multiset(const allocator_type& a)
|
914
|
+
: base_t(a)
|
915
|
+
{}
|
816
916
|
|
917
|
+
//! @copydoc ::boost::container::flat_set::flat_set(InputIterator, InputIterator, const Compare& comp, const allocator_type&)
|
817
918
|
template <class InputIterator>
|
818
919
|
flat_multiset(InputIterator first, InputIterator last,
|
819
920
|
const Compare& comp = Compare(),
|
820
921
|
const allocator_type& a = allocator_type())
|
821
|
-
:
|
922
|
+
: base_t(false, first, last, comp, a)
|
923
|
+
{}
|
924
|
+
|
925
|
+
//! @copydoc ::boost::container::flat_set::flat_set(InputIterator, InputIterator, const allocator_type&)
|
926
|
+
template <class InputIterator>
|
927
|
+
flat_multiset(InputIterator first, InputIterator last, const allocator_type& a)
|
928
|
+
: base_t(false, first, last, Compare(), a)
|
822
929
|
{}
|
823
930
|
|
824
931
|
//! <b>Effects</b>: Constructs an empty flat_multiset using the specified comparison object and
|
@@ -834,240 +941,134 @@ class flat_multiset
|
|
834
941
|
flat_multiset(ordered_range_t, InputIterator first, InputIterator last,
|
835
942
|
const Compare& comp = Compare(),
|
836
943
|
const allocator_type& a = allocator_type())
|
837
|
-
:
|
944
|
+
: base_t(ordered_range, first, last, comp, a)
|
838
945
|
{}
|
839
946
|
|
840
|
-
|
841
|
-
//!
|
842
|
-
|
947
|
+
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
948
|
+
//! @copydoc ::boost::container::flat_set::flat_set(std::initializer_list<value_type>, const Compare& comp, const allocator_type&)
|
949
|
+
flat_multiset(std::initializer_list<value_type> il, const Compare& comp = Compare(),
|
950
|
+
const allocator_type& a = allocator_type())
|
951
|
+
: base_t(false, il.begin(), il.end(), comp, a)
|
952
|
+
{}
|
953
|
+
|
954
|
+
//! @copydoc ::boost::container::flat_set::flat_set(std::initializer_list<value_type>, const allocator_type&)
|
955
|
+
flat_multiset(std::initializer_list<value_type> il, const allocator_type& a)
|
956
|
+
: base_t(false, il.begin(), il.end(), Compare(), a)
|
957
|
+
{}
|
958
|
+
|
959
|
+
//! @copydoc ::boost::container::flat_set::flat_set(ordered_unique_range_t, std::initializer_list<value_type>, const Compare& comp, const allocator_type&)
|
960
|
+
flat_multiset(ordered_unique_range_t, std::initializer_list<value_type> il,
|
961
|
+
const Compare& comp = Compare(), const allocator_type& a = allocator_type())
|
962
|
+
: base_t(ordered_range, il.begin(), il.end(), comp, a)
|
963
|
+
{}
|
964
|
+
#endif
|
965
|
+
|
966
|
+
//! @copydoc ::boost::container::flat_set::flat_set(const flat_set &)
|
843
967
|
flat_multiset(const flat_multiset& x)
|
844
|
-
:
|
968
|
+
: base_t(static_cast<const base_t&>(x))
|
845
969
|
{}
|
846
970
|
|
847
|
-
//!
|
848
|
-
|
849
|
-
|
850
|
-
//!
|
851
|
-
//! <b>Postcondition</b>: x is emptied.
|
852
|
-
flat_multiset(BOOST_RV_REF(flat_multiset) mx)
|
853
|
-
: m_flat_tree(boost::move(mx.m_flat_tree))
|
971
|
+
//! @copydoc ::boost::container::flat_set::flat_set(flat_set &&)
|
972
|
+
flat_multiset(BOOST_RV_REF(flat_multiset) x)
|
973
|
+
: base_t(boost::move(static_cast<base_t&>(x)))
|
854
974
|
{}
|
855
975
|
|
856
|
-
//!
|
857
|
-
//!
|
858
|
-
//! <b>Complexity</b>: Linear in x.size().
|
976
|
+
//! @copydoc ::boost::container::flat_set::flat_set(const flat_set &, const allocator_type &)
|
859
977
|
flat_multiset(const flat_multiset& x, const allocator_type &a)
|
860
|
-
:
|
978
|
+
: base_t(static_cast<const base_t&>(x), a)
|
861
979
|
{}
|
862
980
|
|
863
|
-
//!
|
864
|
-
|
865
|
-
|
866
|
-
//! <b>Complexity</b>: Constant if a == mx.get_allocator(), linear otherwise
|
867
|
-
flat_multiset(BOOST_RV_REF(flat_multiset) mx, const allocator_type &a)
|
868
|
-
: m_flat_tree(boost::move(mx.m_flat_tree), a)
|
981
|
+
//! @copydoc ::boost::container::flat_set::flat_set(flat_set &&, const allocator_type &)
|
982
|
+
flat_multiset(BOOST_RV_REF(flat_multiset) x, const allocator_type &a)
|
983
|
+
: base_t(BOOST_MOVE_BASE(base_t, x), a)
|
869
984
|
{}
|
870
985
|
|
871
|
-
//!
|
872
|
-
//!
|
873
|
-
//! <b>Complexity</b>: Linear in x.size().
|
986
|
+
//! @copydoc ::boost::container::flat_set::operator=(const flat_set &)
|
874
987
|
flat_multiset& operator=(BOOST_COPY_ASSIGN_REF(flat_multiset) x)
|
875
|
-
|
988
|
+
{ return static_cast<flat_multiset&>(this->base_t::operator=(static_cast<const base_t&>(x))); }
|
989
|
+
|
990
|
+
//! @copydoc ::boost::container::flat_set::operator=(flat_set &&)
|
991
|
+
flat_multiset& operator=(BOOST_RV_REF(flat_multiset) x)
|
992
|
+
BOOST_NOEXCEPT_IF( allocator_traits_type::is_always_equal::value
|
993
|
+
&& boost::container::container_detail::is_nothrow_move_assignable<Compare>::value )
|
994
|
+
{ return static_cast<flat_multiset&>(this->base_t::operator=(BOOST_MOVE_BASE(base_t, x))); }
|
995
|
+
|
996
|
+
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
997
|
+
//! @copydoc ::boost::container::flat_set::operator=(std::initializer_list<value_type>)
|
998
|
+
flat_multiset& operator=(std::initializer_list<value_type> il)
|
999
|
+
{
|
1000
|
+
this->clear();
|
1001
|
+
this->insert(il.begin(), il.end());
|
1002
|
+
return *this;
|
1003
|
+
}
|
1004
|
+
#endif
|
876
1005
|
|
877
|
-
|
878
|
-
//!
|
879
|
-
//! <b>Complexity</b>: Linear in x.size().
|
880
|
-
flat_multiset& operator=(BOOST_RV_REF(flat_multiset) mx)
|
881
|
-
{ m_flat_tree = boost::move(mx.m_flat_tree); return *this; }
|
1006
|
+
#if defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
882
1007
|
|
883
|
-
//!
|
884
|
-
|
885
|
-
//!
|
886
|
-
//! <b>Complexity</b>: Constant.
|
887
|
-
allocator_type get_allocator() const BOOST_CONTAINER_NOEXCEPT
|
888
|
-
{ return m_flat_tree.get_allocator(); }
|
1008
|
+
//! @copydoc ::boost::container::flat_set::get_allocator()
|
1009
|
+
allocator_type get_allocator() const BOOST_NOEXCEPT_OR_NOTHROW;
|
889
1010
|
|
890
|
-
//!
|
891
|
-
|
892
|
-
//! <b>Throws</b>: Nothing
|
893
|
-
//!
|
894
|
-
//! <b>Complexity</b>: Constant.
|
895
|
-
//!
|
896
|
-
//! <b>Note</b>: Non-standard extension.
|
897
|
-
stored_allocator_type &get_stored_allocator() BOOST_CONTAINER_NOEXCEPT
|
898
|
-
{ return m_flat_tree.get_stored_allocator(); }
|
1011
|
+
//! @copydoc ::boost::container::flat_set::get_stored_allocator()
|
1012
|
+
stored_allocator_type &get_stored_allocator() BOOST_NOEXCEPT_OR_NOTHROW;
|
899
1013
|
|
900
|
-
//!
|
901
|
-
|
902
|
-
//! <b>Throws</b>: Nothing
|
903
|
-
//!
|
904
|
-
//! <b>Complexity</b>: Constant.
|
905
|
-
//!
|
906
|
-
//! <b>Note</b>: Non-standard extension.
|
907
|
-
const stored_allocator_type &get_stored_allocator() const BOOST_CONTAINER_NOEXCEPT
|
908
|
-
{ return m_flat_tree.get_stored_allocator(); }
|
1014
|
+
//! @copydoc ::boost::container::flat_set::get_stored_allocator() const
|
1015
|
+
const stored_allocator_type &get_stored_allocator() const BOOST_NOEXCEPT_OR_NOTHROW;
|
909
1016
|
|
910
|
-
//!
|
911
|
-
|
912
|
-
//! <b>Throws</b>: Nothing.
|
913
|
-
//!
|
914
|
-
//! <b>Complexity</b>: Constant.
|
915
|
-
iterator begin() BOOST_CONTAINER_NOEXCEPT
|
916
|
-
{ return m_flat_tree.begin(); }
|
1017
|
+
//! @copydoc ::boost::container::flat_set::begin()
|
1018
|
+
iterator begin() BOOST_NOEXCEPT_OR_NOTHROW;
|
917
1019
|
|
918
|
-
//!
|
919
|
-
|
920
|
-
//! <b>Throws</b>: Nothing.
|
921
|
-
//!
|
922
|
-
//! <b>Complexity</b>: Constant.
|
923
|
-
const_iterator begin() const
|
924
|
-
{ return m_flat_tree.begin(); }
|
1020
|
+
//! @copydoc ::boost::container::flat_set::begin() const
|
1021
|
+
const_iterator begin() const;
|
925
1022
|
|
926
|
-
//!
|
927
|
-
|
928
|
-
//! <b>Throws</b>: Nothing.
|
929
|
-
//!
|
930
|
-
//! <b>Complexity</b>: Constant.
|
931
|
-
const_iterator cbegin() const BOOST_CONTAINER_NOEXCEPT
|
932
|
-
{ return m_flat_tree.cbegin(); }
|
1023
|
+
//! @copydoc ::boost::container::flat_set::cbegin() const
|
1024
|
+
const_iterator cbegin() const BOOST_NOEXCEPT_OR_NOTHROW;
|
933
1025
|
|
934
|
-
//!
|
935
|
-
|
936
|
-
//! <b>Throws</b>: Nothing.
|
937
|
-
//!
|
938
|
-
//! <b>Complexity</b>: Constant.
|
939
|
-
iterator end() BOOST_CONTAINER_NOEXCEPT
|
940
|
-
{ return m_flat_tree.end(); }
|
1026
|
+
//! @copydoc ::boost::container::flat_set::end()
|
1027
|
+
iterator end() BOOST_NOEXCEPT_OR_NOTHROW;
|
941
1028
|
|
942
|
-
//!
|
943
|
-
|
944
|
-
//! <b>Throws</b>: Nothing.
|
945
|
-
//!
|
946
|
-
//! <b>Complexity</b>: Constant.
|
947
|
-
const_iterator end() const BOOST_CONTAINER_NOEXCEPT
|
948
|
-
{ return m_flat_tree.end(); }
|
1029
|
+
//! @copydoc ::boost::container::flat_set::end() const
|
1030
|
+
const_iterator end() const BOOST_NOEXCEPT_OR_NOTHROW;
|
949
1031
|
|
950
|
-
//!
|
951
|
-
|
952
|
-
//! <b>Throws</b>: Nothing.
|
953
|
-
//!
|
954
|
-
//! <b>Complexity</b>: Constant.
|
955
|
-
const_iterator cend() const BOOST_CONTAINER_NOEXCEPT
|
956
|
-
{ return m_flat_tree.cend(); }
|
1032
|
+
//! @copydoc ::boost::container::flat_set::cend() const
|
1033
|
+
const_iterator cend() const BOOST_NOEXCEPT_OR_NOTHROW;
|
957
1034
|
|
958
|
-
//!
|
959
|
-
|
960
|
-
//!
|
961
|
-
//! <b>Throws</b>: Nothing.
|
962
|
-
//!
|
963
|
-
//! <b>Complexity</b>: Constant.
|
964
|
-
reverse_iterator rbegin() BOOST_CONTAINER_NOEXCEPT
|
965
|
-
{ return m_flat_tree.rbegin(); }
|
1035
|
+
//! @copydoc ::boost::container::flat_set::rbegin()
|
1036
|
+
reverse_iterator rbegin() BOOST_NOEXCEPT_OR_NOTHROW;
|
966
1037
|
|
967
|
-
//!
|
968
|
-
|
969
|
-
//!
|
970
|
-
//! <b>Throws</b>: Nothing.
|
971
|
-
//!
|
972
|
-
//! <b>Complexity</b>: Constant.
|
973
|
-
const_reverse_iterator rbegin() const BOOST_CONTAINER_NOEXCEPT
|
974
|
-
{ return m_flat_tree.rbegin(); }
|
1038
|
+
//! @copydoc ::boost::container::flat_set::rbegin() const
|
1039
|
+
const_reverse_iterator rbegin() const BOOST_NOEXCEPT_OR_NOTHROW;
|
975
1040
|
|
976
|
-
//!
|
977
|
-
|
978
|
-
//!
|
979
|
-
//! <b>Throws</b>: Nothing.
|
980
|
-
//!
|
981
|
-
//! <b>Complexity</b>: Constant.
|
982
|
-
const_reverse_iterator crbegin() const BOOST_CONTAINER_NOEXCEPT
|
983
|
-
{ return m_flat_tree.crbegin(); }
|
1041
|
+
//! @copydoc ::boost::container::flat_set::crbegin() const
|
1042
|
+
const_reverse_iterator crbegin() const BOOST_NOEXCEPT_OR_NOTHROW;
|
984
1043
|
|
985
|
-
//!
|
986
|
-
|
987
|
-
//!
|
988
|
-
//! <b>Throws</b>: Nothing.
|
989
|
-
//!
|
990
|
-
//! <b>Complexity</b>: Constant.
|
991
|
-
reverse_iterator rend() BOOST_CONTAINER_NOEXCEPT
|
992
|
-
{ return m_flat_tree.rend(); }
|
1044
|
+
//! @copydoc ::boost::container::flat_set::rend()
|
1045
|
+
reverse_iterator rend() BOOST_NOEXCEPT_OR_NOTHROW;
|
993
1046
|
|
994
|
-
//!
|
995
|
-
|
996
|
-
//!
|
997
|
-
//! <b>Throws</b>: Nothing.
|
998
|
-
//!
|
999
|
-
//! <b>Complexity</b>: Constant.
|
1000
|
-
const_reverse_iterator rend() const BOOST_CONTAINER_NOEXCEPT
|
1001
|
-
{ return m_flat_tree.rend(); }
|
1047
|
+
//! @copydoc ::boost::container::flat_set::rend() const
|
1048
|
+
const_reverse_iterator rend() const BOOST_NOEXCEPT_OR_NOTHROW;
|
1002
1049
|
|
1003
|
-
//!
|
1004
|
-
|
1005
|
-
//!
|
1006
|
-
//! <b>Throws</b>: Nothing.
|
1007
|
-
//!
|
1008
|
-
//! <b>Complexity</b>: Constant.
|
1009
|
-
const_reverse_iterator crend() const BOOST_CONTAINER_NOEXCEPT
|
1010
|
-
{ return m_flat_tree.crend(); }
|
1050
|
+
//! @copydoc ::boost::container::flat_set::crend() const
|
1051
|
+
const_reverse_iterator crend() const BOOST_NOEXCEPT_OR_NOTHROW;
|
1011
1052
|
|
1012
|
-
|
1013
|
-
|
1014
|
-
// capacity
|
1015
|
-
//
|
1016
|
-
//////////////////////////////////////////////
|
1053
|
+
//! @copydoc ::boost::container::flat_set::empty() const
|
1054
|
+
bool empty() const BOOST_NOEXCEPT_OR_NOTHROW;
|
1017
1055
|
|
1018
|
-
//!
|
1019
|
-
|
1020
|
-
//! <b>Throws</b>: Nothing.
|
1021
|
-
//!
|
1022
|
-
//! <b>Complexity</b>: Constant.
|
1023
|
-
bool empty() const BOOST_CONTAINER_NOEXCEPT
|
1024
|
-
{ return m_flat_tree.empty(); }
|
1056
|
+
//! @copydoc ::boost::container::flat_set::size() const
|
1057
|
+
size_type size() const BOOST_NOEXCEPT_OR_NOTHROW;
|
1025
1058
|
|
1026
|
-
//!
|
1027
|
-
|
1028
|
-
//! <b>Throws</b>: Nothing.
|
1029
|
-
//!
|
1030
|
-
//! <b>Complexity</b>: Constant.
|
1031
|
-
size_type size() const BOOST_CONTAINER_NOEXCEPT
|
1032
|
-
{ return m_flat_tree.size(); }
|
1059
|
+
//! @copydoc ::boost::container::flat_set::max_size() const
|
1060
|
+
size_type max_size() const BOOST_NOEXCEPT_OR_NOTHROW;
|
1033
1061
|
|
1034
|
-
//!
|
1035
|
-
|
1036
|
-
//! <b>Throws</b>: Nothing.
|
1037
|
-
//!
|
1038
|
-
//! <b>Complexity</b>: Constant.
|
1039
|
-
size_type max_size() const BOOST_CONTAINER_NOEXCEPT
|
1040
|
-
{ return m_flat_tree.max_size(); }
|
1062
|
+
//! @copydoc ::boost::container::flat_set::capacity() const
|
1063
|
+
size_type capacity() const BOOST_NOEXCEPT_OR_NOTHROW;
|
1041
1064
|
|
1042
|
-
//!
|
1043
|
-
|
1044
|
-
//!
|
1045
|
-
//! <b>Throws</b>: Nothing.
|
1046
|
-
//!
|
1047
|
-
//! <b>Complexity</b>: Constant.
|
1048
|
-
size_type capacity() const BOOST_CONTAINER_NOEXCEPT
|
1049
|
-
{ return m_flat_tree.capacity(); }
|
1065
|
+
//! @copydoc ::boost::container::flat_set::reserve(size_type)
|
1066
|
+
void reserve(size_type cnt);
|
1050
1067
|
|
1051
|
-
//!
|
1052
|
-
|
1053
|
-
//! If the request is successful, then capacity() is greater than or equal to
|
1054
|
-
//! n; otherwise, capacity() is unchanged. In either case, size() is unchanged.
|
1055
|
-
//!
|
1056
|
-
//! <b>Throws</b>: If memory allocation allocation throws or Key's copy constructor throws.
|
1057
|
-
//!
|
1058
|
-
//! <b>Note</b>: If capacity() is less than "cnt", iterators and references to
|
1059
|
-
//! to values might be invalidated.
|
1060
|
-
void reserve(size_type cnt)
|
1061
|
-
{ m_flat_tree.reserve(cnt); }
|
1068
|
+
//! @copydoc ::boost::container::flat_set::shrink_to_fit()
|
1069
|
+
void shrink_to_fit();
|
1062
1070
|
|
1063
|
-
|
1064
|
-
// with previous allocations. The size of the vector is unchanged
|
1065
|
-
//!
|
1066
|
-
//! <b>Throws</b>: If memory allocation throws, or Key's copy constructor throws.
|
1067
|
-
//!
|
1068
|
-
//! <b>Complexity</b>: Linear to size().
|
1069
|
-
void shrink_to_fit()
|
1070
|
-
{ m_flat_tree.shrink_to_fit(); }
|
1071
|
+
#endif // #if defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
1071
1072
|
|
1072
1073
|
//////////////////////////////////////////////
|
1073
1074
|
//
|
@@ -1075,7 +1076,7 @@ class flat_multiset
|
|
1075
1076
|
//
|
1076
1077
|
//////////////////////////////////////////////
|
1077
1078
|
|
1078
|
-
#if defined(
|
1079
|
+
#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) || defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
1079
1080
|
|
1080
1081
|
//! <b>Effects</b>: Inserts an object of type Key constructed with
|
1081
1082
|
//! std::forward<Args>(args)... and returns the iterator pointing to the
|
@@ -1086,8 +1087,8 @@ class flat_multiset
|
|
1086
1087
|
//!
|
1087
1088
|
//! <b>Note</b>: If an element is inserted it might invalidate elements.
|
1088
1089
|
template <class... Args>
|
1089
|
-
iterator emplace(Args
|
1090
|
-
{ return
|
1090
|
+
iterator emplace(BOOST_FWD_REF(Args)... args)
|
1091
|
+
{ return this->base_t::emplace_equal(boost::forward<Args>(args)...); }
|
1091
1092
|
|
1092
1093
|
//! <b>Effects</b>: Inserts an object of type Key constructed with
|
1093
1094
|
//! std::forward<Args>(args)... in the container.
|
@@ -1101,26 +1102,24 @@ class flat_multiset
|
|
1101
1102
|
//!
|
1102
1103
|
//! <b>Note</b>: If an element is inserted it might invalidate elements.
|
1103
1104
|
template <class... Args>
|
1104
|
-
iterator emplace_hint(const_iterator
|
1105
|
-
{ return
|
1106
|
-
|
1107
|
-
#else
|
1108
|
-
|
1109
|
-
#define
|
1110
|
-
|
1111
|
-
iterator emplace(
|
1112
|
-
{ return
|
1113
|
-
|
1114
|
-
|
1115
|
-
iterator emplace_hint(const_iterator hint
|
1116
|
-
|
1117
|
-
|
1118
|
-
|
1119
|
-
|
1120
|
-
#define BOOST_PP_LOCAL_LIMITS (0, BOOST_CONTAINER_MAX_CONSTRUCTOR_PARAMETERS)
|
1121
|
-
#include BOOST_PP_LOCAL_ITERATE()
|
1105
|
+
iterator emplace_hint(const_iterator p, BOOST_FWD_REF(Args)... args)
|
1106
|
+
{ return this->base_t::emplace_hint_equal(p, boost::forward<Args>(args)...); }
|
1107
|
+
|
1108
|
+
#else // !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
|
1109
|
+
|
1110
|
+
#define BOOST_CONTAINER_FLAT_MULTISET_EMPLACE_CODE(N) \
|
1111
|
+
BOOST_MOVE_TMPL_LT##N BOOST_MOVE_CLASS##N BOOST_MOVE_GT##N \
|
1112
|
+
iterator emplace(BOOST_MOVE_UREF##N)\
|
1113
|
+
{ return this->base_t::emplace_equal(BOOST_MOVE_FWD##N); }\
|
1114
|
+
\
|
1115
|
+
BOOST_MOVE_TMPL_LT##N BOOST_MOVE_CLASS##N BOOST_MOVE_GT##N \
|
1116
|
+
iterator emplace_hint(const_iterator hint BOOST_MOVE_I##N BOOST_MOVE_UREF##N)\
|
1117
|
+
{ return this->base_t::emplace_hint_equal(hint BOOST_MOVE_I##N BOOST_MOVE_FWD##N); }\
|
1118
|
+
//
|
1119
|
+
BOOST_MOVE_ITERATE_0TO9(BOOST_CONTAINER_FLAT_MULTISET_EMPLACE_CODE)
|
1120
|
+
#undef BOOST_CONTAINER_FLAT_MULTISET_EMPLACE_CODE
|
1122
1121
|
|
1123
|
-
#endif
|
1122
|
+
#endif // !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
|
1124
1123
|
|
1125
1124
|
#if defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
1126
1125
|
//! <b>Effects</b>: Inserts x and returns the iterator pointing to the
|
@@ -1167,9 +1166,9 @@ class flat_multiset
|
|
1167
1166
|
//! right before p) plus insertion linear to the elements with bigger keys than x.
|
1168
1167
|
//!
|
1169
1168
|
//! <b>Note</b>: If an element is inserted it might invalidate elements.
|
1170
|
-
iterator insert(const_iterator
|
1169
|
+
iterator insert(const_iterator p, value_type &&x);
|
1171
1170
|
#else
|
1172
|
-
BOOST_MOVE_CONVERSION_AWARE_CATCH_1ARG(insert, value_type, iterator, this->priv_insert, const_iterator)
|
1171
|
+
BOOST_MOVE_CONVERSION_AWARE_CATCH_1ARG(insert, value_type, iterator, this->priv_insert, const_iterator, const_iterator)
|
1173
1172
|
#endif
|
1174
1173
|
|
1175
1174
|
//! <b>Requires</b>: first, last are not iterators into *this.
|
@@ -1182,7 +1181,7 @@ class flat_multiset
|
|
1182
1181
|
//! <b>Note</b>: If an element is inserted it might invalidate elements.
|
1183
1182
|
template <class InputIterator>
|
1184
1183
|
void insert(InputIterator first, InputIterator last)
|
1185
|
-
{
|
1184
|
+
{ this->base_t::insert_equal(first, last); }
|
1186
1185
|
|
1187
1186
|
//! <b>Requires</b>: first, last are not iterators into *this and
|
1188
1187
|
//! must be ordered according to the predicate.
|
@@ -1196,213 +1195,165 @@ class flat_multiset
|
|
1196
1195
|
//! <b>Note</b>: Non-standard extension. If an element is inserted it might invalidate elements.
|
1197
1196
|
template <class InputIterator>
|
1198
1197
|
void insert(ordered_range_t, InputIterator first, InputIterator last)
|
1199
|
-
{
|
1200
|
-
|
1201
|
-
//! <b>Effects</b>: Erases the element pointed to by position.
|
1202
|
-
//!
|
1203
|
-
//! <b>Returns</b>: Returns an iterator pointing to the element immediately
|
1204
|
-
//! following q prior to the element being erased. If no such element exists,
|
1205
|
-
//! returns end().
|
1206
|
-
//!
|
1207
|
-
//! <b>Complexity</b>: Linear to the elements with keys bigger than position
|
1208
|
-
//!
|
1209
|
-
//! <b>Note</b>: Invalidates elements with keys
|
1210
|
-
//! not less than the erased element.
|
1211
|
-
iterator erase(const_iterator position)
|
1212
|
-
{ return m_flat_tree.erase(position); }
|
1198
|
+
{ this->base_t::insert_equal(ordered_range, first, last); }
|
1213
1199
|
|
1214
|
-
|
1200
|
+
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
1201
|
+
//! <b>Effects</b>: inserts each element from the range [il.begin(), il.end()).
|
1215
1202
|
//!
|
1216
|
-
//! <b>
|
1203
|
+
//! <b>Complexity</b>: At most N log(size()+N) (N is the distance from first to last)
|
1204
|
+
//! search time plus N*size() insertion time.
|
1217
1205
|
//!
|
1218
|
-
//! <b>
|
1219
|
-
|
1220
|
-
|
1221
|
-
{ return m_flat_tree.erase(x); }
|
1206
|
+
//! <b>Note</b>: If an element is inserted it might invalidate elements.
|
1207
|
+
void insert(std::initializer_list<value_type> il)
|
1208
|
+
{ this->base_t::insert_equal(il.begin(), il.end()); }
|
1222
1209
|
|
1223
|
-
//! <b>
|
1210
|
+
//! <b>Requires</b>: Range [il.begin(), il.end()) must be ordered according to the predicate.
|
1224
1211
|
//!
|
1225
|
-
//! <b>
|
1212
|
+
//! <b>Effects</b>: inserts each element from the range [il.begin(), il.end()). This function
|
1213
|
+
//! is more efficient than the normal range creation for ordered ranges.
|
1226
1214
|
//!
|
1227
|
-
//! <b>Complexity</b>: size()
|
1215
|
+
//! <b>Complexity</b>: At most N log(size()+N) (N is the distance from il.begin() to il.end())
|
1216
|
+
//! search time plus N*size() insertion time.
|
1228
1217
|
//!
|
1229
|
-
//! <b>
|
1230
|
-
|
1231
|
-
|
1232
|
-
|
1218
|
+
//! <b>Note</b>: Non-standard extension. If an element is inserted it might invalidate elements.
|
1219
|
+
void insert(ordered_range_t, std::initializer_list<value_type> il)
|
1220
|
+
{ this->base_t::insert_equal(ordered_range, il.begin(), il.end()); }
|
1221
|
+
#endif
|
1233
1222
|
|
1234
|
-
|
1235
|
-
|
1236
|
-
//!
|
1237
|
-
|
1238
|
-
|
1223
|
+
#if defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
1224
|
+
|
1225
|
+
//! @copydoc ::boost::container::flat_set::erase(const_iterator)
|
1226
|
+
iterator erase(const_iterator p);
|
1227
|
+
|
1228
|
+
//! @copydoc ::boost::container::flat_set::erase(const key_type&)
|
1229
|
+
size_type erase(const key_type& x);
|
1230
|
+
|
1231
|
+
//! @copydoc ::boost::container::flat_set::erase(const_iterator,const_iterator)
|
1232
|
+
iterator erase(const_iterator first, const_iterator last);
|
1233
|
+
|
1234
|
+
//! @copydoc ::boost::container::flat_set::swap
|
1239
1235
|
void swap(flat_multiset& x)
|
1240
|
-
|
1236
|
+
BOOST_NOEXCEPT_IF( allocator_traits_type::is_always_equal::value
|
1237
|
+
&& boost::container::container_detail::is_nothrow_swappable<Compare>::value );
|
1241
1238
|
|
1242
|
-
//!
|
1243
|
-
|
1244
|
-
//! <b>Postcondition</b>: size() == 0.
|
1245
|
-
//!
|
1246
|
-
//! <b>Complexity</b>: linear in size().
|
1247
|
-
void clear() BOOST_CONTAINER_NOEXCEPT
|
1248
|
-
{ m_flat_tree.clear(); }
|
1239
|
+
//! @copydoc ::boost::container::flat_set::clear
|
1240
|
+
void clear() BOOST_NOEXCEPT_OR_NOTHROW;
|
1249
1241
|
|
1250
|
-
|
1251
|
-
|
1252
|
-
// observers
|
1253
|
-
//
|
1254
|
-
//////////////////////////////////////////////
|
1242
|
+
//! @copydoc ::boost::container::flat_set::key_comp
|
1243
|
+
key_compare key_comp() const;
|
1255
1244
|
|
1256
|
-
//!
|
1257
|
-
|
1258
|
-
//!
|
1259
|
-
//! <b>Complexity</b>: Constant.
|
1260
|
-
key_compare key_comp() const
|
1261
|
-
{ return m_flat_tree.key_comp(); }
|
1245
|
+
//! @copydoc ::boost::container::flat_set::value_comp
|
1246
|
+
value_compare value_comp() const;
|
1262
1247
|
|
1263
|
-
//!
|
1264
|
-
|
1265
|
-
//!
|
1266
|
-
//! <b>Complexity</b>: Constant.
|
1267
|
-
value_compare value_comp() const
|
1268
|
-
{ return m_flat_tree.key_comp(); }
|
1248
|
+
//! @copydoc ::boost::container::flat_set::find(const key_type& )
|
1249
|
+
iterator find(const key_type& x);
|
1269
1250
|
|
1270
|
-
|
1271
|
-
|
1272
|
-
// set operations
|
1273
|
-
//
|
1274
|
-
//////////////////////////////////////////////
|
1251
|
+
//! @copydoc ::boost::container::flat_set::find(const key_type& ) const
|
1252
|
+
const_iterator find(const key_type& x) const;
|
1275
1253
|
|
1276
|
-
//!
|
1277
|
-
|
1278
|
-
//!
|
1279
|
-
//! <b>Complexity</b>: Logarithmic.
|
1280
|
-
iterator find(const key_type& x)
|
1281
|
-
{ return m_flat_tree.find(x); }
|
1254
|
+
//! @copydoc ::boost::container::flat_set::nth(size_type)
|
1255
|
+
iterator nth(size_type n) BOOST_NOEXCEPT_OR_NOTHROW;
|
1282
1256
|
|
1283
|
-
//!
|
1284
|
-
|
1285
|
-
//!
|
1286
|
-
//! <b>Complexity</b>: Logarithmic.s
|
1287
|
-
const_iterator find(const key_type& x) const
|
1288
|
-
{ return m_flat_tree.find(x); }
|
1257
|
+
//! @copydoc ::boost::container::flat_set::nth(size_type) const
|
1258
|
+
const_iterator nth(size_type n) const BOOST_NOEXCEPT_OR_NOTHROW;
|
1289
1259
|
|
1290
|
-
//!
|
1260
|
+
//! @copydoc ::boost::container::flat_set::index_of(iterator)
|
1261
|
+
size_type index_of(iterator p) BOOST_NOEXCEPT_OR_NOTHROW;
|
1262
|
+
|
1263
|
+
//! @copydoc ::boost::container::flat_set::index_of(const_iterator) const
|
1264
|
+
size_type index_of(const_iterator p) const BOOST_NOEXCEPT_OR_NOTHROW;
|
1265
|
+
|
1266
|
+
//! @copydoc ::boost::container::flat_set::count(const key_type& ) const
|
1267
|
+
size_type count(const key_type& x) const;
|
1268
|
+
|
1269
|
+
//! @copydoc ::boost::container::flat_set::lower_bound(const key_type& )
|
1270
|
+
iterator lower_bound(const key_type& x);
|
1271
|
+
|
1272
|
+
//! @copydoc ::boost::container::flat_set::lower_bound(const key_type& ) const
|
1273
|
+
const_iterator lower_bound(const key_type& x) const;
|
1274
|
+
|
1275
|
+
//! @copydoc ::boost::container::flat_set::upper_bound(const key_type& )
|
1276
|
+
iterator upper_bound(const key_type& x);
|
1277
|
+
|
1278
|
+
//! @copydoc ::boost::container::flat_set::upper_bound(const key_type& ) const
|
1279
|
+
const_iterator upper_bound(const key_type& x) const;
|
1280
|
+
|
1281
|
+
//! @copydoc ::boost::container::flat_set::equal_range(const key_type& ) const
|
1282
|
+
std::pair<const_iterator, const_iterator> equal_range(const key_type& x) const;
|
1283
|
+
|
1284
|
+
//! @copydoc ::boost::container::flat_set::equal_range(const key_type& )
|
1285
|
+
std::pair<iterator,iterator> equal_range(const key_type& x);
|
1286
|
+
|
1287
|
+
//! <b>Effects</b>: Returns true if x and y are equal
|
1291
1288
|
//!
|
1292
|
-
//! <b>Complexity</b>:
|
1293
|
-
|
1294
|
-
{ return m_flat_tree.count(x); }
|
1289
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
1290
|
+
friend bool operator==(const flat_multiset& x, const flat_multiset& y);
|
1295
1291
|
|
1296
|
-
//! <b>
|
1297
|
-
//! than k, or a.end() if such an element is not found.
|
1292
|
+
//! <b>Effects</b>: Returns true if x and y are unequal
|
1298
1293
|
//!
|
1299
|
-
//! <b>Complexity</b>:
|
1300
|
-
|
1301
|
-
{ return m_flat_tree.lower_bound(x); }
|
1294
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
1295
|
+
friend bool operator!=(const flat_multiset& x, const flat_multiset& y);
|
1302
1296
|
|
1303
|
-
//! <b>
|
1304
|
-
//! less than k, or a.end() if such an element is not found.
|
1297
|
+
//! <b>Effects</b>: Returns true if x is less than y
|
1305
1298
|
//!
|
1306
|
-
//! <b>Complexity</b>:
|
1307
|
-
|
1308
|
-
{ return m_flat_tree.lower_bound(x); }
|
1299
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
1300
|
+
friend bool operator<(const flat_multiset& x, const flat_multiset& y);
|
1309
1301
|
|
1310
|
-
//! <b>
|
1311
|
-
//! than x, or end() if such an element is not found.
|
1302
|
+
//! <b>Effects</b>: Returns true if x is greater than y
|
1312
1303
|
//!
|
1313
|
-
//! <b>Complexity</b>:
|
1314
|
-
|
1315
|
-
{ return m_flat_tree.upper_bound(x); }
|
1304
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
1305
|
+
friend bool operator>(const flat_multiset& x, const flat_multiset& y);
|
1316
1306
|
|
1317
|
-
//! <b>
|
1318
|
-
//! less than x, or end() if such an element is not found.
|
1307
|
+
//! <b>Effects</b>: Returns true if x is equal or less than y
|
1319
1308
|
//!
|
1320
|
-
//! <b>Complexity</b>:
|
1321
|
-
|
1322
|
-
{ return m_flat_tree.upper_bound(x); }
|
1309
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
1310
|
+
friend bool operator<=(const flat_multiset& x, const flat_multiset& y);
|
1323
1311
|
|
1324
|
-
//! <b>Effects</b>:
|
1312
|
+
//! <b>Effects</b>: Returns true if x is equal or greater than y
|
1325
1313
|
//!
|
1326
|
-
//! <b>Complexity</b>:
|
1327
|
-
|
1328
|
-
{ return m_flat_tree.equal_range(x); }
|
1314
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
1315
|
+
friend bool operator>=(const flat_multiset& x, const flat_multiset& y);
|
1329
1316
|
|
1330
|
-
//! <b>Effects</b>:
|
1317
|
+
//! <b>Effects</b>: x.swap(y)
|
1331
1318
|
//!
|
1332
|
-
//! <b>Complexity</b>:
|
1333
|
-
|
1334
|
-
|
1335
|
-
|
1336
|
-
|
1337
|
-
|
1338
|
-
friend bool operator== (const flat_multiset<K1,C1,A1>&,
|
1339
|
-
const flat_multiset<K1,C1,A1>&);
|
1340
|
-
template <class K1, class C1, class A1>
|
1341
|
-
friend bool operator< (const flat_multiset<K1,C1,A1>&,
|
1342
|
-
const flat_multiset<K1,C1,A1>&);
|
1319
|
+
//! <b>Complexity</b>: Constant.
|
1320
|
+
friend void swap(flat_multiset& x, flat_multiset& y);
|
1321
|
+
|
1322
|
+
#endif //#ifdef BOOST_CONTAINER_DOXYGEN_INVOKED
|
1323
|
+
|
1324
|
+
#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
1343
1325
|
private:
|
1344
1326
|
template <class KeyType>
|
1345
1327
|
iterator priv_insert(BOOST_FWD_REF(KeyType) x)
|
1346
|
-
{ return
|
1328
|
+
{ return this->base_t::insert_equal(::boost::forward<KeyType>(x)); }
|
1347
1329
|
|
1348
1330
|
template <class KeyType>
|
1349
1331
|
iterator priv_insert(const_iterator p, BOOST_FWD_REF(KeyType) x)
|
1350
|
-
{ return
|
1351
|
-
|
1332
|
+
{ return this->base_t::insert_equal(p, ::boost::forward<KeyType>(x)); }
|
1333
|
+
#endif //#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
1352
1334
|
};
|
1353
1335
|
|
1354
|
-
|
1355
|
-
inline bool operator==(const flat_multiset<Key,Compare,Allocator>& x,
|
1356
|
-
const flat_multiset<Key,Compare,Allocator>& y)
|
1357
|
-
{ return x.m_flat_tree == y.m_flat_tree; }
|
1358
|
-
|
1359
|
-
template <class Key, class Compare, class Allocator>
|
1360
|
-
inline bool operator<(const flat_multiset<Key,Compare,Allocator>& x,
|
1361
|
-
const flat_multiset<Key,Compare,Allocator>& y)
|
1362
|
-
{ return x.m_flat_tree < y.m_flat_tree; }
|
1363
|
-
|
1364
|
-
template <class Key, class Compare, class Allocator>
|
1365
|
-
inline bool operator!=(const flat_multiset<Key,Compare,Allocator>& x,
|
1366
|
-
const flat_multiset<Key,Compare,Allocator>& y)
|
1367
|
-
{ return !(x == y); }
|
1368
|
-
|
1369
|
-
template <class Key, class Compare, class Allocator>
|
1370
|
-
inline bool operator>(const flat_multiset<Key,Compare,Allocator>& x,
|
1371
|
-
const flat_multiset<Key,Compare,Allocator>& y)
|
1372
|
-
{ return y < x; }
|
1373
|
-
|
1374
|
-
template <class Key, class Compare, class Allocator>
|
1375
|
-
inline bool operator<=(const flat_multiset<Key,Compare,Allocator>& x,
|
1376
|
-
const flat_multiset<Key,Compare,Allocator>& y)
|
1377
|
-
{ return !(y < x); }
|
1378
|
-
|
1379
|
-
template <class Key, class Compare, class Allocator>
|
1380
|
-
inline bool operator>=(const flat_multiset<Key,Compare,Allocator>& x,
|
1381
|
-
const flat_multiset<Key,Compare,Allocator>& y)
|
1382
|
-
{ return !(x < y); }
|
1383
|
-
|
1384
|
-
template <class Key, class Compare, class Allocator>
|
1385
|
-
inline void swap(flat_multiset<Key,Compare,Allocator>& x, flat_multiset<Key,Compare,Allocator>& y)
|
1386
|
-
{ x.swap(y); }
|
1387
|
-
|
1388
|
-
/// @cond
|
1336
|
+
#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
1389
1337
|
|
1390
1338
|
} //namespace container {
|
1391
1339
|
|
1392
1340
|
//!has_trivial_destructor_after_move<> == true_type
|
1393
1341
|
//!specialization for optimizations
|
1394
|
-
template <class Key, class
|
1395
|
-
struct has_trivial_destructor_after_move<boost::container::flat_multiset<Key,
|
1342
|
+
template <class Key, class Compare, class Allocator>
|
1343
|
+
struct has_trivial_destructor_after_move<boost::container::flat_multiset<Key, Compare, Allocator> >
|
1396
1344
|
{
|
1397
|
-
|
1345
|
+
typedef typename ::boost::container::allocator_traits<Allocator>::pointer pointer;
|
1346
|
+
static const bool value = ::boost::has_trivial_destructor_after_move<Allocator>::value &&
|
1347
|
+
::boost::has_trivial_destructor_after_move<pointer>::value &&
|
1348
|
+
::boost::has_trivial_destructor_after_move<Compare>::value;
|
1398
1349
|
};
|
1399
1350
|
|
1400
1351
|
namespace container {
|
1401
1352
|
|
1402
|
-
|
1353
|
+
#endif //#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
1403
1354
|
|
1404
1355
|
}}
|
1405
1356
|
|
1406
1357
|
#include <boost/container/detail/config_end.hpp>
|
1407
1358
|
|
1408
|
-
#endif
|
1359
|
+
#endif // BOOST_CONTAINER_FLAT_SET_HPP
|