passenger 6.1.0 → 6.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG +32 -2
- data/Rakefile +6 -13
- data/bin/passenger-install-apache2-module +15 -19
- data/bin/passenger-install-nginx-module +42 -44
- data/bin/passenger-status +9 -10
- data/build/common_library.rb +4 -4
- data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/builder.rb +1 -1
- data/build/test_basics.rb +4 -3
- data/dev/copy_boost_headers +54 -40
- data/dev/ruby_server.rb +1 -1
- data/src/agent/Core/Config.h +1 -1
- data/src/agent/Core/Controller/Config.h +1 -1
- data/src/agent/Watchdog/Config.h +1 -1
- data/src/cxx_supportlib/Constants.h +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/assert/source_location.hpp +8 -1
- data/src/cxx_supportlib/vendor-modified/boost/assert.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic.hpp +94 -110
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic_flag.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic_ref.hpp +14 -14
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/addressof.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_flag_impl.hpp +52 -24
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_impl.hpp +641 -285
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_ref_impl.hpp +593 -260
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/bitwise_cast.hpp +37 -24
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/bitwise_fp_cast.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/cas_based_exchange.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/chrono.hpp +93 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/classify.hpp +16 -17
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/config.hpp +25 -34
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_aarch32.hpp +204 -97
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_aarch64.hpp +251 -122
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_alpha.hpp +56 -56
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_arm.hpp +129 -129
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_ppc.hpp +253 -125
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_sparc.hpp +25 -25
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_x86.hpp +193 -126
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_msvc_arm.hpp +57 -57
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_msvc_x86.hpp +96 -97
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_operations_emulated.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_cas_based.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_gcc_atomic.hpp +27 -24
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_gcc_sync.hpp +39 -37
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_linux_arm.hpp +17 -17
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extending_cas_based_arithmetic.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_fp_ops_emulated.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_fp_ops_generic.hpp +21 -21
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_emulated.hpp +30 -30
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_aarch32.hpp +170 -98
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_aarch64.hpp +209 -119
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_arm.hpp +95 -95
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_ppc.hpp +148 -76
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_x86.hpp +293 -123
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_generic.hpp +87 -71
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_msvc_arm.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_msvc_x86.hpp +88 -88
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_operations.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_aarch32.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_aarch64.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_alpha.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_arm.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_ppc.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_sparc.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_x86.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_msvc_arm.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_msvc_x86.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_operations.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_operations_emulated.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_ops_gcc_atomic.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_ops_gcc_sync.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_ops_linux_arm.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fp_ops_emulated.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fp_ops_generic.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/futex.hpp +110 -49
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/gcc_atomic_memory_order_utils.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/has_posix_clock_traits.hpp +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/int_sizes.hpp +26 -32
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/integral_conversions.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/interlocked.hpp +69 -30
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/intptr.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/lock_pool.hpp +51 -31
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/memory_order_utils.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/once_flag.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_arm_common.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_ppc_common.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/platform.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/storage_traits.hpp +31 -31
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/alignment_of.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/has_unique_object_representations.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_floating_point.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_iec559.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_integral.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_signed.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_trivially_copyable.hpp +20 -13
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_trivially_default_constructible.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/make_signed.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/make_unsigned.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_darwin_ulock.hpp +90 -16
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_dragonfly_umtx.hpp +80 -11
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_emulated.hpp +160 -15
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_freebsd_umtx.hpp +327 -38
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_futex.hpp +276 -33
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_generic.hpp +260 -20
- data/src/cxx_supportlib/vendor-modified/boost/atomic/fences.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic.hpp +14 -18
- data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic_flag.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic_ref.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/atomic/posix_clock_traits_fwd.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/thread_pause.hpp +102 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/wait_result.hpp +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcpp.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +108 -41
- data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +1235 -1009
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/algorithm.hpp +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_helpers.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_lib.h +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +23 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_begin.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +88 -23
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool_impl.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/operator_new_helpers.hpp +68 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +72 -13
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/std_fwd.hpp +13 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +8 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +31 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +37 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +19 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +23 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +72 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +3 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +54 -23
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/devector.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +19 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +32 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +27 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +37 -17
- data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +23 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +41 -20
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash.hpp +5 -8
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash_fwd.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash_is_avalanching.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/bit.hpp +29 -29
- data/src/cxx_supportlib/vendor-modified/boost/core/cmath.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/core/data.hpp +15 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/default_allocator.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/demangle.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/assert.hpp +18 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/sp_thread_sleep.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/static_assert.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/string_view.hpp +16 -10
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +35 -27
- data/src/cxx_supportlib/vendor-modified/boost/core/scoped_enum.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/size.hpp +14 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/span.hpp +20 -9
- data/src/cxx_supportlib/vendor-modified/boost/cregex.hpp +0 -5
- data/src/cxx_supportlib/vendor-modified/boost/describe/detail/config.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/describe/modifiers.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/foreach.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/ebo_functor_holder.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_rebind.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree_algorithms.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/iterator/advance.hpp +43 -64
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/config_def.hpp +0 -83
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/config_undef.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/eval_if_default.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/facade_iterator_category.hpp +103 -117
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/type_traits/conjunction.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/type_traits/disjunction.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/type_traits/negation.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/type_traits/type_identity.hpp +54 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/distance.hpp +32 -38
- data/src/cxx_supportlib/vendor-modified/boost/iterator/enable_if_convertible.hpp +84 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/interoperable.hpp +22 -34
- data/src/cxx_supportlib/vendor-modified/boost/iterator/is_iterator.hpp +16 -16
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_adaptor.hpp +162 -309
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_categories.hpp +52 -161
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_concepts.hpp +3 -11
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_facade.hpp +804 -977
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_traits.hpp +24 -17
- data/src/cxx_supportlib/vendor-modified/boost/iterator/min_category.hpp +83 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/minimum_category.hpp +11 -73
- data/src/cxx_supportlib/vendor-modified/boost/iterator/reverse_iterator.hpp +56 -57
- data/src/cxx_supportlib/vendor-modified/boost/iterator/transform_iterator.hpp +123 -156
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/bad_lexical_cast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/buffer_view.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical.hpp +36 -33
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +43 -50
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +23 -27
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/inf_nan.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/is_character.hpp +10 -11
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_basic_unlockedbuf.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_char_constants.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +6 -7
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/type_traits.hpp +81 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/widest_char.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/try_lexical_convert.hpp +8 -9
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/wide_posix_api.cpp +1 -12
- data/src/cxx_supportlib/vendor-modified/boost/memory_order.hpp +8 -26
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/iterator_to_raw_pointer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/launder.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/std_ns_begin.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/unique_ptr_meta_utils.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/mp11/algorithm.hpp +11 -44
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_map_find.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/set.hpp +33 -1
- data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/and.hpp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/na_assert.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/ptr_to_ref.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/bitand.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/mpl/bitor.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/mpl/or.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/pool/pool.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/pool/simple_segregated_storage.hpp +0 -13
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/limits/to_seq_256.hpp +190 -190
- data/src/cxx_supportlib/vendor-modified/boost/random/beta_distribution.hpp +12 -2
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/config.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/size.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/xoshiro_base.hpp +472 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/discrete_distribution.hpp +7 -10
- data/src/cxx_supportlib/vendor-modified/boost/random/gamma_distribution.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/random/generalized_inverse_gaussian_distribution.hpp +339 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/hyperexponential_distribution.hpp +12 -14
- data/src/cxx_supportlib/vendor-modified/boost/random/inverse_gaussian_distribution.hpp +226 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/mersenne_twister.hpp +1 -4
- data/src/cxx_supportlib/vendor-modified/boost/random/mixmax.hpp +63 -63
- data/src/cxx_supportlib/vendor-modified/boost/random/piecewise_constant_distribution.hpp +7 -10
- data/src/cxx_supportlib/vendor-modified/boost/random/piecewise_linear_distribution.hpp +8 -11
- data/src/cxx_supportlib/vendor-modified/boost/random/seed_seq.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/random/splitmix64.hpp +1 -4
- data/src/cxx_supportlib/vendor-modified/boost/random/xoshiro.hpp +488 -0
- data/src/cxx_supportlib/vendor-modified/boost/random.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/concepts.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/detail/has_member_size.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/detail/msvc_has_iterator_workaround.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/has_range_iterator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/range/iterator.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/iterator_range_core.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/range/size_type.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/concepts.hpp +35 -18
- data/src/cxx_supportlib/vendor-modified/boost/regex/config.hpp +18 -101
- data/src/cxx_supportlib/vendor-modified/boost/regex/pattern_except.hpp +0 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/pending/object_cache.hpp +0 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/pending/unicode_iterator.hpp +0 -6
- data/src/cxx_supportlib/vendor-modified/boost/regex/regex_traits.hpp +0 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/user.hpp +4 -10
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/basic_regex.hpp +63 -17
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/basic_regex_creator.hpp +71 -16
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/basic_regex_parser.hpp +22 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/c_regex_traits.hpp +11 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/char_regex_traits.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/cpp_regex_traits.hpp +11 -8
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/cregex.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/error_type.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/icu.hpp +40 -38
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/iterator_category.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/iterator_traits.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/match_flags.hpp +39 -37
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/match_results.hpp +46 -9
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/mem_block_cache.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/object_cache.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/pattern_except.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/perl_matcher.hpp +57 -8
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/perl_matcher_common.hpp +21 -6
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/perl_matcher_non_recursive.hpp +18 -3
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regbase.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_format.hpp +23 -18
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_fwd.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_grep.hpp +9 -5
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_iterator.hpp +11 -7
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_match.hpp +10 -7
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_merge.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_raw_buffer.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_replace.hpp +6 -2
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_search.hpp +12 -9
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_split.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_token_iterator.hpp +16 -11
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_traits_defaults.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_workaround.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/states.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/sub_match.hpp +54 -49
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/syntax_type.hpp +64 -62
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/u32regex_iterator.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/u32regex_token_iterator.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/unicode_iterator.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/w32_regex_traits.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex.hpp +0 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex_fwd.hpp +0 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count.hpp +1 -43
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/deprecated_macros.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/shared_count.hpp +2 -77
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base.hpp +1 -64
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_nt.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_impl.hpp +0 -77
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_cxx20_constexpr.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock.hpp +5 -28
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ptr.hpp +41 -40
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_array.hpp +0 -15
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_ptr.hpp +0 -18
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/tuple/detail/tuple_basic.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/integral_constant.hpp +8 -6
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_complete.hpp +31 -10
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fca.hpp +34 -8
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/core.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/table.hpp +9 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/{unordered_printers.hpp → detail/unordered_printers.hpp} +34 -36
- data/src/cxx_supportlib/vendor-modified/boost/unordered/hash_traits.hpp +6 -49
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
- data/src/nginx_module/ContentHandler.c +2 -0
- data/src/ruby_supportlib/phusion_passenger/config/download_agent_command.rb +3 -5
- data/src/ruby_supportlib/phusion_passenger/config/download_nginx_engine_command.rb +3 -5
- data/src/ruby_supportlib/phusion_passenger/config/install_agent_command.rb +3 -5
- data/src/ruby_supportlib/phusion_passenger/config/install_standalone_runtime_command.rb +3 -5
- data/src/ruby_supportlib/phusion_passenger/config/installation_utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +5 -3
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +6 -13
- data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +29 -30
- data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +2 -3
- data/src/ruby_supportlib/phusion_passenger/standalone/config_utils.rb +2 -0
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/json.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/terminal_choice_menu.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/gdb_controller.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger.rb +8 -8
- metadata +26 -99
- data/src/cxx_supportlib/vendor-modified/boost/align/aligned_alloc.hpp +0 -47
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/aligned_alloc_posix.hpp +0 -41
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/aligned_alloc_sunos.hpp +0 -34
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/is_alignment.hpp +0 -28
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/pause.hpp +0 -68
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/conditional.hpp +0 -42
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/integral_constant.hpp +0 -46
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_enum.hpp +0 -42
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_function.hpp +0 -42
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_nothrow_default_constructible.hpp +0 -46
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/remove_cv.hpp +0 -42
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_on_address.hpp +0 -64
- data/src/cxx_supportlib/vendor-modified/boost/cerrno.hpp +0 -15
- data/src/cxx_supportlib/vendor-modified/boost/detail/indirect_traits.hpp +0 -195
- data/src/cxx_supportlib/vendor-modified/boost/detail/select_type.hpp +0 -36
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/enable_if.hpp +0 -83
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/internals.hpp +0 -35
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/regex.cpp +0 -120
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/regex_debug.cpp +0 -59
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/static_mutex.cpp +0 -189
- data/src/cxx_supportlib/vendor-modified/boost/libs/system/src/error_code.cpp +0 -31
- data/src/cxx_supportlib/vendor-modified/boost/regex/config/borland.hpp +0 -72
- data/src/cxx_supportlib/vendor-modified/boost/regex/config/cwchar.hpp +0 -207
- data/src/cxx_supportlib/vendor-modified/boost/regex/pending/static_mutex.hpp +0 -182
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex.hpp +0 -797
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_creator.hpp +0 -1598
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_parser.hpp +0 -3174
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/c_regex_traits.hpp +0 -511
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/char_regex_traits.hpp +0 -81
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/cpp_regex_traits.hpp +0 -1237
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/cregex.hpp +0 -213
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/error_type.hpp +0 -59
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/icu.hpp +0 -1516
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/indexed_bit_flag.hpp +0 -54
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/iterator_category.hpp +0 -91
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/iterator_traits.hpp +0 -135
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/match_flags.hpp +0 -161
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/match_results.hpp +0 -716
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/mem_block_cache.hpp +0 -183
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/object_cache.hpp +0 -171
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/pattern_except.hpp +0 -128
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher.hpp +0 -645
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_common.hpp +0 -1030
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_non_recursive.hpp +0 -1947
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_recursive.hpp +0 -1131
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/primary_transform.hpp +0 -146
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/protected_call.hpp +0 -83
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regbase.hpp +0 -180
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex.hpp +0 -166
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_format.hpp +0 -1158
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_fwd.hpp +0 -73
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_grep.hpp +0 -155
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_iterator.hpp +0 -195
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_match.hpp +0 -382
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_merge.hpp +0 -93
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_raw_buffer.hpp +0 -241
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_replace.hpp +0 -99
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_search.hpp +0 -217
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_split.hpp +0 -174
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_token_iterator.hpp +0 -327
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_traits.hpp +0 -189
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_traits_defaults.hpp +0 -997
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_workaround.hpp +0 -237
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/states.hpp +0 -321
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/sub_match.hpp +0 -516
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/syntax_type.hpp +0 -105
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/u32regex_iterator.hpp +0 -185
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/u32regex_token_iterator.hpp +0 -360
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/unicode_iterator.hpp +0 -871
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/w32_regex_traits.hpp +0 -1229
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_gcc.hpp +0 -79
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_gcc_atomic.hpp +0 -63
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_gcc_x86.hpp +0 -88
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_pt.hpp +0 -104
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_spin.hpp +0 -69
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_sync.hpp +0 -72
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_acc_ia64.hpp +0 -163
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_aix.hpp +0 -152
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_cw_ppc.hpp +0 -185
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_atomic.hpp +0 -148
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_ia64.hpp +0 -170
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_mips.hpp +0 -200
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_ppc.hpp +0 -194
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_sparc.hpp +0 -179
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp +0 -186
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_pt.hpp +0 -147
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_snc_ps3.hpp +0 -174
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_spin.hpp +0 -141
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_sync.hpp +0 -165
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_vacpp_ppc.hpp +0 -163
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_has_gcc_intrinsics.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_has_sync_intrinsics.hpp +0 -69
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_gcc_arm.hpp +0 -128
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_nt.hpp +0 -96
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_pt.hpp +0 -86
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_sync.hpp +0 -94
|
@@ -1,516 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
*
|
|
3
|
-
* Copyright (c) 1998-2002
|
|
4
|
-
* John Maddock
|
|
5
|
-
*
|
|
6
|
-
* Use, modification and distribution are subject to the
|
|
7
|
-
* Boost Software License, Version 1.0. (See accompanying file
|
|
8
|
-
* LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
|
9
|
-
*
|
|
10
|
-
*/
|
|
11
|
-
|
|
12
|
-
/*
|
|
13
|
-
* LOCATION: see http://www.boost.org for most recent version.
|
|
14
|
-
* FILE sub_match.cpp
|
|
15
|
-
* VERSION see <boost/version.hpp>
|
|
16
|
-
* DESCRIPTION: Declares template class sub_match.
|
|
17
|
-
*/
|
|
18
|
-
|
|
19
|
-
#ifndef BOOST_REGEX_V4_SUB_MATCH_HPP
|
|
20
|
-
#define BOOST_REGEX_V4_SUB_MATCH_HPP
|
|
21
|
-
|
|
22
|
-
#ifdef BOOST_MSVC
|
|
23
|
-
#pragma warning(push)
|
|
24
|
-
#pragma warning(disable: 4103)
|
|
25
|
-
#endif
|
|
26
|
-
#ifdef BOOST_HAS_ABI_HEADERS
|
|
27
|
-
# include BOOST_ABI_PREFIX
|
|
28
|
-
#endif
|
|
29
|
-
#ifdef BOOST_MSVC
|
|
30
|
-
#pragma warning(pop)
|
|
31
|
-
#endif
|
|
32
|
-
|
|
33
|
-
namespace boost{
|
|
34
|
-
|
|
35
|
-
template <class BidiIterator>
|
|
36
|
-
struct sub_match : public std::pair<BidiIterator, BidiIterator>
|
|
37
|
-
{
|
|
38
|
-
typedef typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<BidiIterator>::value_type value_type;
|
|
39
|
-
#if defined(BOOST_NO_STD_ITERATOR_TRAITS)
|
|
40
|
-
typedef std::ptrdiff_t difference_type;
|
|
41
|
-
#else
|
|
42
|
-
typedef typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<BidiIterator>::difference_type difference_type;
|
|
43
|
-
#endif
|
|
44
|
-
typedef BidiIterator iterator_type;
|
|
45
|
-
typedef BidiIterator iterator;
|
|
46
|
-
typedef BidiIterator const_iterator;
|
|
47
|
-
|
|
48
|
-
bool matched;
|
|
49
|
-
|
|
50
|
-
sub_match() : std::pair<BidiIterator, BidiIterator>(), matched(false) {}
|
|
51
|
-
sub_match(BidiIterator i) : std::pair<BidiIterator, BidiIterator>(i, i), matched(false) {}
|
|
52
|
-
#if !defined(BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS)\
|
|
53
|
-
&& !BOOST_WORKAROUND(BOOST_BORLANDC, <= 0x0551)\
|
|
54
|
-
&& !BOOST_WORKAROUND(__DECCXX_VER, BOOST_TESTED_AT(60590042))
|
|
55
|
-
template <class T, class A>
|
|
56
|
-
operator std::basic_string<value_type, T, A> ()const
|
|
57
|
-
{
|
|
58
|
-
return matched ? std::basic_string<value_type, T, A>(this->first, this->second) : std::basic_string<value_type, T, A>();
|
|
59
|
-
}
|
|
60
|
-
#else
|
|
61
|
-
operator std::basic_string<value_type> ()const
|
|
62
|
-
{
|
|
63
|
-
return str();
|
|
64
|
-
}
|
|
65
|
-
#endif
|
|
66
|
-
difference_type BOOST_REGEX_CALL length()const
|
|
67
|
-
{
|
|
68
|
-
difference_type n = matched ? ::boost::BOOST_REGEX_DETAIL_NS::distance((BidiIterator)this->first, (BidiIterator)this->second) : 0;
|
|
69
|
-
return n;
|
|
70
|
-
}
|
|
71
|
-
std::basic_string<value_type> str()const
|
|
72
|
-
{
|
|
73
|
-
std::basic_string<value_type> result;
|
|
74
|
-
if(matched)
|
|
75
|
-
{
|
|
76
|
-
std::size_t len = ::boost::BOOST_REGEX_DETAIL_NS::distance((BidiIterator)this->first, (BidiIterator)this->second);
|
|
77
|
-
result.reserve(len);
|
|
78
|
-
BidiIterator i = this->first;
|
|
79
|
-
while(i != this->second)
|
|
80
|
-
{
|
|
81
|
-
result.append(1, *i);
|
|
82
|
-
++i;
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
return result;
|
|
86
|
-
}
|
|
87
|
-
int compare(const sub_match& s)const
|
|
88
|
-
{
|
|
89
|
-
if(matched != s.matched)
|
|
90
|
-
return static_cast<int>(matched) - static_cast<int>(s.matched);
|
|
91
|
-
return str().compare(s.str());
|
|
92
|
-
}
|
|
93
|
-
int compare(const std::basic_string<value_type>& s)const
|
|
94
|
-
{
|
|
95
|
-
return str().compare(s);
|
|
96
|
-
}
|
|
97
|
-
int compare(const value_type* p)const
|
|
98
|
-
{
|
|
99
|
-
return str().compare(p);
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
bool operator==(const sub_match& that)const
|
|
103
|
-
{ return compare(that) == 0; }
|
|
104
|
-
bool BOOST_REGEX_CALL operator !=(const sub_match& that)const
|
|
105
|
-
{ return compare(that) != 0; }
|
|
106
|
-
bool operator<(const sub_match& that)const
|
|
107
|
-
{ return compare(that) < 0; }
|
|
108
|
-
bool operator>(const sub_match& that)const
|
|
109
|
-
{ return compare(that) > 0; }
|
|
110
|
-
bool operator<=(const sub_match& that)const
|
|
111
|
-
{ return compare(that) <= 0; }
|
|
112
|
-
bool operator>=(const sub_match& that)const
|
|
113
|
-
{ return compare(that) >= 0; }
|
|
114
|
-
|
|
115
|
-
#ifdef BOOST_REGEX_MATCH_EXTRA
|
|
116
|
-
typedef std::vector<sub_match<BidiIterator> > capture_sequence_type;
|
|
117
|
-
|
|
118
|
-
const capture_sequence_type& captures()const
|
|
119
|
-
{
|
|
120
|
-
if(!m_captures)
|
|
121
|
-
m_captures.reset(new capture_sequence_type());
|
|
122
|
-
return *m_captures;
|
|
123
|
-
}
|
|
124
|
-
//
|
|
125
|
-
// Private implementation API: DO NOT USE!
|
|
126
|
-
//
|
|
127
|
-
capture_sequence_type& get_captures()const
|
|
128
|
-
{
|
|
129
|
-
if(!m_captures)
|
|
130
|
-
m_captures.reset(new capture_sequence_type());
|
|
131
|
-
return *m_captures;
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
private:
|
|
135
|
-
mutable boost::scoped_ptr<capture_sequence_type> m_captures;
|
|
136
|
-
public:
|
|
137
|
-
|
|
138
|
-
#endif
|
|
139
|
-
sub_match(const sub_match& that, bool
|
|
140
|
-
#ifdef BOOST_REGEX_MATCH_EXTRA
|
|
141
|
-
deep_copy
|
|
142
|
-
#endif
|
|
143
|
-
= true
|
|
144
|
-
)
|
|
145
|
-
: std::pair<BidiIterator, BidiIterator>(that),
|
|
146
|
-
matched(that.matched)
|
|
147
|
-
{
|
|
148
|
-
#ifdef BOOST_REGEX_MATCH_EXTRA
|
|
149
|
-
if(that.m_captures)
|
|
150
|
-
if(deep_copy)
|
|
151
|
-
m_captures.reset(new capture_sequence_type(*(that.m_captures)));
|
|
152
|
-
#endif
|
|
153
|
-
}
|
|
154
|
-
sub_match& operator=(const sub_match& that)
|
|
155
|
-
{
|
|
156
|
-
this->first = that.first;
|
|
157
|
-
this->second = that.second;
|
|
158
|
-
matched = that.matched;
|
|
159
|
-
#ifdef BOOST_REGEX_MATCH_EXTRA
|
|
160
|
-
if(that.m_captures)
|
|
161
|
-
get_captures() = *(that.m_captures);
|
|
162
|
-
#endif
|
|
163
|
-
return *this;
|
|
164
|
-
}
|
|
165
|
-
//
|
|
166
|
-
// Make this type a range, for both Boost.Range, and C++11:
|
|
167
|
-
//
|
|
168
|
-
BidiIterator begin()const { return this->first; }
|
|
169
|
-
BidiIterator end()const { return this->second; }
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
#ifdef BOOST_OLD_REGEX_H
|
|
173
|
-
//
|
|
174
|
-
// the following are deprecated, do not use!!
|
|
175
|
-
//
|
|
176
|
-
operator int()const;
|
|
177
|
-
operator unsigned int()const;
|
|
178
|
-
operator short()const
|
|
179
|
-
{
|
|
180
|
-
return (short)(int)(*this);
|
|
181
|
-
}
|
|
182
|
-
operator unsigned short()const
|
|
183
|
-
{
|
|
184
|
-
return (unsigned short)(unsigned int)(*this);
|
|
185
|
-
}
|
|
186
|
-
#endif
|
|
187
|
-
};
|
|
188
|
-
|
|
189
|
-
typedef sub_match<const char*> csub_match;
|
|
190
|
-
typedef sub_match<std::string::const_iterator> ssub_match;
|
|
191
|
-
#ifndef BOOST_NO_WREGEX
|
|
192
|
-
typedef sub_match<const wchar_t*> wcsub_match;
|
|
193
|
-
typedef sub_match<std::wstring::const_iterator> wssub_match;
|
|
194
|
-
#endif
|
|
195
|
-
|
|
196
|
-
// comparison to std::basic_string<> part 1:
|
|
197
|
-
template <class RandomAccessIterator, class traits, class Allocator>
|
|
198
|
-
inline bool operator == (const std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator>& s,
|
|
199
|
-
const sub_match<RandomAccessIterator>& m)
|
|
200
|
-
{ return s.compare(m.str()) == 0; }
|
|
201
|
-
template <class RandomAccessIterator, class traits, class Allocator>
|
|
202
|
-
inline bool operator != (const std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator>& s,
|
|
203
|
-
const sub_match<RandomAccessIterator>& m)
|
|
204
|
-
{ return s.compare(m.str()) != 0; }
|
|
205
|
-
template <class RandomAccessIterator, class traits, class Allocator>
|
|
206
|
-
inline bool operator < (const std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator>& s,
|
|
207
|
-
const sub_match<RandomAccessIterator>& m)
|
|
208
|
-
{ return s.compare(m.str()) < 0; }
|
|
209
|
-
template <class RandomAccessIterator, class traits, class Allocator>
|
|
210
|
-
inline bool operator <= (const std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator>& s,
|
|
211
|
-
const sub_match<RandomAccessIterator>& m)
|
|
212
|
-
{ return s.compare(m.str()) <= 0; }
|
|
213
|
-
template <class RandomAccessIterator, class traits, class Allocator>
|
|
214
|
-
inline bool operator >= (const std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator>& s,
|
|
215
|
-
const sub_match<RandomAccessIterator>& m)
|
|
216
|
-
{ return s.compare(m.str()) >= 0; }
|
|
217
|
-
template <class RandomAccessIterator, class traits, class Allocator>
|
|
218
|
-
inline bool operator > (const std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator>& s,
|
|
219
|
-
const sub_match<RandomAccessIterator>& m)
|
|
220
|
-
{ return s.compare(m.str()) > 0; }
|
|
221
|
-
// comparison to std::basic_string<> part 2:
|
|
222
|
-
template <class RandomAccessIterator, class traits, class Allocator>
|
|
223
|
-
inline bool operator == (const sub_match<RandomAccessIterator>& m,
|
|
224
|
-
const std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator>& s)
|
|
225
|
-
{ return m.str().compare(s) == 0; }
|
|
226
|
-
template <class RandomAccessIterator, class traits, class Allocator>
|
|
227
|
-
inline bool operator != (const sub_match<RandomAccessIterator>& m,
|
|
228
|
-
const std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator>& s)
|
|
229
|
-
{ return m.str().compare(s) != 0; }
|
|
230
|
-
template <class RandomAccessIterator, class traits, class Allocator>
|
|
231
|
-
inline bool operator < (const sub_match<RandomAccessIterator>& m,
|
|
232
|
-
const std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator>& s)
|
|
233
|
-
{ return m.str().compare(s) < 0; }
|
|
234
|
-
template <class RandomAccessIterator, class traits, class Allocator>
|
|
235
|
-
inline bool operator > (const sub_match<RandomAccessIterator>& m,
|
|
236
|
-
const std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator>& s)
|
|
237
|
-
{ return m.str().compare(s) > 0; }
|
|
238
|
-
template <class RandomAccessIterator, class traits, class Allocator>
|
|
239
|
-
inline bool operator <= (const sub_match<RandomAccessIterator>& m,
|
|
240
|
-
const std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator>& s)
|
|
241
|
-
{ return m.str().compare(s) <= 0; }
|
|
242
|
-
template <class RandomAccessIterator, class traits, class Allocator>
|
|
243
|
-
inline bool operator >= (const sub_match<RandomAccessIterator>& m,
|
|
244
|
-
const std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator>& s)
|
|
245
|
-
{ return m.str().compare(s) >= 0; }
|
|
246
|
-
// comparison to const charT* part 1:
|
|
247
|
-
template <class RandomAccessIterator>
|
|
248
|
-
inline bool operator == (const sub_match<RandomAccessIterator>& m,
|
|
249
|
-
typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const* s)
|
|
250
|
-
{ return m.str().compare(s) == 0; }
|
|
251
|
-
template <class RandomAccessIterator>
|
|
252
|
-
inline bool operator != (const sub_match<RandomAccessIterator>& m,
|
|
253
|
-
typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const* s)
|
|
254
|
-
{ return m.str().compare(s) != 0; }
|
|
255
|
-
template <class RandomAccessIterator>
|
|
256
|
-
inline bool operator > (const sub_match<RandomAccessIterator>& m,
|
|
257
|
-
typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const* s)
|
|
258
|
-
{ return m.str().compare(s) > 0; }
|
|
259
|
-
template <class RandomAccessIterator>
|
|
260
|
-
inline bool operator < (const sub_match<RandomAccessIterator>& m,
|
|
261
|
-
typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const* s)
|
|
262
|
-
{ return m.str().compare(s) < 0; }
|
|
263
|
-
template <class RandomAccessIterator>
|
|
264
|
-
inline bool operator >= (const sub_match<RandomAccessIterator>& m,
|
|
265
|
-
typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const* s)
|
|
266
|
-
{ return m.str().compare(s) >= 0; }
|
|
267
|
-
template <class RandomAccessIterator>
|
|
268
|
-
inline bool operator <= (const sub_match<RandomAccessIterator>& m,
|
|
269
|
-
typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const* s)
|
|
270
|
-
{ return m.str().compare(s) <= 0; }
|
|
271
|
-
// comparison to const charT* part 2:
|
|
272
|
-
template <class RandomAccessIterator>
|
|
273
|
-
inline bool operator == (typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const* s,
|
|
274
|
-
const sub_match<RandomAccessIterator>& m)
|
|
275
|
-
{ return m.str().compare(s) == 0; }
|
|
276
|
-
template <class RandomAccessIterator>
|
|
277
|
-
inline bool operator != (typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const* s,
|
|
278
|
-
const sub_match<RandomAccessIterator>& m)
|
|
279
|
-
{ return m.str().compare(s) != 0; }
|
|
280
|
-
template <class RandomAccessIterator>
|
|
281
|
-
inline bool operator < (typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const* s,
|
|
282
|
-
const sub_match<RandomAccessIterator>& m)
|
|
283
|
-
{ return m.str().compare(s) > 0; }
|
|
284
|
-
template <class RandomAccessIterator>
|
|
285
|
-
inline bool operator > (typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const* s,
|
|
286
|
-
const sub_match<RandomAccessIterator>& m)
|
|
287
|
-
{ return m.str().compare(s) < 0; }
|
|
288
|
-
template <class RandomAccessIterator>
|
|
289
|
-
inline bool operator <= (typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const* s,
|
|
290
|
-
const sub_match<RandomAccessIterator>& m)
|
|
291
|
-
{ return m.str().compare(s) >= 0; }
|
|
292
|
-
template <class RandomAccessIterator>
|
|
293
|
-
inline bool operator >= (typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const* s,
|
|
294
|
-
const sub_match<RandomAccessIterator>& m)
|
|
295
|
-
{ return m.str().compare(s) <= 0; }
|
|
296
|
-
|
|
297
|
-
// comparison to const charT& part 1:
|
|
298
|
-
template <class RandomAccessIterator>
|
|
299
|
-
inline bool operator == (const sub_match<RandomAccessIterator>& m,
|
|
300
|
-
typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const& s)
|
|
301
|
-
{ return m.str().compare(0, m.length(), &s, 1) == 0; }
|
|
302
|
-
template <class RandomAccessIterator>
|
|
303
|
-
inline bool operator != (const sub_match<RandomAccessIterator>& m,
|
|
304
|
-
typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const& s)
|
|
305
|
-
{ return m.str().compare(0, m.length(), &s, 1) != 0; }
|
|
306
|
-
template <class RandomAccessIterator>
|
|
307
|
-
inline bool operator > (const sub_match<RandomAccessIterator>& m,
|
|
308
|
-
typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const& s)
|
|
309
|
-
{ return m.str().compare(0, m.length(), &s, 1) > 0; }
|
|
310
|
-
template <class RandomAccessIterator>
|
|
311
|
-
inline bool operator < (const sub_match<RandomAccessIterator>& m,
|
|
312
|
-
typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const& s)
|
|
313
|
-
{ return m.str().compare(0, m.length(), &s, 1) < 0; }
|
|
314
|
-
template <class RandomAccessIterator>
|
|
315
|
-
inline bool operator >= (const sub_match<RandomAccessIterator>& m,
|
|
316
|
-
typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const& s)
|
|
317
|
-
{ return m.str().compare(0, m.length(), &s, 1) >= 0; }
|
|
318
|
-
template <class RandomAccessIterator>
|
|
319
|
-
inline bool operator <= (const sub_match<RandomAccessIterator>& m,
|
|
320
|
-
typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const& s)
|
|
321
|
-
{ return m.str().compare(0, m.length(), &s, 1) <= 0; }
|
|
322
|
-
// comparison to const charT* part 2:
|
|
323
|
-
template <class RandomAccessIterator>
|
|
324
|
-
inline bool operator == (typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const& s,
|
|
325
|
-
const sub_match<RandomAccessIterator>& m)
|
|
326
|
-
{ return m.str().compare(0, m.length(), &s, 1) == 0; }
|
|
327
|
-
template <class RandomAccessIterator>
|
|
328
|
-
inline bool operator != (typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const& s,
|
|
329
|
-
const sub_match<RandomAccessIterator>& m)
|
|
330
|
-
{ return m.str().compare(0, m.length(), &s, 1) != 0; }
|
|
331
|
-
template <class RandomAccessIterator>
|
|
332
|
-
inline bool operator < (typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const& s,
|
|
333
|
-
const sub_match<RandomAccessIterator>& m)
|
|
334
|
-
{ return m.str().compare(0, m.length(), &s, 1) > 0; }
|
|
335
|
-
template <class RandomAccessIterator>
|
|
336
|
-
inline bool operator > (typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const& s,
|
|
337
|
-
const sub_match<RandomAccessIterator>& m)
|
|
338
|
-
{ return m.str().compare(0, m.length(), &s, 1) < 0; }
|
|
339
|
-
template <class RandomAccessIterator>
|
|
340
|
-
inline bool operator <= (typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const& s,
|
|
341
|
-
const sub_match<RandomAccessIterator>& m)
|
|
342
|
-
{ return m.str().compare(0, m.length(), &s, 1) >= 0; }
|
|
343
|
-
template <class RandomAccessIterator>
|
|
344
|
-
inline bool operator >= (typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const& s,
|
|
345
|
-
const sub_match<RandomAccessIterator>& m)
|
|
346
|
-
{ return m.str().compare(0, m.length(), &s, 1) <= 0; }
|
|
347
|
-
|
|
348
|
-
// addition operators:
|
|
349
|
-
template <class RandomAccessIterator, class traits, class Allocator>
|
|
350
|
-
inline std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator>
|
|
351
|
-
operator + (const std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator>& s,
|
|
352
|
-
const sub_match<RandomAccessIterator>& m)
|
|
353
|
-
{
|
|
354
|
-
std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator> result;
|
|
355
|
-
result.reserve(s.size() + m.length() + 1);
|
|
356
|
-
return result.append(s).append(m.first, m.second);
|
|
357
|
-
}
|
|
358
|
-
template <class RandomAccessIterator, class traits, class Allocator>
|
|
359
|
-
inline std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator>
|
|
360
|
-
operator + (const sub_match<RandomAccessIterator>& m,
|
|
361
|
-
const std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator>& s)
|
|
362
|
-
{
|
|
363
|
-
std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type, traits, Allocator> result;
|
|
364
|
-
result.reserve(s.size() + m.length() + 1);
|
|
365
|
-
return result.append(m.first, m.second).append(s);
|
|
366
|
-
}
|
|
367
|
-
#if !(defined(__GNUC__) && defined(BOOST_NO_STD_LOCALE))
|
|
368
|
-
template <class RandomAccessIterator>
|
|
369
|
-
inline std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type>
|
|
370
|
-
operator + (typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const* s,
|
|
371
|
-
const sub_match<RandomAccessIterator>& m)
|
|
372
|
-
{
|
|
373
|
-
std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type> result;
|
|
374
|
-
result.reserve(std::char_traits<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type>::length(s) + m.length() + 1);
|
|
375
|
-
return result.append(s).append(m.first, m.second);
|
|
376
|
-
}
|
|
377
|
-
template <class RandomAccessIterator>
|
|
378
|
-
inline std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type>
|
|
379
|
-
operator + (const sub_match<RandomAccessIterator>& m,
|
|
380
|
-
typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const * s)
|
|
381
|
-
{
|
|
382
|
-
std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type> result;
|
|
383
|
-
result.reserve(std::char_traits<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type>::length(s) + m.length() + 1);
|
|
384
|
-
return result.append(m.first, m.second).append(s);
|
|
385
|
-
}
|
|
386
|
-
#else
|
|
387
|
-
// worwaround versions:
|
|
388
|
-
template <class RandomAccessIterator>
|
|
389
|
-
inline std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type>
|
|
390
|
-
operator + (typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const* s,
|
|
391
|
-
const sub_match<RandomAccessIterator>& m)
|
|
392
|
-
{
|
|
393
|
-
return s + m.str();
|
|
394
|
-
}
|
|
395
|
-
template <class RandomAccessIterator>
|
|
396
|
-
inline std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type>
|
|
397
|
-
operator + (const sub_match<RandomAccessIterator>& m,
|
|
398
|
-
typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const * s)
|
|
399
|
-
{
|
|
400
|
-
return m.str() + s;
|
|
401
|
-
}
|
|
402
|
-
#endif
|
|
403
|
-
template <class RandomAccessIterator>
|
|
404
|
-
inline std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type>
|
|
405
|
-
operator + (typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const& s,
|
|
406
|
-
const sub_match<RandomAccessIterator>& m)
|
|
407
|
-
{
|
|
408
|
-
std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type> result;
|
|
409
|
-
result.reserve(m.length() + 2);
|
|
410
|
-
return result.append(1, s).append(m.first, m.second);
|
|
411
|
-
}
|
|
412
|
-
template <class RandomAccessIterator>
|
|
413
|
-
inline std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type>
|
|
414
|
-
operator + (const sub_match<RandomAccessIterator>& m,
|
|
415
|
-
typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type const& s)
|
|
416
|
-
{
|
|
417
|
-
std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type> result;
|
|
418
|
-
result.reserve(m.length() + 2);
|
|
419
|
-
return result.append(m.first, m.second).append(1, s);
|
|
420
|
-
}
|
|
421
|
-
template <class RandomAccessIterator>
|
|
422
|
-
inline std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type>
|
|
423
|
-
operator + (const sub_match<RandomAccessIterator>& m1,
|
|
424
|
-
const sub_match<RandomAccessIterator>& m2)
|
|
425
|
-
{
|
|
426
|
-
std::basic_string<typename BOOST_REGEX_DETAIL_NS::regex_iterator_traits<RandomAccessIterator>::value_type> result;
|
|
427
|
-
result.reserve(m1.length() + m2.length() + 1);
|
|
428
|
-
return result.append(m1.first, m1.second).append(m2.first, m2.second);
|
|
429
|
-
}
|
|
430
|
-
#ifndef BOOST_NO_STD_LOCALE
|
|
431
|
-
template <class charT, class traits, class RandomAccessIterator>
|
|
432
|
-
std::basic_ostream<charT, traits>&
|
|
433
|
-
operator << (std::basic_ostream<charT, traits>& os,
|
|
434
|
-
const sub_match<RandomAccessIterator>& s)
|
|
435
|
-
{
|
|
436
|
-
return (os << s.str());
|
|
437
|
-
}
|
|
438
|
-
#else
|
|
439
|
-
template <class RandomAccessIterator>
|
|
440
|
-
std::ostream& operator << (std::ostream& os,
|
|
441
|
-
const sub_match<RandomAccessIterator>& s)
|
|
442
|
-
{
|
|
443
|
-
return (os << s.str());
|
|
444
|
-
}
|
|
445
|
-
#endif
|
|
446
|
-
|
|
447
|
-
#ifdef BOOST_OLD_REGEX_H
|
|
448
|
-
namespace BOOST_REGEX_DETAIL_NS{
|
|
449
|
-
template <class BidiIterator, class charT>
|
|
450
|
-
int do_toi(BidiIterator i, BidiIterator j, char c, int radix)
|
|
451
|
-
{
|
|
452
|
-
std::string s(i, j);
|
|
453
|
-
char* p;
|
|
454
|
-
int result = std::strtol(s.c_str(), &p, radix);
|
|
455
|
-
if(*p)raise_regex_exception("Bad sub-expression");
|
|
456
|
-
return result;
|
|
457
|
-
}
|
|
458
|
-
|
|
459
|
-
//
|
|
460
|
-
// helper:
|
|
461
|
-
template <class I, class charT>
|
|
462
|
-
int do_toi(I& i, I j, charT c)
|
|
463
|
-
{
|
|
464
|
-
int result = 0;
|
|
465
|
-
while((i != j) && (isdigit(*i)))
|
|
466
|
-
{
|
|
467
|
-
result = result*10 + (*i - '0');
|
|
468
|
-
++i;
|
|
469
|
-
}
|
|
470
|
-
return result;
|
|
471
|
-
}
|
|
472
|
-
}
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
template <class BidiIterator>
|
|
476
|
-
sub_match<BidiIterator>::operator int()const
|
|
477
|
-
{
|
|
478
|
-
BidiIterator i = first;
|
|
479
|
-
BidiIterator j = second;
|
|
480
|
-
if(i == j)raise_regex_exception("Bad sub-expression");
|
|
481
|
-
int neg = 1;
|
|
482
|
-
if((i != j) && (*i == '-'))
|
|
483
|
-
{
|
|
484
|
-
neg = -1;
|
|
485
|
-
++i;
|
|
486
|
-
}
|
|
487
|
-
neg *= BOOST_REGEX_DETAIL_NS::do_toi(i, j, *i);
|
|
488
|
-
if(i != j)raise_regex_exception("Bad sub-expression");
|
|
489
|
-
return neg;
|
|
490
|
-
}
|
|
491
|
-
template <class BidiIterator>
|
|
492
|
-
sub_match<BidiIterator>::operator unsigned int()const
|
|
493
|
-
{
|
|
494
|
-
BidiIterator i = first;
|
|
495
|
-
BidiIterator j = second;
|
|
496
|
-
if(i == j)
|
|
497
|
-
raise_regex_exception("Bad sub-expression");
|
|
498
|
-
return BOOST_REGEX_DETAIL_NS::do_toi(i, j, *first);
|
|
499
|
-
}
|
|
500
|
-
#endif
|
|
501
|
-
|
|
502
|
-
} // namespace boost
|
|
503
|
-
|
|
504
|
-
#ifdef BOOST_MSVC
|
|
505
|
-
#pragma warning(push)
|
|
506
|
-
#pragma warning(disable: 4103)
|
|
507
|
-
#endif
|
|
508
|
-
#ifdef BOOST_HAS_ABI_HEADERS
|
|
509
|
-
# include BOOST_ABI_SUFFIX
|
|
510
|
-
#endif
|
|
511
|
-
#ifdef BOOST_MSVC
|
|
512
|
-
#pragma warning(pop)
|
|
513
|
-
#endif
|
|
514
|
-
|
|
515
|
-
#endif
|
|
516
|
-
|
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
*
|
|
3
|
-
* Copyright (c) 2003
|
|
4
|
-
* John Maddock
|
|
5
|
-
*
|
|
6
|
-
* Use, modification and distribution are subject to the
|
|
7
|
-
* Boost Software License, Version 1.0. (See accompanying file
|
|
8
|
-
* LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
|
9
|
-
*
|
|
10
|
-
*/
|
|
11
|
-
|
|
12
|
-
/*
|
|
13
|
-
* LOCATION: see http://www.boost.org for most recent version.
|
|
14
|
-
* FILE syntax_type.hpp
|
|
15
|
-
* VERSION see <boost/version.hpp>
|
|
16
|
-
* DESCRIPTION: Declares regular expression synatx type enumerator.
|
|
17
|
-
*/
|
|
18
|
-
|
|
19
|
-
#ifndef BOOST_REGEX_SYNTAX_TYPE_HPP
|
|
20
|
-
#define BOOST_REGEX_SYNTAX_TYPE_HPP
|
|
21
|
-
|
|
22
|
-
namespace boost{
|
|
23
|
-
namespace regex_constants{
|
|
24
|
-
|
|
25
|
-
typedef unsigned char syntax_type;
|
|
26
|
-
|
|
27
|
-
//
|
|
28
|
-
// values chosen are binary compatible with previous version:
|
|
29
|
-
//
|
|
30
|
-
static const syntax_type syntax_char = 0;
|
|
31
|
-
static const syntax_type syntax_open_mark = 1;
|
|
32
|
-
static const syntax_type syntax_close_mark = 2;
|
|
33
|
-
static const syntax_type syntax_dollar = 3;
|
|
34
|
-
static const syntax_type syntax_caret = 4;
|
|
35
|
-
static const syntax_type syntax_dot = 5;
|
|
36
|
-
static const syntax_type syntax_star = 6;
|
|
37
|
-
static const syntax_type syntax_plus = 7;
|
|
38
|
-
static const syntax_type syntax_question = 8;
|
|
39
|
-
static const syntax_type syntax_open_set = 9;
|
|
40
|
-
static const syntax_type syntax_close_set = 10;
|
|
41
|
-
static const syntax_type syntax_or = 11;
|
|
42
|
-
static const syntax_type syntax_escape = 12;
|
|
43
|
-
static const syntax_type syntax_dash = 14;
|
|
44
|
-
static const syntax_type syntax_open_brace = 15;
|
|
45
|
-
static const syntax_type syntax_close_brace = 16;
|
|
46
|
-
static const syntax_type syntax_digit = 17;
|
|
47
|
-
static const syntax_type syntax_comma = 27;
|
|
48
|
-
static const syntax_type syntax_equal = 37;
|
|
49
|
-
static const syntax_type syntax_colon = 36;
|
|
50
|
-
static const syntax_type syntax_not = 53;
|
|
51
|
-
|
|
52
|
-
// extensions:
|
|
53
|
-
|
|
54
|
-
static const syntax_type syntax_hash = 13;
|
|
55
|
-
static const syntax_type syntax_newline = 26;
|
|
56
|
-
|
|
57
|
-
// escapes:
|
|
58
|
-
|
|
59
|
-
typedef syntax_type escape_syntax_type;
|
|
60
|
-
|
|
61
|
-
static const escape_syntax_type escape_type_word_assert = 18;
|
|
62
|
-
static const escape_syntax_type escape_type_not_word_assert = 19;
|
|
63
|
-
static const escape_syntax_type escape_type_control_f = 29;
|
|
64
|
-
static const escape_syntax_type escape_type_control_n = 30;
|
|
65
|
-
static const escape_syntax_type escape_type_control_r = 31;
|
|
66
|
-
static const escape_syntax_type escape_type_control_t = 32;
|
|
67
|
-
static const escape_syntax_type escape_type_control_v = 33;
|
|
68
|
-
static const escape_syntax_type escape_type_ascii_control = 35;
|
|
69
|
-
static const escape_syntax_type escape_type_hex = 34;
|
|
70
|
-
static const escape_syntax_type escape_type_unicode = 0; // not used
|
|
71
|
-
static const escape_syntax_type escape_type_identity = 0; // not used
|
|
72
|
-
static const escape_syntax_type escape_type_backref = syntax_digit;
|
|
73
|
-
static const escape_syntax_type escape_type_decimal = syntax_digit; // not used
|
|
74
|
-
static const escape_syntax_type escape_type_class = 22;
|
|
75
|
-
static const escape_syntax_type escape_type_not_class = 23;
|
|
76
|
-
|
|
77
|
-
// extensions:
|
|
78
|
-
|
|
79
|
-
static const escape_syntax_type escape_type_left_word = 20;
|
|
80
|
-
static const escape_syntax_type escape_type_right_word = 21;
|
|
81
|
-
static const escape_syntax_type escape_type_start_buffer = 24; // for \`
|
|
82
|
-
static const escape_syntax_type escape_type_end_buffer = 25; // for \'
|
|
83
|
-
static const escape_syntax_type escape_type_control_a = 28; // for \a
|
|
84
|
-
static const escape_syntax_type escape_type_e = 38; // for \e
|
|
85
|
-
static const escape_syntax_type escape_type_E = 47; // for \Q\E
|
|
86
|
-
static const escape_syntax_type escape_type_Q = 48; // for \Q\E
|
|
87
|
-
static const escape_syntax_type escape_type_X = 49; // for \X
|
|
88
|
-
static const escape_syntax_type escape_type_C = 50; // for \C
|
|
89
|
-
static const escape_syntax_type escape_type_Z = 51; // for \Z
|
|
90
|
-
static const escape_syntax_type escape_type_G = 52; // for \G
|
|
91
|
-
|
|
92
|
-
static const escape_syntax_type escape_type_property = 54; // for \p
|
|
93
|
-
static const escape_syntax_type escape_type_not_property = 55; // for \P
|
|
94
|
-
static const escape_syntax_type escape_type_named_char = 56; // for \N
|
|
95
|
-
static const escape_syntax_type escape_type_extended_backref = 57; // for \g
|
|
96
|
-
static const escape_syntax_type escape_type_reset_start_mark = 58; // for \K
|
|
97
|
-
static const escape_syntax_type escape_type_line_ending = 59; // for \R
|
|
98
|
-
|
|
99
|
-
static const escape_syntax_type syntax_max = 60;
|
|
100
|
-
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
#endif
|