passenger 3.9.1.beta → 3.9.2.beta
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.
- data/.travis.yml +13 -0
- data/CONTRIBUTING.md +287 -0
- data/INSTALL.md +7 -0
- data/NEWS +32 -0
- data/README.md +46 -0
- data/Rakefile +2 -2
- data/bin/passenger +1 -1
- data/bin/passenger-config +1 -1
- data/bin/passenger-install-apache2-module +1 -1
- data/bin/passenger-install-nginx-module +1 -1
- data/bin/passenger-memory-stats +1 -1
- data/bin/passenger-status +1 -1
- data/build/agents.rb +7 -7
- data/build/apache2.rb +2 -2
- data/build/basics.rb +3 -7
- data/build/common_library.rb +14 -7
- data/build/cplusplus_support.rb +1 -1
- data/build/cxx_tests.rb +19 -7
- data/build/documentation.rb +1 -1
- data/build/integration_tests.rb +2 -2
- data/build/misc.rb +6 -6
- data/build/nginx.rb +1 -1
- data/build/oxt_tests.rb +1 -1
- data/build/packaging.rb +13 -23
- data/build/rake_extensions.rb +1 -1
- data/build/rpm.rb +1 -1
- data/build/ruby_extension.rb +2 -2
- data/build/ruby_tests.rb +4 -4
- data/build/test_basics.rb +15 -2
- data/dev/copy_boost_headers.rb +18 -8
- data/dev/find_owner_pipe_leaks.rb +1 -1
- data/dev/render_error_pages.rb +1 -1
- data/dev/run_travis.sh +39 -0
- data/doc/Architectural overview.html +55 -21
- data/doc/{DebuggingAndStressTesting.txt.md → DebuggingAndStressTesting.md} +12 -1
- data/doc/Security of user switching support.html +47 -16
- data/doc/Users guide Apache.html +802 -378
- data/doc/Users guide Apache.idmap.txt +85 -209
- data/doc/Users guide Apache.txt +65 -338
- data/doc/Users guide Nginx.html +715 -252
- data/doc/Users guide Nginx.idmap.txt +71 -147
- data/doc/Users guide Nginx.txt +29 -245
- data/doc/Users guide Standalone.html +45 -14
- data/doc/Users guide Standalone.idmap.txt +0 -2
- data/doc/users_guide_snippets/analysis_and_system_maintenance.txt +1 -1
- data/doc/users_guide_snippets/installation.txt +604 -0
- data/doc/users_guide_snippets/support_information.txt +5 -4
- data/doc/users_guide_snippets/tips.txt +54 -1
- data/ext/apache2/Bucket.cpp +1 -1
- data/ext/apache2/Bucket.h +1 -1
- data/ext/apache2/Configuration.cpp +2 -14
- data/ext/apache2/Configuration.h +1 -1
- data/ext/apache2/Configuration.hpp +3 -22
- data/ext/apache2/DirectoryMapper.h +1 -1
- data/ext/apache2/Hooks.cpp +5 -5
- data/ext/apache2/Hooks.h +1 -1
- data/ext/apache2/mod_passenger.c +1 -1
- data/ext/boost/aligned_storage.hpp +181 -0
- data/ext/boost/array.hpp +446 -0
- data/ext/boost/cerrno.hpp +331 -0
- data/ext/boost/chrono/ceil.hpp +36 -0
- data/ext/boost/chrono/clock_string.hpp +25 -0
- data/ext/boost/chrono/config.hpp +215 -0
- data/ext/boost/chrono/detail/is_evenly_divisible_by.hpp +31 -0
- data/ext/boost/chrono/detail/static_assert.hpp +30 -0
- data/ext/boost/chrono/detail/system.hpp +29 -0
- data/ext/boost/chrono/duration.hpp +795 -0
- data/ext/boost/chrono/system_clocks.hpp +233 -0
- data/ext/boost/chrono/time_point.hpp +379 -0
- data/ext/boost/concept_check.hpp +5 -5
- data/ext/boost/config/compiler/borland.hpp +29 -27
- data/ext/boost/config/compiler/clang.hpp +40 -26
- data/ext/boost/config/compiler/codegear.hpp +20 -19
- data/ext/boost/config/compiler/common_edg.hpp +27 -25
- data/ext/boost/config/compiler/cray.hpp +24 -22
- data/ext/boost/config/compiler/digitalmars.hpp +26 -24
- data/ext/boost/config/compiler/gcc.hpp +32 -30
- data/ext/boost/config/compiler/gcc_xml.hpp +26 -25
- data/ext/boost/config/compiler/hp_acc.hpp +26 -24
- data/ext/boost/config/compiler/intel.hpp +26 -24
- data/ext/boost/config/compiler/metrowerks.hpp +27 -25
- data/ext/boost/config/compiler/mpw.hpp +27 -25
- data/ext/boost/config/compiler/pathscale.hpp +41 -41
- data/ext/boost/config/compiler/pgi.hpp +70 -29
- data/ext/boost/config/compiler/sunpro_cc.hpp +27 -25
- data/ext/boost/config/compiler/vacpp.hpp +36 -26
- data/ext/boost/config/compiler/visualc.hpp +80 -57
- data/ext/boost/config/stdlib/dinkumware.hpp +25 -22
- data/ext/boost/config/stdlib/libcomo.hpp +23 -20
- data/ext/boost/config/stdlib/libcpp.hpp +5 -4
- data/ext/boost/config/stdlib/libstdcpp3.hpp +34 -25
- data/ext/boost/config/stdlib/modena.hpp +23 -20
- data/ext/boost/config/stdlib/msl.hpp +23 -20
- data/ext/boost/config/stdlib/roguewave.hpp +23 -20
- data/ext/boost/config/stdlib/sgi.hpp +23 -20
- data/ext/boost/config/stdlib/stlport.hpp +23 -24
- data/ext/boost/config/stdlib/vacpp.hpp +23 -20
- data/ext/boost/config/suffix.hpp +266 -75
- data/ext/boost/container/container_fwd.hpp +39 -43
- data/ext/boost/date_time/adjust_functors.hpp +1 -1
- data/ext/boost/date_time/c_time.hpp +1 -1
- data/ext/boost/date_time/compiler_config.hpp +1 -1
- data/ext/boost/date_time/constrained_value.hpp +1 -1
- data/ext/boost/date_time/date.hpp +3 -3
- data/ext/boost/date_time/date_clock_device.hpp +1 -1
- data/ext/boost/date_time/date_defs.hpp +1 -1
- data/ext/boost/date_time/date_duration.hpp +9 -9
- data/ext/boost/date_time/date_duration_types.hpp +1 -1
- data/ext/boost/date_time/date_facet.hpp +7 -4
- data/ext/boost/date_time/date_format_simple.hpp +1 -1
- data/ext/boost/date_time/date_formatting.hpp +4 -2
- data/ext/boost/date_time/date_formatting_limited.hpp +1 -1
- data/ext/boost/date_time/date_formatting_locales.hpp +1 -1
- data/ext/boost/date_time/date_generator_formatter.hpp +1 -1
- data/ext/boost/date_time/date_generator_parser.hpp +1 -1
- data/ext/boost/date_time/date_generators.hpp +35 -35
- data/ext/boost/date_time/date_iterator.hpp +15 -15
- data/ext/boost/date_time/date_names_put.hpp +26 -26
- data/ext/boost/date_time/date_parsing.hpp +3 -1
- data/ext/boost/date_time/dst_rules.hpp +2 -2
- data/ext/boost/date_time/filetime_functions.hpp +1 -1
- data/ext/boost/date_time/format_date_parser.hpp +1 -7
- data/ext/boost/date_time/gregorian/conversion.hpp +1 -1
- data/ext/boost/date_time/gregorian/formatters.hpp +1 -1
- data/ext/boost/date_time/gregorian/formatters_limited.hpp +1 -1
- data/ext/boost/date_time/gregorian/greg_calendar.hpp +1 -1
- data/ext/boost/date_time/gregorian/greg_date.hpp +1 -1
- data/ext/boost/date_time/gregorian/greg_day.hpp +1 -1
- data/ext/boost/date_time/gregorian/greg_day_of_year.hpp +1 -1
- data/ext/boost/date_time/gregorian/greg_duration.hpp +1 -1
- data/ext/boost/date_time/gregorian/greg_duration_types.hpp +1 -1
- data/ext/boost/date_time/gregorian/greg_month.hpp +1 -1
- data/ext/boost/date_time/gregorian/greg_weekday.hpp +1 -1
- data/ext/boost/date_time/gregorian/greg_year.hpp +1 -1
- data/ext/boost/date_time/gregorian/greg_ymd.hpp +1 -1
- data/ext/boost/date_time/gregorian/gregorian.hpp +1 -1
- data/ext/boost/date_time/gregorian/gregorian_io.hpp +1 -1
- data/ext/boost/date_time/gregorian/gregorian_types.hpp +1 -1
- data/ext/boost/date_time/gregorian/parsers.hpp +1 -1
- data/ext/boost/date_time/gregorian_calendar.hpp +1 -1
- data/ext/boost/date_time/gregorian_calendar.ipp +1 -1
- data/ext/boost/date_time/int_adapter.hpp +1 -1
- data/ext/boost/date_time/iso_format.hpp +1 -1
- data/ext/boost/date_time/locale_config.hpp +1 -1
- data/ext/boost/date_time/microsec_time_clock.hpp +1 -1
- data/ext/boost/date_time/parse_format_base.hpp +1 -1
- data/ext/boost/date_time/period.hpp +1 -1
- data/ext/boost/date_time/period_formatter.hpp +5 -5
- data/ext/boost/date_time/period_parser.hpp +1 -1
- data/ext/boost/date_time/posix_time/conversion.hpp +1 -1
- data/ext/boost/date_time/posix_time/date_duration_operators.hpp +1 -1
- data/ext/boost/date_time/posix_time/posix_time.hpp +1 -1
- data/ext/boost/date_time/posix_time/posix_time_config.hpp +2 -2
- data/ext/boost/date_time/posix_time/posix_time_duration.hpp +1 -1
- data/ext/boost/date_time/posix_time/posix_time_io.hpp +1 -1
- data/ext/boost/date_time/posix_time/posix_time_system.hpp +1 -1
- data/ext/boost/date_time/posix_time/ptime.hpp +1 -1
- data/ext/boost/date_time/posix_time/time_formatters.hpp +1 -1
- data/ext/boost/date_time/posix_time/time_parsers.hpp +1 -1
- data/ext/boost/date_time/posix_time/time_period.hpp +1 -1
- data/ext/boost/date_time/special_defs.hpp +1 -1
- data/ext/boost/date_time/special_values_formatter.hpp +1 -1
- data/ext/boost/date_time/string_convert.hpp +1 -1
- data/ext/boost/date_time/string_parse_tree.hpp +1 -1
- data/ext/boost/date_time/strings_from_facet.hpp +1 -1
- data/ext/boost/date_time/time.hpp +1 -1
- data/ext/boost/date_time/time_clock.hpp +1 -1
- data/ext/boost/date_time/time_defs.hpp +1 -1
- data/ext/boost/date_time/time_duration.hpp +17 -6
- data/ext/boost/date_time/time_facet.hpp +1 -1
- data/ext/boost/date_time/time_formatting_streams.hpp +1 -1
- data/ext/boost/date_time/time_iterator.hpp +17 -17
- data/ext/boost/date_time/time_parsing.hpp +6 -3
- data/ext/boost/date_time/time_resolution_traits.hpp +1 -1
- data/ext/boost/date_time/time_system_counted.hpp +1 -1
- data/ext/boost/date_time/time_system_split.hpp +1 -1
- data/ext/boost/date_time/wrapping_int.hpp +27 -27
- data/ext/boost/date_time/year_month_day.hpp +1 -1
- data/ext/boost/detail/container_fwd.hpp +162 -0
- data/ext/boost/detail/is_incrementable.hpp +134 -0
- data/ext/boost/detail/scoped_enum_emulation.hpp +337 -0
- data/ext/boost/exception/detail/attribute_noreturn.hpp +1 -1
- data/ext/boost/exception/detail/error_info_impl.hpp +2 -1
- data/ext/boost/exception/detail/exception_ptr.hpp +7 -2
- data/ext/boost/exception/exception.hpp +29 -2
- data/ext/boost/exception/info.hpp +1 -1
- data/ext/boost/foreach.hpp +1128 -0
- data/ext/boost/foreach_fwd.hpp +51 -0
- data/ext/boost/function/function_template.hpp +50 -1
- data/ext/boost/functional/hash.hpp +7 -0
- data/ext/boost/functional/hash/detail/container_fwd_0x.hpp +29 -0
- data/ext/boost/functional/hash/detail/float_functions.hpp +246 -0
- data/ext/boost/functional/hash/detail/hash_float.hpp +268 -0
- data/ext/boost/functional/hash/detail/limits.hpp +61 -0
- data/ext/boost/functional/hash/extensions.hpp +367 -0
- data/ext/boost/functional/hash/hash.hpp +509 -0
- data/ext/boost/functional/hash/hash_fwd.hpp +40 -0
- data/ext/boost/functional/hash_fwd.hpp +7 -0
- data/ext/boost/indirect_reference.hpp +43 -0
- data/ext/boost/integer.hpp +19 -15
- data/ext/boost/integer/static_log2.hpp +127 -0
- data/ext/boost/integer_traits.hpp +1 -1
- data/ext/boost/iterator/iterator_facade.hpp +32 -36
- data/ext/boost/iterator/reverse_iterator.hpp +1 -1
- data/ext/boost/iterator/transform_iterator.hpp +1 -1
- data/ext/boost/lambda/core.hpp +79 -0
- data/ext/boost/lambda/detail/actions.hpp +174 -0
- data/ext/boost/lambda/detail/arity_code.hpp +110 -0
- data/ext/boost/lambda/detail/function_adaptors.hpp +789 -0
- data/ext/boost/lambda/detail/is_instance_of.hpp +104 -0
- data/ext/boost/lambda/detail/lambda_config.hpp +48 -0
- data/ext/boost/lambda/detail/lambda_functor_base.hpp +615 -0
- data/ext/boost/lambda/detail/lambda_functors.hpp +324 -0
- data/ext/boost/lambda/detail/lambda_fwd.hpp +74 -0
- data/ext/boost/lambda/detail/lambda_traits.hpp +578 -0
- data/ext/boost/lambda/detail/member_ptr.hpp +737 -0
- data/ext/boost/lambda/detail/operator_actions.hpp +139 -0
- data/ext/boost/lambda/detail/operator_lambda_func_base.hpp +271 -0
- data/ext/boost/lambda/detail/operator_return_type_traits.hpp +917 -0
- data/ext/boost/lambda/detail/operators.hpp +370 -0
- data/ext/boost/lambda/detail/ret.hpp +325 -0
- data/ext/boost/lambda/detail/return_type_traits.hpp +282 -0
- data/ext/boost/lambda/detail/select_functions.hpp +74 -0
- data/ext/boost/lambda/lambda.hpp +34 -0
- data/ext/boost/lexical_cast.hpp +807 -497
- data/ext/boost/libs/system/src/error_code.cpp +430 -0
- data/ext/boost/libs/system/src/local_free_on_destruction.hpp +40 -0
- data/ext/boost/libs/thread/src/future.cpp +61 -0
- data/ext/boost/{src → libs/thread/src}/pthread/once.cpp +28 -9
- data/ext/boost/{src → libs/thread/src}/pthread/thread.cpp +139 -47
- data/ext/boost/{src → libs/thread/src}/pthread/timeconv.inl +0 -0
- data/ext/boost/{src → libs/thread/src}/tss_null.cpp +2 -2
- data/ext/boost/math/policies/policy.hpp +4 -4
- data/ext/boost/math/special_functions/fpclassify.hpp +10 -6
- data/ext/boost/math/special_functions/math_fwd.hpp +226 -0
- data/ext/boost/math/tools/config.hpp +10 -1
- data/ext/boost/move/move.hpp +70 -19
- data/ext/boost/mpl/O1_size.hpp +1 -1
- data/ext/boost/mpl/O1_size_fwd.hpp +1 -1
- data/ext/boost/mpl/accumulate.hpp +39 -0
- data/ext/boost/mpl/advance.hpp +1 -1
- data/ext/boost/mpl/advance_fwd.hpp +1 -1
- data/ext/boost/mpl/alias.hpp +21 -0
- data/ext/boost/mpl/always.hpp +1 -1
- data/ext/boost/mpl/and.hpp +1 -1
- data/ext/boost/mpl/apply.hpp +1 -1
- data/ext/boost/mpl/apply_fwd.hpp +1 -1
- data/ext/boost/mpl/apply_wrap.hpp +1 -1
- data/ext/boost/mpl/arg.hpp +1 -1
- data/ext/boost/mpl/arg_fwd.hpp +1 -1
- data/ext/boost/mpl/arithmetic.hpp +25 -0
- data/ext/boost/mpl/as_sequence.hpp +38 -0
- data/ext/boost/mpl/assert.hpp +1 -1
- data/ext/boost/mpl/at.hpp +1 -1
- data/ext/boost/mpl/at_fwd.hpp +1 -1
- data/ext/boost/mpl/aux_/O1_size_impl.hpp +1 -1
- data/ext/boost/mpl/aux_/adl_barrier.hpp +1 -1
- data/ext/boost/mpl/aux_/advance_backward.hpp +1 -1
- data/ext/boost/mpl/aux_/advance_forward.hpp +1 -1
- data/ext/boost/mpl/aux_/apply_1st.hpp +35 -0
- data/ext/boost/mpl/aux_/arg_typedef.hpp +1 -1
- data/ext/boost/mpl/aux_/arithmetic_op.hpp +1 -1
- data/ext/boost/mpl/aux_/arity.hpp +1 -1
- data/ext/boost/mpl/aux_/arity_spec.hpp +1 -1
- data/ext/boost/mpl/aux_/at_impl.hpp +1 -1
- data/ext/boost/mpl/aux_/back_impl.hpp +43 -0
- data/ext/boost/mpl/aux_/basic_bind.hpp +21 -0
- data/ext/boost/mpl/aux_/begin_end_impl.hpp +1 -1
- data/ext/boost/mpl/aux_/clear_impl.hpp +1 -1
- data/ext/boost/mpl/aux_/common_name_wknd.hpp +1 -1
- data/ext/boost/mpl/aux_/comparison_op.hpp +1 -1
- data/ext/boost/mpl/aux_/config/adl.hpp +1 -1
- data/ext/boost/mpl/aux_/config/arrays.hpp +1 -1
- data/ext/boost/mpl/aux_/config/bind.hpp +1 -1
- data/ext/boost/mpl/aux_/config/compiler.hpp +1 -1
- data/ext/boost/mpl/aux_/config/ctps.hpp +1 -1
- data/ext/boost/mpl/aux_/config/dependent_nttp.hpp +35 -0
- data/ext/boost/mpl/aux_/config/dmc_ambiguous_ctps.hpp +27 -0
- data/ext/boost/mpl/aux_/config/dtp.hpp +1 -1
- data/ext/boost/mpl/aux_/config/eti.hpp +1 -1
- data/ext/boost/mpl/aux_/config/forwarding.hpp +1 -1
- data/ext/boost/mpl/aux_/config/gcc.hpp +1 -1
- data/ext/boost/mpl/aux_/config/has_apply.hpp +1 -1
- data/ext/boost/mpl/aux_/config/has_xxx.hpp +1 -1
- data/ext/boost/mpl/aux_/config/integral.hpp +1 -1
- data/ext/boost/mpl/aux_/config/intel.hpp +1 -1
- data/ext/boost/mpl/aux_/config/lambda.hpp +1 -1
- data/ext/boost/mpl/aux_/config/msvc.hpp +1 -1
- data/ext/boost/mpl/aux_/config/msvc_typename.hpp +1 -1
- data/ext/boost/mpl/aux_/config/nttp.hpp +1 -1
- data/ext/boost/mpl/aux_/config/operators.hpp +33 -0
- data/ext/boost/mpl/aux_/config/overload_resolution.hpp +1 -1
- data/ext/boost/mpl/aux_/config/pp_counter.hpp +1 -1
- data/ext/boost/mpl/aux_/config/preprocessor.hpp +1 -1
- data/ext/boost/mpl/aux_/config/static_constant.hpp +1 -1
- data/ext/boost/mpl/aux_/config/ttp.hpp +1 -1
- data/ext/boost/mpl/aux_/config/typeof.hpp +1 -1
- data/ext/boost/mpl/aux_/config/use_preprocessed.hpp +1 -1
- data/ext/boost/mpl/aux_/config/workaround.hpp +1 -1
- data/ext/boost/mpl/aux_/contains_impl.hpp +1 -1
- data/ext/boost/mpl/aux_/count_args.hpp +105 -0
- data/ext/boost/mpl/aux_/count_impl.hpp +44 -0
- data/ext/boost/mpl/aux_/empty_impl.hpp +43 -0
- data/ext/boost/mpl/aux_/erase_impl.hpp +69 -0
- data/ext/boost/mpl/aux_/erase_key_impl.hpp +32 -0
- data/ext/boost/mpl/aux_/filter_iter.hpp +140 -0
- data/ext/boost/mpl/aux_/fold_impl.hpp +1 -1
- data/ext/boost/mpl/aux_/fold_impl_body.hpp +365 -0
- data/ext/boost/mpl/aux_/fold_op.hpp +37 -0
- data/ext/boost/mpl/aux_/fold_pred.hpp +37 -0
- data/ext/boost/mpl/aux_/front_impl.hpp +41 -0
- data/ext/boost/mpl/aux_/full_lambda.hpp +1 -1
- data/ext/boost/mpl/aux_/has_apply.hpp +1 -1
- data/ext/boost/mpl/aux_/has_begin.hpp +1 -1
- data/ext/boost/mpl/aux_/has_key_impl.hpp +34 -0
- data/ext/boost/mpl/aux_/has_rebind.hpp +99 -0
- data/ext/boost/mpl/aux_/has_size.hpp +1 -1
- data/ext/boost/mpl/aux_/has_tag.hpp +1 -1
- data/ext/boost/mpl/aux_/has_type.hpp +1 -1
- data/ext/boost/mpl/aux_/include_preprocessed.hpp +1 -1
- data/ext/boost/mpl/aux_/insert_impl.hpp +68 -0
- data/ext/boost/mpl/aux_/insert_range_impl.hpp +77 -0
- data/ext/boost/mpl/aux_/inserter_algorithm.hpp +1 -1
- data/ext/boost/mpl/aux_/integral_wrapper.hpp +1 -1
- data/ext/boost/mpl/aux_/is_msvc_eti_arg.hpp +1 -1
- data/ext/boost/mpl/aux_/iter_apply.hpp +1 -1
- data/ext/boost/mpl/aux_/iter_fold_if_impl.hpp +1 -1
- data/ext/boost/mpl/aux_/iter_fold_impl.hpp +1 -1
- data/ext/boost/mpl/aux_/iter_push_front.hpp +36 -0
- data/ext/boost/mpl/aux_/joint_iter.hpp +120 -0
- data/ext/boost/mpl/aux_/lambda_arity_param.hpp +1 -1
- data/ext/boost/mpl/aux_/lambda_no_ctps.hpp +193 -0
- data/ext/boost/mpl/aux_/lambda_spec.hpp +1 -1
- data/ext/boost/mpl/aux_/lambda_support.hpp +1 -1
- data/ext/boost/mpl/aux_/largest_int.hpp +1 -1
- data/ext/boost/mpl/aux_/logical_op.hpp +165 -0
- data/ext/boost/mpl/aux_/msvc_dtw.hpp +68 -0
- data/ext/boost/mpl/aux_/msvc_eti_base.hpp +1 -1
- data/ext/boost/mpl/aux_/msvc_is_class.hpp +58 -0
- data/ext/boost/mpl/aux_/msvc_never_true.hpp +1 -1
- data/ext/boost/mpl/aux_/msvc_type.hpp +1 -1
- data/ext/boost/mpl/aux_/na.hpp +1 -1
- data/ext/boost/mpl/aux_/na_assert.hpp +1 -1
- data/ext/boost/mpl/aux_/na_fwd.hpp +1 -1
- data/ext/boost/mpl/aux_/na_spec.hpp +1 -1
- data/ext/boost/mpl/aux_/nested_type_wknd.hpp +1 -1
- data/ext/boost/mpl/aux_/nttp_decl.hpp +1 -1
- data/ext/boost/mpl/aux_/numeric_cast_utils.hpp +1 -1
- data/ext/boost/mpl/aux_/numeric_op.hpp +1 -1
- data/ext/boost/mpl/aux_/order_impl.hpp +76 -0
- data/ext/boost/mpl/aux_/overload_names.hpp +48 -0
- data/ext/boost/mpl/aux_/partition_op.hpp +58 -0
- data/ext/boost/mpl/aux_/pop_back_impl.hpp +34 -0
- data/ext/boost/mpl/aux_/pop_front_impl.hpp +44 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/advance_backward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/advance_forward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/and.hpp +69 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/apply.hpp +169 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/apply_fwd.hpp +52 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/apply_wrap.hpp +461 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/arg.hpp +117 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/basic_bind.hpp +300 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/bind.hpp +397 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/bind_fwd.hpp +46 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/bitand.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/bitor.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/bitxor.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/deque.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/divides.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/equal_to.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/fold_impl.hpp +180 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/full_lambda.hpp +558 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/greater.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/greater_equal.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/inherit.hpp +139 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/iter_fold_if_impl.hpp +133 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/iter_fold_impl.hpp +180 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/lambda_no_ctps.hpp +229 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/less.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/less_equal.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/list.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/list_c.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/map.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/minus.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/modulus.hpp +101 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/not_equal_to.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/or.hpp +69 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/placeholders.hpp +105 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/plus.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/quote.hpp +119 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/reverse_fold_impl.hpp +295 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/reverse_iter_fold_impl.hpp +295 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/set.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/set_c.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/shift_left.hpp +99 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/shift_right.hpp +99 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/template_arity.hpp +40 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/times.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/unpack_args.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/vector.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc/vector_c.hpp +309 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/advance_backward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/advance_forward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/and.hpp +69 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/apply.hpp +169 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/apply_fwd.hpp +52 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/apply_wrap.hpp +456 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/arg.hpp +123 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/basic_bind.hpp +306 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/bind.hpp +403 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/bind_fwd.hpp +46 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/bitand.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/bitor.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/bitxor.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/deque.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/divides.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/equal_to.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/fold_impl.hpp +180 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/full_lambda.hpp +558 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/greater.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/greater_equal.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/inherit.hpp +141 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/iter_fold_if_impl.hpp +133 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/iter_fold_impl.hpp +180 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/lambda_no_ctps.hpp +229 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/less.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/less_equal.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/list.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/list_c.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/map.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/minus.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/modulus.hpp +101 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/not_equal_to.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/or.hpp +69 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/placeholders.hpp +105 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/plus.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/quote.hpp +11 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/reverse_fold_impl.hpp +295 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/reverse_iter_fold_impl.hpp +295 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/set.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/set_c.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/shift_left.hpp +99 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/shift_right.hpp +99 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/template_arity.hpp +40 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/times.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/unpack_args.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/vector.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc551/vector_c.hpp +309 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/advance_backward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/advance_forward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/and.hpp +69 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/apply.hpp +169 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/apply_fwd.hpp +52 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/apply_wrap.hpp +456 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/arg.hpp +117 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/basic_bind.hpp +300 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/bind.hpp +397 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/bind_fwd.hpp +46 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/bitand.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/bitor.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/bitxor.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/deque.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/divides.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/equal_to.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/fold_impl.hpp +180 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/full_lambda.hpp +558 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/greater.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/greater_equal.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/inherit.hpp +139 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/iter_fold_if_impl.hpp +133 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/iter_fold_impl.hpp +180 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/lambda_no_ctps.hpp +229 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/less.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/less_equal.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/list.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/list_c.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/map.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/minus.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/modulus.hpp +101 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/not_equal_to.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/or.hpp +69 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/placeholders.hpp +105 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/plus.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/quote.hpp +11 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/reverse_fold_impl.hpp +295 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/reverse_iter_fold_impl.hpp +295 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/set.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/set_c.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/shift_left.hpp +99 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/shift_right.hpp +99 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/template_arity.hpp +40 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/times.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/unpack_args.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/vector.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/bcc_pre590/vector_c.hpp +309 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/advance_backward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/advance_forward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/and.hpp +69 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/apply.hpp +169 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/apply_fwd.hpp +52 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/apply_wrap.hpp +84 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/arg.hpp +123 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/basic_bind.hpp +406 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/bind.hpp +515 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/bind_fwd.hpp +53 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/bitand.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/bitor.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/bitxor.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/deque.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/divides.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/equal_to.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/fold_impl.hpp +180 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/full_lambda.hpp +536 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/greater.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/greater_equal.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/inherit.hpp +141 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/iter_fold_if_impl.hpp +133 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/iter_fold_impl.hpp +180 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/lambda_no_ctps.hpp +229 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/less.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/less_equal.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/list.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/list_c.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/map.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/minus.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/modulus.hpp +101 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/not_equal_to.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/or.hpp +69 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/placeholders.hpp +105 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/plus.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/quote.hpp +123 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/reverse_fold_impl.hpp +231 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/reverse_iter_fold_impl.hpp +231 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/set.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/set_c.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/shift_left.hpp +99 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/shift_right.hpp +99 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/template_arity.hpp +11 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/times.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/unpack_args.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/vector.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/dmc/vector_c.hpp +309 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/basic_bind.hpp +440 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/bitand.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/bitor.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/bitxor.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/deque.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/divides.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/inherit.hpp +141 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/lambda_no_ctps.hpp +229 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/list_c.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/map.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/modulus.hpp +101 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/reverse_iter_fold_impl.hpp +231 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/set.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/set_c.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/shift_left.hpp +99 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/shift_right.hpp +99 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/unpack_args.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/gcc/vector_c.hpp +309 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/advance_backward.hpp +132 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/advance_forward.hpp +132 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/and.hpp +73 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/apply.hpp +166 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/apply_fwd.hpp +46 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/apply_wrap.hpp +247 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/arg.hpp +123 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/basic_bind.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/bind.hpp +432 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/bind_fwd.hpp +46 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/bitand.hpp +149 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/bitor.hpp +149 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/bitxor.hpp +149 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/deque.hpp +556 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/divides.hpp +148 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/equal_to.hpp +102 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/fold_impl.hpp +293 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/full_lambda.hpp +554 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/greater.hpp +102 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/greater_equal.hpp +102 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/inherit.hpp +166 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/iter_fold_if_impl.hpp +133 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/iter_fold_impl.hpp +293 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/lambda_no_ctps.hpp +229 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/less.hpp +102 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/less_equal.hpp +102 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/list.hpp +556 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/list_c.hpp +534 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/map.hpp +556 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/minus.hpp +148 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/modulus.hpp +115 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/not_equal_to.hpp +102 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/or.hpp +73 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/placeholders.hpp +105 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/plus.hpp +148 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/quote.hpp +11 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/reverse_fold_impl.hpp +343 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/reverse_iter_fold_impl.hpp +343 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/set.hpp +556 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/set_c.hpp +534 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/shift_left.hpp +114 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/shift_right.hpp +114 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/template_arity.hpp +46 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/times.hpp +148 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/unpack_args.hpp +109 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/vector.hpp +556 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc60/vector_c.hpp +534 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/advance_backward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/advance_forward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/and.hpp +71 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/apply.hpp +160 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/apply_fwd.hpp +46 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/apply_wrap.hpp +138 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/arg.hpp +123 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/basic_bind.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/bind.hpp +432 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/bind_fwd.hpp +46 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/bitand.hpp +151 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/bitor.hpp +151 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/bitxor.hpp +151 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/deque.hpp +556 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/divides.hpp +150 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/equal_to.hpp +102 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/fold_impl.hpp +245 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/full_lambda.hpp +554 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/greater.hpp +102 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/greater_equal.hpp +102 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/inherit.hpp +166 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/iter_fold_if_impl.hpp +133 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/iter_fold_impl.hpp +245 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/lambda_no_ctps.hpp +229 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/less.hpp +102 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/less_equal.hpp +102 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/list.hpp +556 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/list_c.hpp +534 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/map.hpp +556 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/minus.hpp +150 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/modulus.hpp +115 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/not_equal_to.hpp +102 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/or.hpp +71 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/placeholders.hpp +105 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/plus.hpp +150 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/quote.hpp +116 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/reverse_fold_impl.hpp +295 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/reverse_iter_fold_impl.hpp +295 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/set.hpp +556 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/set_c.hpp +534 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/shift_left.hpp +114 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/shift_right.hpp +114 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/template_arity.hpp +46 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/times.hpp +150 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/unpack_args.hpp +109 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/vector.hpp +556 -0
- data/ext/boost/mpl/aux_/preprocessed/msvc70/vector_c.hpp +534 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/advance_backward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/advance_forward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/and.hpp +69 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/apply.hpp +169 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/apply_fwd.hpp +52 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/apply_wrap.hpp +456 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/arg.hpp +123 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/basic_bind.hpp +440 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/bind.hpp +561 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/bind_fwd.hpp +52 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/bitand.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/bitor.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/bitxor.hpp +147 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/deque.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/divides.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/equal_to.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/fold_impl.hpp +180 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/full_lambda.hpp +554 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/greater.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/greater_equal.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/inherit.hpp +141 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/iter_fold_if_impl.hpp +133 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/iter_fold_impl.hpp +180 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/lambda_no_ctps.hpp +229 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/less.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/less_equal.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/list.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/list_c.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/map.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/minus.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/modulus.hpp +101 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/not_equal_to.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/or.hpp +69 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/placeholders.hpp +105 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/plus.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/quote.hpp +123 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/reverse_fold_impl.hpp +231 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/reverse_iter_fold_impl.hpp +231 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/set.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/set_c.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/shift_left.hpp +99 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/shift_right.hpp +99 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/template_arity.hpp +11 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/times.hpp +146 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/unpack_args.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/vector.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/mwcw/vector_c.hpp +309 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/advance_backward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/advance_forward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/and.hpp +73 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/apply.hpp +268 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/apply_fwd.hpp +50 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/apply_wrap.hpp +78 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/arg.hpp +123 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/basic_bind.hpp +486 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/bind.hpp +590 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/bind_fwd.hpp +52 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/bitand.hpp +134 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/bitor.hpp +134 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/bitxor.hpp +134 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/deque.hpp +556 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/divides.hpp +133 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/equal_to.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/fold_impl.hpp +245 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/full_lambda.hpp +554 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/greater.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/greater_equal.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/inherit.hpp +166 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/iter_fold_if_impl.hpp +133 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/iter_fold_impl.hpp +245 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/lambda_no_ctps.hpp +229 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/less.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/less_equal.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/list.hpp +556 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/list_c.hpp +534 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/map.hpp +556 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/minus.hpp +133 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/modulus.hpp +101 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/not_equal_to.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/or.hpp +73 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/placeholders.hpp +105 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/plus.hpp +133 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/quote.hpp +116 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/reverse_fold_impl.hpp +295 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/reverse_iter_fold_impl.hpp +295 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/set.hpp +556 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/set_c.hpp +534 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/shift_left.hpp +99 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/shift_right.hpp +99 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/template_arity.hpp +40 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/times.hpp +133 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/unpack_args.hpp +109 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/vector.hpp +556 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ctps/vector_c.hpp +534 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/advance_backward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/advance_forward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/and.hpp +69 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/apply.hpp +169 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/apply_fwd.hpp +52 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/apply_wrap.hpp +84 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/arg.hpp +123 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/basic_bind.hpp +369 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/bind.hpp +466 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/bind_fwd.hpp +52 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/bitand.hpp +157 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/bitor.hpp +157 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/bitxor.hpp +157 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/deque.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/divides.hpp +156 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/equal_to.hpp +98 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/fold_impl.hpp +180 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/full_lambda.hpp +554 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/greater.hpp +98 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/greater_equal.hpp +98 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/inherit.hpp +141 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/iter_fold_if_impl.hpp +133 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/iter_fold_impl.hpp +180 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/lambda_no_ctps.hpp +229 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/less.hpp +98 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/less_equal.hpp +98 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/list.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/list_c.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/map.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/minus.hpp +156 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/modulus.hpp +111 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/not_equal_to.hpp +98 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/or.hpp +69 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/placeholders.hpp +105 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/plus.hpp +156 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/quote.hpp +11 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/reverse_fold_impl.hpp +231 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/reverse_iter_fold_impl.hpp +231 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/set.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/set_c.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/shift_left.hpp +110 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/shift_right.hpp +110 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/template_arity.hpp +40 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/times.hpp +156 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/unpack_args.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/vector.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/no_ttp/vector_c.hpp +309 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/advance_backward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/advance_forward.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/and.hpp +64 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/apply.hpp +139 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/apply_fwd.hpp +52 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/apply_wrap.hpp +84 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/arg.hpp +123 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/basic_bind.hpp +440 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/bind.hpp +561 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/bind_fwd.hpp +52 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/bitand.hpp +142 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/bitor.hpp +142 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/bitxor.hpp +142 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/deque.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/divides.hpp +141 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/equal_to.hpp +92 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/fold_impl.hpp +180 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/full_lambda.hpp +554 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/greater.hpp +92 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/greater_equal.hpp +92 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/inherit.hpp +125 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/iter_fold_if_impl.hpp +133 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/iter_fold_impl.hpp +180 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/lambda_no_ctps.hpp +228 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/less.hpp +92 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/less_equal.hpp +92 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/list.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/list_c.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/map.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/minus.hpp +141 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/modulus.hpp +99 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/not_equal_to.hpp +92 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/or.hpp +64 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/placeholders.hpp +105 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/plus.hpp +141 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/quote.hpp +123 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/reverse_fold_impl.hpp +231 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/reverse_iter_fold_impl.hpp +231 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/set.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/set_c.hpp +328 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/shift_left.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/shift_right.hpp +97 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/template_arity.hpp +11 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/times.hpp +141 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/unpack_args.hpp +94 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/vector.hpp +323 -0
- data/ext/boost/mpl/aux_/preprocessed/plain/vector_c.hpp +309 -0
- data/ext/boost/mpl/aux_/preprocessor/add.hpp +65 -0
- data/ext/boost/mpl/aux_/preprocessor/def_params_tail.hpp +1 -1
- data/ext/boost/mpl/aux_/preprocessor/default_params.hpp +1 -1
- data/ext/boost/mpl/aux_/preprocessor/enum.hpp +1 -1
- data/ext/boost/mpl/aux_/preprocessor/ext_params.hpp +78 -0
- data/ext/boost/mpl/aux_/preprocessor/filter_params.hpp +1 -1
- data/ext/boost/mpl/aux_/preprocessor/is_seq.hpp +54 -0
- data/ext/boost/mpl/aux_/preprocessor/params.hpp +1 -1
- data/ext/boost/mpl/aux_/preprocessor/partial_spec_params.hpp +32 -0
- data/ext/boost/mpl/aux_/preprocessor/range.hpp +23 -0
- data/ext/boost/mpl/aux_/preprocessor/repeat.hpp +51 -0
- data/ext/boost/mpl/aux_/preprocessor/sub.hpp +1 -1
- data/ext/boost/mpl/aux_/preprocessor/token_equal.hpp +56 -0
- data/ext/boost/mpl/aux_/preprocessor/tuple.hpp +29 -0
- data/ext/boost/mpl/aux_/ptr_to_ref.hpp +46 -0
- data/ext/boost/mpl/aux_/push_back_impl.hpp +1 -1
- data/ext/boost/mpl/aux_/push_front_impl.hpp +1 -1
- data/ext/boost/mpl/aux_/range_c/O1_size.hpp +31 -0
- data/ext/boost/mpl/aux_/range_c/back.hpp +34 -0
- data/ext/boost/mpl/aux_/range_c/empty.hpp +37 -0
- data/ext/boost/mpl/aux_/range_c/front.hpp +33 -0
- data/ext/boost/mpl/aux_/range_c/iterator.hpp +106 -0
- data/ext/boost/mpl/aux_/range_c/size.hpp +37 -0
- data/ext/boost/mpl/aux_/range_c/tag.hpp +24 -0
- data/ext/boost/mpl/aux_/reverse_fold_impl.hpp +1 -1
- data/ext/boost/mpl/aux_/reverse_fold_impl_body.hpp +412 -0
- data/ext/boost/mpl/aux_/reverse_iter_fold_impl.hpp +43 -0
- data/ext/boost/mpl/aux_/sequence_wrapper.hpp +292 -0
- data/ext/boost/mpl/aux_/shift_op.hpp +87 -0
- data/ext/boost/mpl/aux_/single_element_iter.hpp +118 -0
- data/ext/boost/mpl/aux_/size_impl.hpp +1 -1
- data/ext/boost/mpl/aux_/sort_impl.hpp +121 -0
- data/ext/boost/mpl/aux_/static_cast.hpp +1 -1
- data/ext/boost/mpl/aux_/template_arity.hpp +1 -1
- data/ext/boost/mpl/aux_/template_arity_fwd.hpp +1 -1
- data/ext/boost/mpl/aux_/test.hpp +32 -0
- data/ext/boost/mpl/aux_/test/assert.hpp +29 -0
- data/ext/boost/mpl/aux_/test/data.hpp +25 -0
- data/ext/boost/mpl/aux_/test/test_case.hpp +21 -0
- data/ext/boost/mpl/aux_/traits_lambda_spec.hpp +1 -1
- data/ext/boost/mpl/aux_/transform_iter.hpp +123 -0
- data/ext/boost/mpl/aux_/type_wrapper.hpp +1 -1
- data/ext/boost/mpl/aux_/unwrap.hpp +47 -0
- data/ext/boost/mpl/aux_/value_wknd.hpp +1 -1
- data/ext/boost/mpl/aux_/yes_no.hpp +1 -1
- data/ext/boost/mpl/back.hpp +39 -0
- data/ext/boost/mpl/back_fwd.hpp +1 -1
- data/ext/boost/mpl/back_inserter.hpp +1 -1
- data/ext/boost/mpl/base.hpp +35 -0
- data/ext/boost/mpl/begin.hpp +19 -0
- data/ext/boost/mpl/begin_end.hpp +1 -1
- data/ext/boost/mpl/begin_end_fwd.hpp +1 -1
- data/ext/boost/mpl/bind.hpp +1 -1
- data/ext/boost/mpl/bind_fwd.hpp +1 -1
- data/ext/boost/mpl/bitand.hpp +45 -0
- data/ext/boost/mpl/bitor.hpp +45 -0
- data/ext/boost/mpl/bitwise.hpp +24 -0
- data/ext/boost/mpl/bitxor.hpp +23 -0
- data/ext/boost/mpl/bool.hpp +1 -1
- data/ext/boost/mpl/bool_fwd.hpp +1 -1
- data/ext/boost/mpl/char.hpp +22 -0
- data/ext/boost/mpl/char_fwd.hpp +27 -0
- data/ext/boost/mpl/clear.hpp +1 -1
- data/ext/boost/mpl/clear_fwd.hpp +1 -1
- data/ext/boost/mpl/comparison.hpp +1 -1
- data/ext/boost/mpl/contains.hpp +1 -1
- data/ext/boost/mpl/contains_fwd.hpp +1 -1
- data/ext/boost/mpl/copy.hpp +58 -0
- data/ext/boost/mpl/copy_if.hpp +96 -0
- data/ext/boost/mpl/count.hpp +40 -0
- data/ext/boost/mpl/count_fwd.hpp +24 -0
- data/ext/boost/mpl/count_if.hpp +79 -0
- data/ext/boost/mpl/deque.hpp +58 -0
- data/ext/boost/mpl/deref.hpp +1 -1
- data/ext/boost/mpl/distance.hpp +1 -1
- data/ext/boost/mpl/distance_fwd.hpp +1 -1
- data/ext/boost/mpl/divides.hpp +21 -0
- data/ext/boost/mpl/empty.hpp +39 -0
- data/ext/boost/mpl/empty_base.hpp +59 -0
- data/ext/boost/mpl/empty_fwd.hpp +1 -1
- data/ext/boost/mpl/empty_sequence.hpp +42 -0
- data/ext/boost/mpl/end.hpp +19 -0
- data/ext/boost/mpl/equal.hpp +112 -0
- data/ext/boost/mpl/equal_to.hpp +1 -1
- data/ext/boost/mpl/erase.hpp +42 -0
- data/ext/boost/mpl/erase_fwd.hpp +24 -0
- data/ext/boost/mpl/erase_key.hpp +41 -0
- data/ext/boost/mpl/erase_key_fwd.hpp +24 -0
- data/ext/boost/mpl/eval_if.hpp +1 -1
- data/ext/boost/mpl/filter_view.hpp +46 -0
- data/ext/boost/mpl/find.hpp +1 -1
- data/ext/boost/mpl/find_if.hpp +1 -1
- data/ext/boost/mpl/fold.hpp +1 -1
- data/ext/boost/mpl/for_each.hpp +116 -0
- data/ext/boost/mpl/front.hpp +39 -0
- data/ext/boost/mpl/front_fwd.hpp +1 -1
- data/ext/boost/mpl/front_inserter.hpp +1 -1
- data/ext/boost/mpl/greater.hpp +1 -1
- data/ext/boost/mpl/greater_equal.hpp +1 -1
- data/ext/boost/mpl/has_key.hpp +41 -0
- data/ext/boost/mpl/has_key_fwd.hpp +25 -0
- data/ext/boost/mpl/has_xxx.hpp +1 -1
- data/ext/boost/mpl/identity.hpp +1 -1
- data/ext/boost/mpl/if.hpp +1 -1
- data/ext/boost/mpl/index_if.hpp +60 -0
- data/ext/boost/mpl/index_of.hpp +39 -0
- data/ext/boost/mpl/inherit.hpp +229 -0
- data/ext/boost/mpl/inherit_linearly.hpp +39 -0
- data/ext/boost/mpl/insert.hpp +41 -0
- data/ext/boost/mpl/insert_fwd.hpp +24 -0
- data/ext/boost/mpl/insert_range.hpp +41 -0
- data/ext/boost/mpl/insert_range_fwd.hpp +24 -0
- data/ext/boost/mpl/inserter.hpp +1 -1
- data/ext/boost/mpl/int.hpp +1 -1
- data/ext/boost/mpl/int_fwd.hpp +1 -1
- data/ext/boost/mpl/integral_c.hpp +1 -1
- data/ext/boost/mpl/integral_c_fwd.hpp +1 -1
- data/ext/boost/mpl/integral_c_tag.hpp +1 -1
- data/ext/boost/mpl/is_placeholder.hpp +67 -0
- data/ext/boost/mpl/is_sequence.hpp +112 -0
- data/ext/boost/mpl/iter_fold.hpp +1 -1
- data/ext/boost/mpl/iter_fold_if.hpp +1 -1
- data/ext/boost/mpl/iterator_category.hpp +35 -0
- data/ext/boost/mpl/iterator_range.hpp +1 -1
- data/ext/boost/mpl/iterator_tags.hpp +1 -1
- data/ext/boost/mpl/joint_view.hpp +65 -0
- data/ext/boost/mpl/key_type.hpp +42 -0
- data/ext/boost/mpl/key_type_fwd.hpp +25 -0
- data/ext/boost/mpl/lambda.hpp +1 -1
- data/ext/boost/mpl/lambda_fwd.hpp +1 -1
- data/ext/boost/mpl/less.hpp +1 -1
- data/ext/boost/mpl/less_equal.hpp +1 -1
- data/ext/boost/mpl/limits/arity.hpp +1 -1
- data/ext/boost/mpl/limits/list.hpp +1 -1
- data/ext/boost/mpl/limits/map.hpp +21 -0
- data/ext/boost/mpl/limits/set.hpp +21 -0
- data/ext/boost/mpl/limits/string.hpp +21 -0
- data/ext/boost/mpl/limits/unrolling.hpp +21 -0
- data/ext/boost/mpl/limits/vector.hpp +1 -1
- data/ext/boost/mpl/list.hpp +1 -1
- data/ext/boost/mpl/list/aux_/O1_size.hpp +1 -1
- data/ext/boost/mpl/list/aux_/begin_end.hpp +1 -1
- data/ext/boost/mpl/list/aux_/clear.hpp +1 -1
- data/ext/boost/mpl/list/aux_/empty.hpp +1 -1
- data/ext/boost/mpl/list/aux_/front.hpp +1 -1
- data/ext/boost/mpl/list/aux_/include_preprocessed.hpp +1 -1
- data/ext/boost/mpl/list/aux_/item.hpp +1 -1
- data/ext/boost/mpl/list/aux_/iterator.hpp +1 -1
- data/ext/boost/mpl/list/aux_/numbered.hpp +68 -0
- data/ext/boost/mpl/list/aux_/numbered_c.hpp +71 -0
- data/ext/boost/mpl/list/aux_/pop_front.hpp +1 -1
- data/ext/boost/mpl/list/aux_/preprocessed/plain/list10_c.hpp +164 -0
- data/ext/boost/mpl/list/aux_/preprocessed/plain/list20_c.hpp +173 -0
- data/ext/boost/mpl/list/aux_/preprocessed/plain/list30.hpp +189 -0
- data/ext/boost/mpl/list/aux_/preprocessed/plain/list30_c.hpp +183 -0
- data/ext/boost/mpl/list/aux_/preprocessed/plain/list40.hpp +209 -0
- data/ext/boost/mpl/list/aux_/preprocessed/plain/list40_c.hpp +193 -0
- data/ext/boost/mpl/list/aux_/preprocessed/plain/list50.hpp +229 -0
- data/ext/boost/mpl/list/aux_/preprocessed/plain/list50_c.hpp +203 -0
- data/ext/boost/mpl/list/aux_/push_back.hpp +1 -1
- data/ext/boost/mpl/list/aux_/push_front.hpp +1 -1
- data/ext/boost/mpl/list/aux_/size.hpp +1 -1
- data/ext/boost/mpl/list/aux_/tag.hpp +1 -1
- data/ext/boost/mpl/list/list0.hpp +1 -1
- data/ext/boost/mpl/list/list0_c.hpp +31 -0
- data/ext/boost/mpl/list/list10.hpp +1 -1
- data/ext/boost/mpl/list/list10_c.hpp +43 -0
- data/ext/boost/mpl/list/list20.hpp +1 -1
- data/ext/boost/mpl/list/list20_c.hpp +43 -0
- data/ext/boost/mpl/list/list30.hpp +43 -0
- data/ext/boost/mpl/list/list30_c.hpp +43 -0
- data/ext/boost/mpl/list/list40.hpp +43 -0
- data/ext/boost/mpl/list/list40_c.hpp +43 -0
- data/ext/boost/mpl/list/list50.hpp +43 -0
- data/ext/boost/mpl/list/list50_c.hpp +43 -0
- data/ext/boost/mpl/list_c.hpp +60 -0
- data/ext/boost/mpl/logical.hpp +1 -1
- data/ext/boost/mpl/long.hpp +1 -1
- data/ext/boost/mpl/long_fwd.hpp +1 -1
- data/ext/boost/mpl/lower_bound.hpp +143 -0
- data/ext/boost/mpl/map.hpp +57 -0
- data/ext/boost/mpl/map/aux_/at_impl.hpp +144 -0
- data/ext/boost/mpl/map/aux_/begin_end_impl.hpp +50 -0
- data/ext/boost/mpl/map/aux_/clear_impl.hpp +35 -0
- data/ext/boost/mpl/map/aux_/contains_impl.hpp +43 -0
- data/ext/boost/mpl/map/aux_/empty_impl.hpp +34 -0
- data/ext/boost/mpl/map/aux_/erase_impl.hpp +41 -0
- data/ext/boost/mpl/map/aux_/erase_key_impl.hpp +53 -0
- data/ext/boost/mpl/map/aux_/has_key_impl.hpp +44 -0
- data/ext/boost/mpl/map/aux_/include_preprocessed.hpp +53 -0
- data/ext/boost/mpl/map/aux_/insert_impl.hpp +72 -0
- data/ext/boost/mpl/map/aux_/item.hpp +138 -0
- data/ext/boost/mpl/map/aux_/iterator.hpp +169 -0
- data/ext/boost/mpl/map/aux_/key_type_impl.hpp +36 -0
- data/ext/boost/mpl/map/aux_/map0.hpp +74 -0
- data/ext/boost/mpl/map/aux_/numbered.hpp +110 -0
- data/ext/boost/mpl/map/aux_/preprocessed/no_ctps/map10.hpp +350 -0
- data/ext/boost/mpl/map/aux_/preprocessed/no_ctps/map20.hpp +370 -0
- data/ext/boost/mpl/map/aux_/preprocessed/no_ctps/map30.hpp +390 -0
- data/ext/boost/mpl/map/aux_/preprocessed/no_ctps/map40.hpp +410 -0
- data/ext/boost/mpl/map/aux_/preprocessed/no_ctps/map50.hpp +430 -0
- data/ext/boost/mpl/map/aux_/preprocessed/plain/map10.hpp +290 -0
- data/ext/boost/mpl/map/aux_/preprocessed/plain/map20.hpp +310 -0
- data/ext/boost/mpl/map/aux_/preprocessed/plain/map30.hpp +330 -0
- data/ext/boost/mpl/map/aux_/preprocessed/plain/map40.hpp +350 -0
- data/ext/boost/mpl/map/aux_/preprocessed/plain/map50.hpp +370 -0
- data/ext/boost/mpl/map/aux_/preprocessed/typeof_based/map10.hpp +150 -0
- data/ext/boost/mpl/map/aux_/preprocessed/typeof_based/map20.hpp +170 -0
- data/ext/boost/mpl/map/aux_/preprocessed/typeof_based/map30.hpp +190 -0
- data/ext/boost/mpl/map/aux_/preprocessed/typeof_based/map40.hpp +210 -0
- data/ext/boost/mpl/map/aux_/preprocessed/typeof_based/map50.hpp +230 -0
- data/ext/boost/mpl/map/aux_/size_impl.hpp +33 -0
- data/ext/boost/mpl/map/aux_/tag.hpp +24 -0
- data/ext/boost/mpl/map/aux_/value_type_impl.hpp +36 -0
- data/ext/boost/mpl/map/map0.hpp +36 -0
- data/ext/boost/mpl/map/map10.hpp +44 -0
- data/ext/boost/mpl/map/map20.hpp +44 -0
- data/ext/boost/mpl/map/map30.hpp +44 -0
- data/ext/boost/mpl/map/map40.hpp +44 -0
- data/ext/boost/mpl/map/map50.hpp +44 -0
- data/ext/boost/mpl/math/fixed_c.hpp +36 -0
- data/ext/boost/mpl/math/is_even.hpp +54 -0
- data/ext/boost/mpl/math/rational_c.hpp +37 -0
- data/ext/boost/mpl/max.hpp +19 -0
- data/ext/boost/mpl/max_element.hpp +72 -0
- data/ext/boost/mpl/min.hpp +19 -0
- data/ext/boost/mpl/min_element.hpp +40 -0
- data/ext/boost/mpl/min_max.hpp +46 -0
- data/ext/boost/mpl/minus.hpp +1 -1
- data/ext/boost/mpl/modulus.hpp +22 -0
- data/ext/boost/mpl/multiplies.hpp +1 -1
- data/ext/boost/mpl/multiset/aux_/count_impl.hpp +82 -0
- data/ext/boost/mpl/multiset/aux_/insert_impl.hpp +34 -0
- data/ext/boost/mpl/multiset/aux_/item.hpp +114 -0
- data/ext/boost/mpl/multiset/aux_/multiset0.hpp +34 -0
- data/ext/boost/mpl/multiset/aux_/tag.hpp +23 -0
- data/ext/boost/mpl/multiset/multiset0.hpp +36 -0
- data/ext/boost/mpl/negate.hpp +1 -1
- data/ext/boost/mpl/next.hpp +1 -1
- data/ext/boost/mpl/next_prior.hpp +1 -1
- data/ext/boost/mpl/not.hpp +1 -1
- data/ext/boost/mpl/not_equal_to.hpp +1 -1
- data/ext/boost/mpl/numeric_cast.hpp +1 -1
- data/ext/boost/mpl/or.hpp +1 -1
- data/ext/boost/mpl/order.hpp +41 -0
- data/ext/boost/mpl/order_fwd.hpp +25 -0
- data/ext/boost/mpl/pair.hpp +1 -1
- data/ext/boost/mpl/pair_view.hpp +169 -0
- data/ext/boost/mpl/partition.hpp +53 -0
- data/ext/boost/mpl/placeholders.hpp +1 -1
- data/ext/boost/mpl/plus.hpp +1 -1
- data/ext/boost/mpl/pop_back.hpp +39 -0
- data/ext/boost/mpl/pop_back_fwd.hpp +1 -1
- data/ext/boost/mpl/pop_front.hpp +39 -0
- data/ext/boost/mpl/pop_front_fwd.hpp +1 -1
- data/ext/boost/mpl/print.hpp +74 -0
- data/ext/boost/mpl/prior.hpp +1 -1
- data/ext/boost/mpl/protect.hpp +1 -1
- data/ext/boost/mpl/push_back.hpp +1 -1
- data/ext/boost/mpl/push_back_fwd.hpp +1 -1
- data/ext/boost/mpl/push_front.hpp +1 -1
- data/ext/boost/mpl/push_front_fwd.hpp +1 -1
- data/ext/boost/mpl/quote.hpp +1 -1
- data/ext/boost/mpl/range_c.hpp +48 -0
- data/ext/boost/mpl/remove.hpp +52 -0
- data/ext/boost/mpl/remove_if.hpp +1 -1
- data/ext/boost/mpl/replace.hpp +55 -0
- data/ext/boost/mpl/replace_if.hpp +88 -0
- data/ext/boost/mpl/reverse.hpp +38 -0
- data/ext/boost/mpl/reverse_fold.hpp +1 -1
- data/ext/boost/mpl/reverse_iter_fold.hpp +56 -0
- data/ext/boost/mpl/same_as.hpp +1 -1
- data/ext/boost/mpl/sequence_tag.hpp +1 -1
- data/ext/boost/mpl/sequence_tag_fwd.hpp +1 -1
- data/ext/boost/mpl/set.hpp +57 -0
- data/ext/boost/mpl/set/aux_/at_impl.hpp +40 -0
- data/ext/boost/mpl/set/aux_/begin_end_impl.hpp +43 -0
- data/ext/boost/mpl/set/aux_/clear_impl.hpp +35 -0
- data/ext/boost/mpl/set/aux_/empty_impl.hpp +34 -0
- data/ext/boost/mpl/set/aux_/erase_impl.hpp +41 -0
- data/ext/boost/mpl/set/aux_/erase_key_impl.hpp +53 -0
- data/ext/boost/mpl/set/aux_/has_key_impl.hpp +60 -0
- data/ext/boost/mpl/set/aux_/include_preprocessed.hpp +42 -0
- data/ext/boost/mpl/set/aux_/insert_impl.hpp +65 -0
- data/ext/boost/mpl/set/aux_/item.hpp +80 -0
- data/ext/boost/mpl/set/aux_/iterator.hpp +98 -0
- data/ext/boost/mpl/set/aux_/key_type_impl.hpp +34 -0
- data/ext/boost/mpl/set/aux_/numbered.hpp +48 -0
- data/ext/boost/mpl/set/aux_/numbered_c.hpp +48 -0
- data/ext/boost/mpl/set/aux_/preprocessed/plain/set10.hpp +140 -0
- data/ext/boost/mpl/set/aux_/preprocessed/plain/set10_c.hpp +145 -0
- data/ext/boost/mpl/set/aux_/preprocessed/plain/set20.hpp +168 -0
- data/ext/boost/mpl/set/aux_/preprocessed/plain/set20_c.hpp +154 -0
- data/ext/boost/mpl/set/aux_/preprocessed/plain/set30.hpp +195 -0
- data/ext/boost/mpl/set/aux_/preprocessed/plain/set30_c.hpp +164 -0
- data/ext/boost/mpl/set/aux_/preprocessed/plain/set40.hpp +221 -0
- data/ext/boost/mpl/set/aux_/preprocessed/plain/set40_c.hpp +174 -0
- data/ext/boost/mpl/set/aux_/preprocessed/plain/set50.hpp +250 -0
- data/ext/boost/mpl/set/aux_/preprocessed/plain/set50_c.hpp +184 -0
- data/ext/boost/mpl/set/aux_/set0.hpp +69 -0
- data/ext/boost/mpl/set/aux_/size_impl.hpp +33 -0
- data/ext/boost/mpl/set/aux_/tag.hpp +24 -0
- data/ext/boost/mpl/set/aux_/value_type_impl.hpp +34 -0
- data/ext/boost/mpl/set/set0.hpp +35 -0
- data/ext/boost/mpl/set/set0_c.hpp +32 -0
- data/ext/boost/mpl/set/set10.hpp +44 -0
- data/ext/boost/mpl/set/set10_c.hpp +45 -0
- data/ext/boost/mpl/set/set20.hpp +44 -0
- data/ext/boost/mpl/set/set20_c.hpp +45 -0
- data/ext/boost/mpl/set/set30.hpp +44 -0
- data/ext/boost/mpl/set/set30_c.hpp +45 -0
- data/ext/boost/mpl/set/set40.hpp +44 -0
- data/ext/boost/mpl/set/set40_c.hpp +45 -0
- data/ext/boost/mpl/set/set50.hpp +44 -0
- data/ext/boost/mpl/set/set50_c.hpp +45 -0
- data/ext/boost/mpl/set_c.hpp +60 -0
- data/ext/boost/mpl/shift_left.hpp +22 -0
- data/ext/boost/mpl/shift_right.hpp +22 -0
- data/ext/boost/mpl/single_view.hpp +38 -0
- data/ext/boost/mpl/size.hpp +1 -1
- data/ext/boost/mpl/size_fwd.hpp +1 -1
- data/ext/boost/mpl/size_t.hpp +1 -1
- data/ext/boost/mpl/size_t_fwd.hpp +1 -1
- data/ext/boost/mpl/sizeof.hpp +36 -0
- data/ext/boost/mpl/sort.hpp +27 -0
- data/ext/boost/mpl/stable_partition.hpp +75 -0
- data/ext/boost/mpl/string.hpp +607 -0
- data/ext/boost/mpl/switch.hpp +49 -0
- data/ext/boost/mpl/tag.hpp +1 -1
- data/ext/boost/mpl/times.hpp +1 -1
- data/ext/boost/mpl/transform.hpp +145 -0
- data/ext/boost/mpl/transform_view.hpp +46 -0
- data/ext/boost/mpl/unique.hpp +85 -0
- data/ext/boost/mpl/unpack_args.hpp +150 -0
- data/ext/boost/mpl/upper_bound.hpp +141 -0
- data/ext/boost/mpl/value_type.hpp +42 -0
- data/ext/boost/mpl/value_type_fwd.hpp +25 -0
- data/ext/boost/mpl/vector.hpp +1 -1
- data/ext/boost/mpl/vector/aux_/O1_size.hpp +1 -1
- data/ext/boost/mpl/vector/aux_/at.hpp +1 -1
- data/ext/boost/mpl/vector/aux_/back.hpp +1 -1
- data/ext/boost/mpl/vector/aux_/begin_end.hpp +1 -1
- data/ext/boost/mpl/vector/aux_/clear.hpp +1 -1
- data/ext/boost/mpl/vector/aux_/empty.hpp +1 -1
- data/ext/boost/mpl/vector/aux_/front.hpp +1 -1
- data/ext/boost/mpl/vector/aux_/include_preprocessed.hpp +1 -1
- data/ext/boost/mpl/vector/aux_/item.hpp +1 -1
- data/ext/boost/mpl/vector/aux_/iterator.hpp +1 -1
- data/ext/boost/mpl/vector/aux_/numbered.hpp +218 -0
- data/ext/boost/mpl/vector/aux_/numbered_c.hpp +77 -0
- data/ext/boost/mpl/vector/aux_/pop_back.hpp +1 -1
- data/ext/boost/mpl/vector/aux_/pop_front.hpp +1 -1
- data/ext/boost/mpl/vector/aux_/preprocessed/no_ctps/vector10.hpp +1528 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/no_ctps/vector10_c.hpp +149 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/no_ctps/vector20.hpp +1804 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/no_ctps/vector20_c.hpp +195 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/no_ctps/vector30.hpp +2124 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/no_ctps/vector30_c.hpp +238 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/no_ctps/vector40.hpp +2444 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/no_ctps/vector40_c.hpp +281 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/no_ctps/vector50.hpp +2764 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/no_ctps/vector50_c.hpp +325 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/plain/vector10_c.hpp +149 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/plain/vector20_c.hpp +195 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/plain/vector30.hpp +1464 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/plain/vector30_c.hpp +238 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/plain/vector40.hpp +1784 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/plain/vector40_c.hpp +281 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/plain/vector50.hpp +2104 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/plain/vector50_c.hpp +325 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/typeof_based/vector10_c.hpp +154 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/typeof_based/vector20_c.hpp +163 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/typeof_based/vector30.hpp +179 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/typeof_based/vector30_c.hpp +173 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/typeof_based/vector40.hpp +199 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/typeof_based/vector40_c.hpp +183 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/typeof_based/vector50.hpp +219 -0
- data/ext/boost/mpl/vector/aux_/preprocessed/typeof_based/vector50_c.hpp +193 -0
- data/ext/boost/mpl/vector/aux_/push_back.hpp +1 -1
- data/ext/boost/mpl/vector/aux_/push_front.hpp +1 -1
- data/ext/boost/mpl/vector/aux_/size.hpp +1 -1
- data/ext/boost/mpl/vector/aux_/tag.hpp +1 -1
- data/ext/boost/mpl/vector/aux_/vector0.hpp +1 -1
- data/ext/boost/mpl/vector/vector0.hpp +1 -1
- data/ext/boost/mpl/vector/vector0_c.hpp +31 -0
- data/ext/boost/mpl/vector/vector10.hpp +1 -1
- data/ext/boost/mpl/vector/vector10_c.hpp +46 -0
- data/ext/boost/mpl/vector/vector20.hpp +1 -1
- data/ext/boost/mpl/vector/vector20_c.hpp +46 -0
- data/ext/boost/mpl/vector/vector30.hpp +45 -0
- data/ext/boost/mpl/vector/vector30_c.hpp +47 -0
- data/ext/boost/mpl/vector/vector40.hpp +45 -0
- data/ext/boost/mpl/vector/vector40_c.hpp +46 -0
- data/ext/boost/mpl/vector/vector50.hpp +45 -0
- data/ext/boost/mpl/vector/vector50_c.hpp +46 -0
- data/ext/boost/mpl/vector_c.hpp +61 -0
- data/ext/boost/mpl/void.hpp +1 -1
- data/ext/boost/mpl/void_fwd.hpp +1 -1
- data/ext/boost/mpl/zip_view.hpp +65 -0
- data/ext/boost/numeric/conversion/converter_policies.hpp +8 -0
- data/ext/boost/optional/optional.hpp +2 -2
- data/ext/boost/pointee.hpp +74 -0
- data/ext/boost/preprocessor/{control/deduce_d.hpp → dec.hpp} +3 -8
- data/ext/boost/preprocessor/enum_params_with_a_default.hpp +17 -0
- data/ext/boost/preprocessor/enum_shifted_params.hpp +17 -0
- data/ext/boost/preprocessor/iteration/detail/bounds/lower2.hpp +99 -0
- data/ext/boost/preprocessor/iteration/detail/bounds/upper2.hpp +99 -0
- data/ext/boost/preprocessor/iteration/detail/iter/forward2.hpp +1338 -0
- data/ext/boost/preprocessor/iteration/detail/iter/reverse1.hpp +1296 -0
- data/ext/boost/preprocessor/repeat_2nd.hpp +17 -0
- data/ext/boost/preprocessor/repetition/enum_params_with_a_default.hpp +25 -0
- data/ext/boost/range/algorithm/equal.hpp +15 -5
- data/ext/boost/range/as_literal.hpp +1 -1
- data/ext/boost/range/size.hpp +3 -3
- data/ext/boost/range/size_type.hpp +33 -23
- data/ext/boost/ratio/config.hpp +86 -0
- data/ext/boost/ratio/detail/mpl/abs.hpp +89 -0
- data/ext/boost/ratio/detail/mpl/gcd.hpp +124 -0
- data/ext/boost/ratio/detail/mpl/lcm.hpp +126 -0
- data/ext/boost/ratio/detail/mpl/sign.hpp +89 -0
- data/ext/boost/ratio/detail/overflow_helpers.hpp +367 -0
- data/ext/boost/ratio/ratio.hpp +233 -0
- data/ext/boost/ratio/ratio_fwd.hpp +84 -0
- data/ext/boost/smart_ptr/detail/sp_counted_base.hpp +3 -3
- data/ext/boost/smart_ptr/detail/sp_counted_base_vacpp_ppc.hpp +150 -0
- data/ext/boost/smart_ptr/detail/spinlock_gcc_arm.hpp +27 -2
- data/ext/boost/swap.hpp +12 -0
- data/ext/boost/system/api_config.hpp +42 -0
- data/ext/boost/system/config.hpp +69 -0
- data/ext/boost/system/error_code.hpp +513 -0
- data/ext/boost/system/system_error.hpp +80 -0
- data/ext/boost/thread/barrier.hpp +4 -4
- data/ext/boost/thread/cv_status.hpp +26 -0
- data/ext/boost/thread/detail/config.hpp +119 -5
- data/ext/boost/thread/detail/delete.hpp +45 -0
- data/ext/boost/thread/detail/memory.hpp +156 -0
- data/ext/boost/thread/detail/move.hpp +181 -1
- data/ext/boost/thread/detail/platform.hpp +3 -1
- data/ext/boost/thread/detail/thread.hpp +254 -157
- data/ext/boost/thread/detail/thread_interruption.hpp +12 -11
- data/ext/boost/thread/exceptions.hpp +125 -136
- data/ext/boost/thread/future.hpp +778 -353
- data/ext/boost/thread/locks.hpp +548 -347
- data/ext/boost/thread/once.hpp +3 -1
- data/ext/boost/thread/pthread/condition_variable.hpp +140 -31
- data/ext/boost/thread/pthread/condition_variable_fwd.hpp +143 -15
- data/ext/boost/thread/pthread/mutex.hpp +76 -24
- data/ext/boost/thread/pthread/once.hpp +53 -22
- data/ext/boost/thread/pthread/recursive_mutex.hpp +74 -27
- data/ext/boost/thread/pthread/shared_mutex.hpp +250 -2
- data/ext/boost/thread/pthread/thread_data.hpp +109 -6
- data/ext/boost/thread/pthread/thread_heap_alloc.hpp +4 -4
- data/ext/boost/thread/reverse_lock.hpp +58 -0
- data/ext/boost/thread/shared_lock_guard.hpp +52 -0
- data/ext/boost/thread/shared_mutex.hpp +7 -2
- data/ext/boost/thread/thread.hpp +2 -1
- data/ext/boost/thread/v2/thread.hpp +56 -0
- data/ext/boost/thread/xtime.hpp +4 -4
- data/ext/boost/throw_exception.hpp +13 -4
- data/ext/boost/tuple/detail/tuple_basic.hpp +980 -0
- data/ext/boost/tuple/tuple.hpp +90 -0
- data/ext/boost/type_traits/add_cv.hpp +48 -0
- data/ext/boost/type_traits/common_type.hpp +158 -0
- data/ext/boost/type_traits/cv_traits.hpp +24 -0
- data/ext/boost/type_traits/decay.hpp +44 -0
- data/ext/boost/type_traits/detail/bool_trait_def.hpp +1 -1
- data/ext/boost/type_traits/detail/bool_trait_undef.hpp +1 -1
- data/ext/boost/type_traits/detail/size_t_trait_def.hpp +1 -1
- data/ext/boost/type_traits/detail/size_t_trait_undef.hpp +1 -1
- data/ext/boost/type_traits/detail/type_trait_def.hpp +1 -1
- data/ext/boost/type_traits/detail/type_trait_undef.hpp +1 -1
- data/ext/boost/type_traits/has_nothrow_assign.hpp +44 -0
- data/ext/boost/type_traits/has_trivial_assign.hpp +57 -0
- data/ext/boost/type_traits/intrinsics.hpp +4 -3
- data/ext/boost/type_traits/is_compound.hpp +46 -0
- data/ext/boost/type_traits/is_empty.hpp +229 -0
- data/ext/boost/type_traits/is_object.hpp +53 -0
- data/ext/boost/type_traits/is_stateless.hpp +48 -0
- data/ext/boost/type_traits/object_traits.hpp +33 -0
- data/ext/boost/type_traits/remove_bounds.hpp +48 -0
- data/ext/boost/type_traits/remove_volatile.hpp +88 -0
- data/ext/boost/type_traits/same_traits.hpp +15 -0
- data/ext/boost/type_traits/transform_traits.hpp +21 -0
- data/ext/boost/typeof/message.hpp +8 -0
- data/ext/boost/typeof/native.hpp +60 -0
- data/ext/boost/typeof/typeof.hpp +218 -0
- data/ext/boost/utility/declval.hpp +7 -2
- data/ext/boost/utility/detail/result_of_iterate.hpp +98 -32
- data/ext/boost/utility/result_of.hpp +92 -8
- data/ext/boost/version.hpp +32 -0
- data/ext/common/Account.h +1 -1
- data/ext/common/AccountsDatabase.cpp +1 -1
- data/ext/common/AccountsDatabase.h +1 -1
- data/ext/common/AgentsStarter.cpp +5 -6
- data/ext/common/AgentsStarter.h +4 -4
- data/ext/common/AgentsStarter.hpp +4 -6
- data/ext/common/AnsiColorConstants.h +1 -1
- data/ext/common/ApplicationPool2/Common.h +62 -2
- data/ext/common/ApplicationPool2/ComponentInfo.h +1 -1
- data/ext/common/ApplicationPool2/Group.h +411 -150
- data/ext/common/ApplicationPool2/Implementation.cpp +367 -86
- data/ext/common/ApplicationPool2/Options.h +6 -2
- data/ext/common/ApplicationPool2/PipeWatcher.h +1 -1
- data/ext/common/ApplicationPool2/Pool.h +260 -137
- data/ext/common/ApplicationPool2/Process.h +28 -27
- data/ext/common/ApplicationPool2/Session.h +4 -2
- data/ext/common/ApplicationPool2/Socket.h +1 -1
- data/ext/common/ApplicationPool2/Spawner.h +133 -77
- data/ext/common/ApplicationPool2/SuperGroup.h +16 -15
- data/ext/common/BackgroundEventLoop.cpp +1 -1
- data/ext/common/BackgroundEventLoop.h +1 -1
- data/ext/common/Constants.h +2 -2
- data/ext/common/EventedBufferedInput.h +1 -1
- data/ext/common/EventedClient.h +1 -1
- data/ext/common/EventedMessageServer.h +1 -1
- data/ext/common/EventedServer.h +1 -1
- data/ext/common/Exceptions.h +1 -1
- data/ext/common/FileDescriptor.h +1 -1
- data/ext/common/HttpConstants.h +8 -8
- data/ext/common/IniFile.h +1 -1
- data/ext/common/Logging.cpp +45 -20
- data/ext/common/Logging.h +16 -65
- data/ext/common/MessageClient.h +1 -1
- data/ext/common/MessageReadersWriters.h +1 -1
- data/ext/common/MessageServer.h +1 -1
- data/ext/common/MultiLibeio.cpp +1 -1
- data/ext/common/MultiLibeio.h +1 -1
- data/ext/common/RandomGenerator.h +1 -1
- data/ext/common/ResourceLocator.h +1 -1
- data/ext/common/SafeLibev.h +1 -1
- data/ext/common/ServerInstanceDir.h +1 -1
- data/ext/common/StaticString.h +1 -1
- data/ext/common/StringListCreator.h +1 -1
- data/ext/common/UnionStation.h +1 -1
- data/ext/common/Utils.cpp +6 -1
- data/ext/common/Utils.h +9 -1
- data/ext/common/Utils/BlockingQueue.h +1 -1
- data/ext/common/Utils/CachedFileStat.cpp +1 -1
- data/ext/common/Utils/CachedFileStat.h +1 -1
- data/ext/common/Utils/CachedFileStat.hpp +1 -1
- data/ext/common/Utils/FileChangeChecker.h +1 -1
- data/ext/common/Utils/HashMap.h +1 -1
- data/ext/common/Utils/HttpHeaderBufferer.h +1 -1
- data/ext/common/Utils/IOUtils.cpp +3 -3
- data/ext/common/Utils/IOUtils.h +1 -1
- data/ext/common/Utils/MemZeroGuard.h +1 -1
- data/ext/common/Utils/MemoryBarrier.h +1 -1
- data/ext/common/Utils/MessageIO.h +1 -1
- data/ext/common/Utils/MessagePassing.h +304 -0
- data/ext/common/Utils/ProcessMetricsCollector.h +1 -1
- data/ext/common/Utils/ScopeGuard.h +1 -1
- data/ext/common/Utils/StrIntUtils.cpp +40 -1
- data/ext/common/Utils/StrIntUtils.h +7 -1
- data/ext/common/Utils/StringMap.h +1 -1
- data/ext/common/Utils/SystemTime.cpp +1 -1
- data/ext/common/Utils/SystemTime.h +1 -1
- data/ext/common/Utils/Timer.h +1 -1
- data/ext/common/Utils/VariantMap.h +1 -1
- data/ext/common/agents/Base.cpp +182 -10
- data/ext/common/agents/Base.h +1 -1
- data/ext/common/agents/HelperAgent/AgentOptions.h +1 -1
- data/ext/common/agents/HelperAgent/BacktracesServer.h +1 -1
- data/ext/common/agents/HelperAgent/FileBackedPipe.h +1 -1
- data/ext/common/agents/HelperAgent/Main.cpp +13 -5
- data/ext/common/agents/HelperAgent/RequestHandler.cpp +1 -1
- data/ext/common/agents/HelperAgent/RequestHandler.h +23 -9
- data/ext/common/agents/HelperAgent/ScgiRequestParser.h +1 -1
- data/ext/common/agents/LoggingAgent/DataStoreId.h +1 -1
- data/ext/common/agents/LoggingAgent/FilterSupport.cpp +1 -1
- data/ext/common/agents/LoggingAgent/FilterSupport.h +1 -1
- data/ext/common/agents/LoggingAgent/LoggingServer.h +89 -214
- data/ext/common/agents/LoggingAgent/Main.cpp +9 -19
- data/ext/common/agents/LoggingAgent/RemoteSender.h +9 -2
- data/ext/common/agents/SpawnPreparer.cpp +70 -30
- data/ext/common/agents/Watchdog/Main.cpp +1 -1
- data/ext/libeio/Changes +4 -0
- data/ext/libeio/ecb.h +281 -24
- data/ext/libeio/eio.c +48 -63
- data/ext/libeio/eio.h +7 -6
- data/ext/libeio/libeio.m4 +0 -16
- data/ext/libeio/xthread.h +2 -2
- data/ext/libev/configure +299 -271
- data/ext/nginx/Configuration.c +15 -52
- data/ext/nginx/Configuration.h +0 -2
- data/ext/nginx/ContentHandler.c +13 -2
- data/ext/nginx/ngx_http_passenger_module.c +2 -19
- data/ext/oxt/detail/spin_lock_pthreads.hpp +1 -1
- data/ext/oxt/dynamic_thread_group.hpp +2 -2
- data/ext/oxt/spin_lock.hpp +1 -1
- data/ext/oxt/system_calls.cpp +36 -13
- data/ext/oxt/thread.hpp +11 -5
- data/ext/ruby/extconf.rb +1 -1
- data/ext/ruby/passenger_native_support.c +3 -2
- data/helper-scripts/classic-rails-loader.rb +3 -1
- data/helper-scripts/classic-rails-preloader.rb +4 -1
- data/helper-scripts/node-loader.js +1 -1
- data/helper-scripts/prespawn +1 -1
- data/helper-scripts/rack-loader.rb +3 -1
- data/helper-scripts/rack-preloader.rb +4 -1
- data/helper-scripts/system-memory-stats.py +185 -0
- data/helper-scripts/wsgi-loader.py +1 -1
- data/lib/phusion_passenger.rb +3 -3
- data/lib/phusion_passenger/abstract_installer.rb +1 -1
- data/lib/phusion_passenger/admin_tools.rb +1 -1
- data/lib/phusion_passenger/admin_tools/memory_stats.rb +1 -1
- data/lib/phusion_passenger/admin_tools/server_instance.rb +1 -1
- data/lib/phusion_passenger/analytics_logger.rb +10 -4
- data/lib/phusion_passenger/classic_rails/thread_handler_extension.rb +3 -2
- data/lib/phusion_passenger/common_library.rb +1 -1
- data/lib/phusion_passenger/console_text_template.rb +1 -1
- data/lib/phusion_passenger/constants.rb +6 -5
- data/lib/phusion_passenger/debug_logging.rb +5 -1
- data/lib/phusion_passenger/dependencies.rb +3 -3
- data/lib/phusion_passenger/loader_shared_helpers.rb +12 -7
- data/lib/phusion_passenger/message_channel.rb +1 -1
- data/lib/phusion_passenger/message_client.rb +1 -1
- data/lib/phusion_passenger/native_support.rb +1 -1
- data/lib/phusion_passenger/packaging.rb +7 -4
- data/lib/phusion_passenger/platform_info.rb +1 -1
- data/lib/phusion_passenger/platform_info/apache.rb +2 -2
- data/lib/phusion_passenger/platform_info/binary_compatibility.rb +14 -5
- data/lib/phusion_passenger/platform_info/compiler.rb +8 -1
- data/lib/phusion_passenger/platform_info/curl.rb +1 -1
- data/lib/phusion_passenger/platform_info/linux.rb +1 -1
- data/lib/phusion_passenger/platform_info/operating_system.rb +1 -1
- data/lib/phusion_passenger/platform_info/ruby.rb +2 -2
- data/lib/phusion_passenger/platform_info/zlib.rb +1 -1
- data/lib/phusion_passenger/plugin.rb +2 -2
- data/lib/phusion_passenger/preloader_shared_helpers.rb +14 -1
- data/lib/phusion_passenger/public_api.rb +8 -2
- data/lib/phusion_passenger/{classic_rails_extensions/analytics_logging/ar_abstract_adapter_extension.rb → rack/out_of_band_gc.rb} +35 -28
- data/lib/phusion_passenger/rack/thread_handler_extension.rb +31 -6
- data/lib/phusion_passenger/rails3_extensions/init.rb +15 -9
- data/lib/phusion_passenger/request_handler.rb +104 -47
- data/lib/phusion_passenger/request_handler/thread_handler.rb +28 -7
- data/lib/phusion_passenger/ruby_core_enhancements.rb +34 -5
- data/lib/phusion_passenger/simple_benchmarking.rb +1 -1
- data/lib/phusion_passenger/standalone/app_finder.rb +1 -1
- data/lib/phusion_passenger/standalone/command.rb +5 -5
- data/lib/phusion_passenger/standalone/config_file.rb +1 -1
- data/lib/phusion_passenger/standalone/help_command.rb +1 -1
- data/lib/phusion_passenger/standalone/main.rb +1 -1
- data/lib/phusion_passenger/standalone/package_runtime_command.rb +1 -1
- data/lib/phusion_passenger/standalone/runtime_installer.rb +1 -1
- data/lib/phusion_passenger/standalone/start_command.rb +73 -21
- data/lib/phusion_passenger/standalone/status_command.rb +1 -1
- data/lib/phusion_passenger/standalone/stop_command.rb +1 -1
- data/lib/phusion_passenger/standalone/utils.rb +2 -2
- data/lib/phusion_passenger/standalone/version_command.rb +1 -1
- data/lib/phusion_passenger/utils.rb +1 -1
- data/lib/phusion_passenger/utils/ansi_colors.rb +2 -2
- data/lib/phusion_passenger/utils/file_system_watcher.rb +1 -1
- data/lib/phusion_passenger/utils/hosts_file_parser.rb +2 -2
- data/lib/phusion_passenger/utils/robust_interruption.rb +10 -6
- data/lib/phusion_passenger/utils/tmpdir.rb +2 -2
- data/lib/phusion_passenger/utils/unseekable_socket.rb +1 -1
- data/lib/phusion_passenger/wsgi/request_handler.py +1 -1
- data/resources/templates/error_layout.html.template +4 -0
- data/resources/templates/nginx/not_available_when_natively_packaged.txt.erb +1 -1
- data/resources/templates/standalone/config.erb +1 -0
- data/test/.rspec +3 -0
- data/test/config.json.travis +15 -0
- data/test/cxx/ApplicationPool2/DirectSpawnerTest.cpp +3 -2
- data/test/cxx/ApplicationPool2/PoolTest.cpp +349 -128
- data/test/cxx/ApplicationPool2/SmartSpawnerTest.cpp +21 -18
- data/test/cxx/ApplicationPool2/SpawnerTestCases.cpp +141 -118
- data/test/cxx/BufferedIOTest.cpp +11 -11
- data/test/cxx/CxxTestMain.cpp +40 -11
- data/test/cxx/EventedClientTest.cpp +18 -18
- data/test/cxx/FilterSupportTest.cpp +1 -1
- data/test/cxx/IOUtilsTest.cpp +18 -10
- data/test/cxx/MessageIOTest.cpp +9 -9
- data/test/cxx/MessagePassingTest.cpp +81 -0
- data/test/cxx/MessageReadersWritersTest.cpp +3 -4
- data/test/cxx/RequestHandlerTest.cpp +69 -9
- data/test/cxx/TestSupport.h +3 -1
- data/test/cxx/UnionStationTest.cpp +43 -82
- data/test/gdbinit.example +31 -0
- data/test/integration_tests/nginx_tests.rb +48 -0
- data/test/integration_tests/spec_helper.rb +1 -0
- data/test/ruby/analytics_logger_spec.rb +11 -19
- data/test/ruby/classic_rails/loader_spec.rb +3 -4
- data/test/ruby/classic_rails/preloader_spec.rb +3 -4
- data/test/ruby/rack/loader_spec.rb +2 -22
- data/test/ruby/rack/preloader_spec.rb +2 -28
- data/test/ruby/rails3.0/loader_spec.rb +26 -0
- data/test/ruby/rails3.0/preloader_spec.rb +32 -0
- data/test/ruby/rails3.1/loader_spec.rb +26 -0
- data/test/ruby/rails3.1/preloader_spec.rb +32 -0
- data/test/ruby/rails3.2/loader_spec.rb +26 -0
- data/test/ruby/rails3.2/preloader_spec.rb +32 -0
- data/test/ruby/request_handler_spec.rb +104 -13
- data/test/ruby/shared/{loader_spec.rb → loader_sharedspec.rb} +1 -1
- data/test/ruby/shared/rails/{analytics_logging_extensions_spec.rb → analytics_logging_extensions_sharedspec.rb} +26 -27
- data/test/ruby/shared/{ruby_loader_spec.rb → ruby_loader_sharedspec.rb} +1 -1
- data/test/ruby/spec_helper.rb +3 -3
- data/test/stub/rails2.3/app/helpers/bar_helper.rb +2 -0
- data/test/stub/rails2.3/app/helpers/foo_helper.rb +2 -0
- data/test/stub/rails3.0/config/environments/production.rb +1 -1
- data/test/stub/rails3.1/Gemfile +37 -0
- data/test/stub/rails3.1/Gemfile.lock +115 -0
- data/test/stub/rails3.1/README +261 -0
- data/test/stub/rails3.1/Rakefile +7 -0
- data/test/stub/rails3.1/app/assets/images/rails.png +0 -0
- data/test/stub/rails3.1/app/assets/javascripts/application.js +9 -0
- data/test/stub/rails3.1/app/assets/stylesheets/application.css +7 -0
- data/test/stub/rails3.1/app/controllers/application_controller.rb +3 -0
- data/test/stub/rails3.1/app/helpers/application_helper.rb +2 -0
- data/test/stub/rails3.1/app/views/layouts/application.html.erb +14 -0
- data/test/stub/rails3.1/config.ru +4 -0
- data/test/stub/rails3.1/config/application.rb +48 -0
- data/test/stub/rails3.1/config/boot.rb +6 -0
- data/test/stub/rails3.1/config/database.yml +25 -0
- data/test/stub/rails3.1/config/environment.rb +5 -0
- data/test/stub/rails3.1/config/environments/development.rb +30 -0
- data/test/stub/rails3.1/config/environments/production.rb +60 -0
- data/test/stub/rails3.1/config/environments/test.rb +39 -0
- data/test/stub/rails3.1/config/initializers/backtrace_silencers.rb +7 -0
- data/test/stub/rails3.1/config/initializers/inflections.rb +10 -0
- data/test/stub/rails3.1/config/initializers/mime_types.rb +5 -0
- data/test/stub/rails3.1/config/initializers/passenger.rb +1 -0
- data/test/stub/rails3.1/config/initializers/secret_token.rb +7 -0
- data/test/stub/rails3.1/config/initializers/session_store.rb +8 -0
- data/test/stub/rails3.1/config/initializers/wrap_parameters.rb +14 -0
- data/test/stub/rails3.1/config/locales/en.yml +5 -0
- data/test/stub/rails3.1/config/routes.rb +58 -0
- data/test/stub/rails3.1/db/seeds.rb +7 -0
- data/test/stub/rails3.1/doc/README_FOR_APP +2 -0
- data/test/stub/rails3.1/public/404.html +26 -0
- data/test/stub/rails3.1/public/422.html +26 -0
- data/test/stub/rails3.1/public/500.html +26 -0
- data/test/stub/rails3.1/public/favicon.ico +0 -0
- data/test/stub/rails3.1/public/index.html +241 -0
- data/test/stub/rails3.1/public/robots.txt +5 -0
- data/test/stub/rails3.1/script/rails +6 -0
- data/test/stub/rails3.1/test/performance/browsing_test.rb +12 -0
- data/test/stub/rails3.1/test/test_helper.rb +13 -0
- data/test/stub/rails3.2/Gemfile +39 -0
- data/test/stub/rails3.2/Gemfile.lock +113 -0
- data/test/stub/rails3.2/Rakefile +7 -0
- data/test/stub/rails3.2/app/assets/images/rails.png +0 -0
- data/test/stub/rails3.2/app/assets/javascripts/application.js +15 -0
- data/test/stub/rails3.2/app/assets/stylesheets/application.css +13 -0
- data/test/stub/rails3.2/app/controllers/application_controller.rb +3 -0
- data/test/stub/rails3.2/app/helpers/application_helper.rb +2 -0
- data/test/stub/rails3.2/app/views/layouts/application.html.erb +14 -0
- data/test/stub/rails3.2/config.ru +4 -0
- data/test/stub/rails3.2/config/application.rb +62 -0
- data/test/stub/rails3.2/config/boot.rb +6 -0
- data/test/stub/rails3.2/config/database.yml +25 -0
- data/test/stub/rails3.2/config/environment.rb +5 -0
- data/test/stub/rails3.2/config/environments/development.rb +37 -0
- data/test/stub/rails3.2/config/environments/production.rb +67 -0
- data/test/stub/rails3.2/config/environments/test.rb +37 -0
- data/test/stub/rails3.2/config/initializers/backtrace_silencers.rb +7 -0
- data/test/stub/rails3.2/config/initializers/inflections.rb +15 -0
- data/test/stub/rails3.2/config/initializers/mime_types.rb +5 -0
- data/test/stub/rails3.2/config/initializers/passenger.rb +1 -0
- data/test/stub/rails3.2/config/initializers/secret_token.rb +7 -0
- data/test/stub/rails3.2/config/initializers/session_store.rb +8 -0
- data/test/stub/rails3.2/config/initializers/wrap_parameters.rb +14 -0
- data/test/stub/rails3.2/config/locales/en.yml +5 -0
- data/test/stub/rails3.2/config/routes.rb +58 -0
- data/test/stub/rails3.2/db/seeds.rb +7 -0
- data/test/stub/rails3.2/doc/README_FOR_APP +2 -0
- data/test/stub/rails3.2/public/404.html +26 -0
- data/test/stub/rails3.2/public/422.html +26 -0
- data/test/stub/rails3.2/public/500.html +25 -0
- data/test/stub/rails3.2/public/favicon.ico +0 -0
- data/test/stub/rails3.2/public/index.html +241 -0
- data/test/stub/rails3.2/public/robots.txt +5 -0
- data/test/stub/rails3.2/script/rails +6 -0
- data/test/stub/rails3.2/test/performance/browsing_test.rb +12 -0
- data/test/stub/rails3.2/test/test_helper.rb +13 -0
- data/test/stub/wsgi/passenger_wsgi.py +12 -3
- data/test/support/test_helper.rb +5 -3
- data/test/tut/tut.h +61 -0
- metadata +1173 -236
- data/DEVELOPERS.TXT +0 -108
- data/INSTALL +0 -6
- data/README +0 -45
- data/ext/boost/config/platform/win32.hpp +0 -71
- data/ext/boost/implicit_cast.hpp +0 -29
- data/ext/boost/preprocessor/arithmetic/detail/div_base.hpp +0 -61
- data/ext/boost/preprocessor/arithmetic/mod.hpp +0 -39
- data/ext/boost/preprocessor/comparison/less_equal.hpp +0 -39
- data/ext/boost/preprocessor/logical/not.hpp +0 -30
- data/ext/boost/preprocessor/seq/cat.hpp +0 -49
- data/ext/boost/preprocessor/seq/fold_left.hpp +0 -1070
- data/ext/boost/preprocessor/seq/transform.hpp +0 -48
- data/ext/boost/smart_ptr/detail/atomic_count_win32.hpp +0 -63
- data/ext/boost/smart_ptr/detail/sp_counted_base_w32.hpp +0 -130
- data/ext/boost/utility.hpp +0 -20
- data/ext/boost/utility/base_from_member.hpp +0 -87
- data/ext/boost/utility/binary.hpp +0 -708
- data/lib/phusion_passenger/classic_rails_extensions/analytics_logging/ac_base_extension.rb +0 -67
- data/lib/phusion_passenger/classic_rails_extensions/analytics_logging/ac_benchmarking_extension.rb +0 -48
- data/lib/phusion_passenger/classic_rails_extensions/analytics_logging/ac_rescue_extension.rb +0 -59
- data/lib/phusion_passenger/classic_rails_extensions/analytics_logging/as_cache_extension.rb +0 -130
- data/lib/phusion_passenger/classic_rails_extensions/analytics_logging/av_benchmark_helper_extension.rb +0 -47
- data/lib/phusion_passenger/classic_rails_extensions/init.rb +0 -125
@@ -8,9 +8,9 @@ distributions, including, but not limited to, Ubuntu, Debian, CentOS/Fedora/RHEL
|
|
8
8
|
Gentoo, Mac OS X, FreeBSD and Solaris. Both 32-bit and 64-bit platforms are supported.
|
9
9
|
|
10
10
|
ifdef::apache[]
|
11
|
-
|
12
|
-
|
13
|
-
|
11
|
+
The only POSIX-compliant operating system on which Phusion Passenger for Apache is
|
12
|
+
known not to work at this time, is OpenBSD. Please use Phusion Passenger for Nginx
|
13
|
+
or Phusion Passenger Standalone instead.
|
14
14
|
endif::[]
|
15
15
|
|
16
16
|
Please
|
@@ -24,7 +24,8 @@ if it doesn't work on your POSIX-compliant operating system.
|
|
24
24
|
* link:http://code.google.com/p/phusion-passenger/issues/list[Issue tracker] - report
|
25
25
|
bugs here.
|
26
26
|
* link:http://groups.google.com/group/phusion-passenger[Discussion forum] - post a
|
27
|
-
message here if you're experiencing problems.
|
27
|
+
message here if you're experiencing problems. Support on this forum is provided by the community on a best-effort basis, so a (timely) response is not guaranteed.
|
28
|
+
* Email support@phusion.nl if you are a link:https://www.phusionpassenger.com/enterprise[Phusion Passenger Enterprise] customer. Please mention your order reference. If you are not an Enterprise customer, we kindly redirect you to the community discussion forum instead.
|
28
29
|
* link:https://www.phusionpassenger.com/commercial_support[Commercial support contracts] are also available.
|
29
30
|
|
30
31
|
Please consult link:https://www.phusionpassenger.com/support[the Phusion Passenger website] for a full list of support resources.
|
@@ -204,4 +204,57 @@ so that your images will always work no matter what sub-URI you've deployed to.
|
|
204
204
|
These helper methods are more valuable than you may think. For example they also
|
205
205
|
append a timestamp to the URI to better facilitate HTTP caching. For more information,
|
206
206
|
please refer to
|
207
|
-
link:http://api.rubyonrails.org/classes/ActionView/Helpers/AssetTagHelper.html[the Rails API docs].
|
207
|
+
link:http://api.rubyonrails.org/classes/ActionView/Helpers/AssetTagHelper.html[the Rails API docs].
|
208
|
+
|
209
|
+
=== Out-of-Band Garbage Work and Out-of-Band Garbage Collection
|
210
|
+
|
211
|
+
**Available since Phusion Passenger 4.0.0.**
|
212
|
+
|
213
|
+
**At this time, this feature is only available on Ruby.**
|
214
|
+
|
215
|
+
The Out-of-Band Work feature allows you to run arbitrary long-running tasks outside normal request cycles. This works by letting current requests to the process finish, then telling the process to perform the out-of-band work, then resuming passing requests to the process after said work is finished.
|
216
|
+
|
217
|
+
A specific (and perhaps primary) use case of of Out-of-Band Work is *Out-of-Band Garbage Collection*. The garbage collector is run outside normal request cycles so that garbage collection runs inside normal request cycles can finish a lot faster. This can potentially save tens to hundreds of milliseconds of latency in requests.
|
218
|
+
|
219
|
+
Because Out-of-Band Work is implemented at the Phusion Passenger inter-process request routing level, and not by, say, spawning a thread inside the application process, Out-of-Band Work has the following useful properties:
|
220
|
+
|
221
|
+
- It works well even with tasks that can pause all threads. The MRI Ruby garbage collector is a stop-the-world mark-and-sweep garbage collector.
|
222
|
+
- Phusion Passenger can spawn more processes as necessary, in order to prevent situations in which all application processes are busy performing out-of-band work. Phusion Passenger guarantees that there's at least one process that's ready to process requests.
|
223
|
+
|
224
|
+
Applications can use Out-of-Band Work as follows:
|
225
|
+
|
226
|
+
1. Request out-of-band work by outputting the `X-Passenger-Request-OOB-Work` header during a request. It does not matter what the value is. At this time, it is not possible to request out-of-band work from outside requests.
|
227
|
+
2. You can actually perform out-of-band work when you receive a `:oob_work` Phusion Passenger event.
|
228
|
+
|
229
|
+
Note that even though you can request out-of-band work, there's no guarantee that Phusion Passenger will send an `oob_work` event in a timely manner, if at all. It is also possible that Phusion Passenger sends an `oob_work` event without you ever having requested one. This latter could for example happen if the OOB work is administrator-initiated. Do not make any assumptions in your code.
|
230
|
+
|
231
|
+
Here's an example which implements out-of-band garbage collection using the Out-of-Band framework:
|
232
|
+
|
233
|
+
[source, ruby]
|
234
|
+
-------------------------------------------------
|
235
|
+
# Somewhere in a controller method:
|
236
|
+
# Tell Phusion Passenger we want to perform OOB work.
|
237
|
+
response.headers["X-Passenger-Request-OOB-Work"] = "true"
|
238
|
+
|
239
|
+
# Somewhere during application initialization:
|
240
|
+
PhusionPassenger.on_event(:oob_work) do
|
241
|
+
# Phusion Passenger has told us that we're ready to perform OOB work.
|
242
|
+
t0 = Time.now
|
243
|
+
GC.start
|
244
|
+
Rails.logger.info "Out-Of-Bound GC finished in #{Time.now - t0} sec"
|
245
|
+
end
|
246
|
+
-------------------------------------------------
|
247
|
+
|
248
|
+
For your convenience, Phusion Passenger provides a Rack middleware for out-of-band garbage collection. Add this to your `config.ru`:
|
249
|
+
|
250
|
+
[source, ruby]
|
251
|
+
----------------------------------------------------
|
252
|
+
require 'phusion_passenger/rack/out_of_band_gc'
|
253
|
+
|
254
|
+
# Trigger out-of-band GC every 5 requests.
|
255
|
+
use PhusionPassenger::Rack::OutOfBandGc, 5
|
256
|
+
----------------------------------------------------
|
257
|
+
|
258
|
+
References:
|
259
|
+
|
260
|
+
- link:http://blog.phusion.nl/2013/01/22/phusion-passenger-4-technology-preview-out-of-band-work/[The Phusion Blog article which first introduced this feature.]
|
data/ext/apache2/Bucket.cpp
CHANGED
data/ext/apache2/Bucket.h
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*
|
2
|
-
* Phusion Passenger -
|
2
|
+
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
3
|
* Copyright (c) 2010, 2011, 2012 Phusion
|
4
4
|
*
|
5
5
|
* "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
|
@@ -284,10 +284,8 @@ DEFINE_SERVER_INT_CONFIG_SETTER(cmd_union_station_gateway_port, unionStationGate
|
|
284
284
|
DEFINE_SERVER_STR_CONFIG_SETTER(cmd_union_station_gateway_cert, unionStationGatewayCert)
|
285
285
|
DEFINE_SERVER_STR_CONFIG_SETTER(cmd_union_station_proxy_address, unionStationProxyAddress)
|
286
286
|
DEFINE_SERVER_STR_CONFIG_SETTER(cmd_union_station_proxy_type, unionStationProxyType)
|
287
|
-
DEFINE_SERVER_STR_CONFIG_SETTER(cmd_passenger_analytics_log_dir, analyticsLogDir)
|
288
287
|
DEFINE_SERVER_STR_CONFIG_SETTER(cmd_passenger_analytics_log_user, analyticsLogUser)
|
289
288
|
DEFINE_SERVER_STR_CONFIG_SETTER(cmd_passenger_analytics_log_group, analyticsLogGroup)
|
290
|
-
DEFINE_SERVER_STR_CONFIG_SETTER(cmd_passenger_analytics_log_permissions, analyticsLogPermissions)
|
291
289
|
|
292
290
|
static const char *
|
293
291
|
cmd_passenger_pre_start(cmd_parms *cmd, void *pcfg, const char *arg) {
|
@@ -451,7 +449,7 @@ cmd_rails_allow_mod_rewrite(cmd_parms *cmd, void *pcfg, int arg) {
|
|
451
449
|
static const char *
|
452
450
|
cmd_rails_framework_spawner_idle_time(cmd_parms *cmd, void *pcfg, const char *arg) {
|
453
451
|
fprintf(stderr, "WARNING: The 'RailsFrameworkSpawnerIdleTime' option is obsolete. "
|
454
|
-
"Please use '
|
452
|
+
"Please use 'PassengerMaxPreloaderIdleTime' instead.\n");
|
455
453
|
fflush(stderr);
|
456
454
|
return NULL;
|
457
455
|
}
|
@@ -646,11 +644,6 @@ const command_rec passenger_commands[] = {
|
|
646
644
|
NULL,
|
647
645
|
RSRC_CONF,
|
648
646
|
"The type of the proxy that should be used for sending data to Union Station."),
|
649
|
-
AP_INIT_TAKE1("PassengerAnalyticsLogDir",
|
650
|
-
(Take1Func) cmd_passenger_analytics_log_dir,
|
651
|
-
NULL,
|
652
|
-
RSRC_CONF,
|
653
|
-
"Directory in which to store analytics logs."),
|
654
647
|
AP_INIT_TAKE1("PassengerAnalyticsLogUser",
|
655
648
|
(Take1Func) cmd_passenger_analytics_log_user,
|
656
649
|
NULL,
|
@@ -661,11 +654,6 @@ const command_rec passenger_commands[] = {
|
|
661
654
|
NULL,
|
662
655
|
RSRC_CONF,
|
663
656
|
"The group of analytics files."),
|
664
|
-
AP_INIT_TAKE1("PassengerAnalyticsLogPermissions",
|
665
|
-
(Take1Func) cmd_passenger_analytics_log_permissions,
|
666
|
-
NULL,
|
667
|
-
RSRC_CONF,
|
668
|
-
"The permissions of analytics files."),
|
669
657
|
AP_INIT_TAKE1("PassengerPreStart",
|
670
658
|
(Take1Func) cmd_passenger_pre_start,
|
671
659
|
NULL,
|
data/ext/apache2/Configuration.h
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/*
|
2
|
-
* Phusion Passenger -
|
3
|
-
* Copyright (c) 2010
|
2
|
+
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
+
* Copyright (c) 2010-2013 Phusion
|
4
4
|
*
|
5
5
|
* "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
|
6
6
|
*
|
@@ -310,7 +310,7 @@ struct DirConfig {
|
|
310
310
|
}
|
311
311
|
|
312
312
|
bool getBufferResponse() const {
|
313
|
-
return bufferResponse
|
313
|
+
return bufferResponse == ENABLED;
|
314
314
|
}
|
315
315
|
|
316
316
|
string getUnionStationFilterString() const {
|
@@ -380,10 +380,8 @@ struct ServerConfig {
|
|
380
380
|
string unionStationProxyType;
|
381
381
|
|
382
382
|
/** Directory in which analytics logs should be saved. */
|
383
|
-
string analyticsLogDir;
|
384
383
|
string analyticsLogUser;
|
385
384
|
string analyticsLogGroup;
|
386
|
-
string analyticsLogPermissions;
|
387
385
|
|
388
386
|
set<string> prestartURLs;
|
389
387
|
|
@@ -404,7 +402,6 @@ struct ServerConfig {
|
|
404
402
|
unionStationProxyType = string();
|
405
403
|
analyticsLogUser = DEFAULT_ANALYTICS_LOG_USER;
|
406
404
|
analyticsLogGroup = DEFAULT_ANALYTICS_LOG_GROUP;
|
407
|
-
analyticsLogPermissions = DEFAULT_ANALYTICS_LOG_PERMISSIONS;
|
408
405
|
}
|
409
406
|
|
410
407
|
/** Called after the configuration files have been loaded, inside
|
@@ -431,22 +428,6 @@ struct ServerConfig {
|
|
431
428
|
defaultGroup = groupEntry->gr_name;
|
432
429
|
}
|
433
430
|
|
434
|
-
if (analyticsLogDir.empty() && geteuid() == 0) {
|
435
|
-
analyticsLogDir = "/var/log/passenger-analytics";
|
436
|
-
} else if (analyticsLogDir.empty()) {
|
437
|
-
struct passwd *user = getpwuid(geteuid());
|
438
|
-
string username;
|
439
|
-
|
440
|
-
if (user == NULL) {
|
441
|
-
username = user->pw_name;
|
442
|
-
} else {
|
443
|
-
username = "user-" + toString(geteuid());
|
444
|
-
}
|
445
|
-
analyticsLogDir = string(getSystemTempDir()) +
|
446
|
-
"/passenger-analytics-logs." +
|
447
|
-
username;
|
448
|
-
}
|
449
|
-
|
450
431
|
if (unionStationProxyType != ""
|
451
432
|
&& unionStationProxyType != "http"
|
452
433
|
&& unionStationProxyType != "socks5") {
|
data/ext/apache2/Hooks.cpp
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*
|
2
|
-
* Phusion Passenger -
|
2
|
+
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
3
|
* Copyright (c) 2010, 2011, 2012 Phusion
|
4
4
|
*
|
5
5
|
* "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
|
@@ -1267,8 +1267,8 @@ public:
|
|
1267
1267
|
serverConfig.root, "ruby", serverConfig.maxPoolSize,
|
1268
1268
|
serverConfig.maxInstancesPerApp, serverConfig.poolIdleTime,
|
1269
1269
|
"",
|
1270
|
-
serverConfig.
|
1271
|
-
serverConfig.analyticsLogGroup,
|
1270
|
+
serverConfig.analyticsLogUser,
|
1271
|
+
serverConfig.analyticsLogGroup,
|
1272
1272
|
serverConfig.unionStationGatewayAddress,
|
1273
1273
|
serverConfig.unionStationGatewayPort,
|
1274
1274
|
serverConfig.unionStationGatewayCert,
|
@@ -1606,11 +1606,11 @@ init_module(apr_pool_t *pconf, apr_pool_t *plog, apr_pool_t *ptemp, server_rec *
|
|
1606
1606
|
|
1607
1607
|
fprintf(stderr, "Output of 'uname -a' follows:\n");
|
1608
1608
|
fflush(stderr);
|
1609
|
-
system("uname -a >&2");
|
1609
|
+
::system("uname -a >&2");
|
1610
1610
|
|
1611
1611
|
fprintf(stderr, "\nOutput of 'ulimit -a' follows:\n");
|
1612
1612
|
fflush(stderr);
|
1613
|
-
system("ulimit -a >&2");
|
1613
|
+
::system("ulimit -a >&2");
|
1614
1614
|
|
1615
1615
|
return DECLINED;
|
1616
1616
|
|
data/ext/apache2/Hooks.h
CHANGED
data/ext/apache2/mod_passenger.c
CHANGED
@@ -0,0 +1,181 @@
|
|
1
|
+
//-----------------------------------------------------------------------------
|
2
|
+
// boost aligned_storage.hpp header file
|
3
|
+
// See http://www.boost.org for updates, documentation, and revision history.
|
4
|
+
//-----------------------------------------------------------------------------
|
5
|
+
//
|
6
|
+
// Copyright (c) 2002-2003
|
7
|
+
// Eric Friedman, Itay Maman
|
8
|
+
//
|
9
|
+
// Distributed under the Boost Software License, Version 1.0. (See
|
10
|
+
// accompanying file LICENSE_1_0.txt or copy at
|
11
|
+
// http://www.boost.org/LICENSE_1_0.txt)
|
12
|
+
|
13
|
+
#ifndef BOOST_ALIGNED_STORAGE_HPP
|
14
|
+
#define BOOST_ALIGNED_STORAGE_HPP
|
15
|
+
|
16
|
+
#include <cstddef> // for std::size_t
|
17
|
+
|
18
|
+
#include "boost/config.hpp"
|
19
|
+
#include "boost/detail/workaround.hpp"
|
20
|
+
#include "boost/type_traits/alignment_of.hpp"
|
21
|
+
#include "boost/type_traits/type_with_alignment.hpp"
|
22
|
+
#include "boost/type_traits/is_pod.hpp"
|
23
|
+
|
24
|
+
#include "boost/mpl/eval_if.hpp"
|
25
|
+
#include "boost/mpl/identity.hpp"
|
26
|
+
|
27
|
+
#include "boost/type_traits/detail/bool_trait_def.hpp"
|
28
|
+
|
29
|
+
namespace boost {
|
30
|
+
|
31
|
+
namespace detail { namespace aligned_storage {
|
32
|
+
|
33
|
+
BOOST_STATIC_CONSTANT(
|
34
|
+
std::size_t
|
35
|
+
, alignment_of_max_align = ::boost::alignment_of<max_align>::value
|
36
|
+
);
|
37
|
+
|
38
|
+
//
|
39
|
+
// To be TR1 conforming this must be a POD type:
|
40
|
+
//
|
41
|
+
template <
|
42
|
+
std::size_t size_
|
43
|
+
, std::size_t alignment_
|
44
|
+
>
|
45
|
+
struct aligned_storage_imp
|
46
|
+
{
|
47
|
+
union data_t
|
48
|
+
{
|
49
|
+
char buf[size_];
|
50
|
+
|
51
|
+
typename mpl::eval_if_c<
|
52
|
+
alignment_ == std::size_t(-1)
|
53
|
+
, mpl::identity<detail::max_align>
|
54
|
+
, type_with_alignment<alignment_>
|
55
|
+
>::type align_;
|
56
|
+
} data_;
|
57
|
+
void* address() const { return const_cast<aligned_storage_imp*>(this); }
|
58
|
+
};
|
59
|
+
|
60
|
+
template< std::size_t alignment_ >
|
61
|
+
struct aligned_storage_imp<0u,alignment_>
|
62
|
+
{
|
63
|
+
/* intentionally empty */
|
64
|
+
void* address() const { return 0; }
|
65
|
+
};
|
66
|
+
|
67
|
+
}} // namespace detail::aligned_storage
|
68
|
+
|
69
|
+
template <
|
70
|
+
std::size_t size_
|
71
|
+
, std::size_t alignment_ = std::size_t(-1)
|
72
|
+
>
|
73
|
+
class aligned_storage :
|
74
|
+
#ifndef __BORLANDC__
|
75
|
+
private
|
76
|
+
#else
|
77
|
+
public
|
78
|
+
#endif
|
79
|
+
detail::aligned_storage::aligned_storage_imp<size_, alignment_>
|
80
|
+
{
|
81
|
+
|
82
|
+
public: // constants
|
83
|
+
|
84
|
+
typedef detail::aligned_storage::aligned_storage_imp<size_, alignment_> type;
|
85
|
+
|
86
|
+
BOOST_STATIC_CONSTANT(
|
87
|
+
std::size_t
|
88
|
+
, size = size_
|
89
|
+
);
|
90
|
+
BOOST_STATIC_CONSTANT(
|
91
|
+
std::size_t
|
92
|
+
, alignment = (
|
93
|
+
alignment_ == std::size_t(-1)
|
94
|
+
? ::boost::detail::aligned_storage::alignment_of_max_align
|
95
|
+
: alignment_
|
96
|
+
)
|
97
|
+
);
|
98
|
+
|
99
|
+
#if defined(__GNUC__) &&\
|
100
|
+
(__GNUC__ > 3) ||\
|
101
|
+
(__GNUC__ == 3 && (__GNUC_MINOR__ > 2 ||\
|
102
|
+
(__GNUC_MINOR__ == 2 && __GNUC_PATCHLEVEL__ >=3)))
|
103
|
+
|
104
|
+
private: // noncopyable
|
105
|
+
|
106
|
+
aligned_storage(const aligned_storage&);
|
107
|
+
aligned_storage& operator=(const aligned_storage&);
|
108
|
+
|
109
|
+
#else // gcc less than 3.2.3
|
110
|
+
|
111
|
+
public: // _should_ be noncopyable, but GCC compiler emits error
|
112
|
+
|
113
|
+
aligned_storage(const aligned_storage&);
|
114
|
+
aligned_storage& operator=(const aligned_storage&);
|
115
|
+
|
116
|
+
#endif // gcc < 3.2.3 workaround
|
117
|
+
|
118
|
+
public: // structors
|
119
|
+
|
120
|
+
aligned_storage()
|
121
|
+
{
|
122
|
+
}
|
123
|
+
|
124
|
+
~aligned_storage()
|
125
|
+
{
|
126
|
+
}
|
127
|
+
|
128
|
+
public: // accessors
|
129
|
+
|
130
|
+
void* address()
|
131
|
+
{
|
132
|
+
return static_cast<type*>(this)->address();
|
133
|
+
}
|
134
|
+
|
135
|
+
#if !BOOST_WORKAROUND(BOOST_MSVC, < 1300)
|
136
|
+
|
137
|
+
const void* address() const
|
138
|
+
{
|
139
|
+
return static_cast<const type*>(this)->address();
|
140
|
+
}
|
141
|
+
|
142
|
+
#else // MSVC6
|
143
|
+
|
144
|
+
const void* address() const;
|
145
|
+
|
146
|
+
#endif // MSVC6 workaround
|
147
|
+
|
148
|
+
};
|
149
|
+
|
150
|
+
#if BOOST_WORKAROUND(BOOST_MSVC, < 1300)
|
151
|
+
|
152
|
+
// MSVC6 seems not to like inline functions with const void* returns, so we
|
153
|
+
// declare the following here:
|
154
|
+
|
155
|
+
template <std::size_t S, std::size_t A>
|
156
|
+
const void* aligned_storage<S,A>::address() const
|
157
|
+
{
|
158
|
+
return const_cast< aligned_storage<S,A>* >(this)->address();
|
159
|
+
}
|
160
|
+
|
161
|
+
#endif // MSVC6 workaround
|
162
|
+
|
163
|
+
#ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
|
164
|
+
//
|
165
|
+
// Make sure that is_pod recognises aligned_storage<>::type
|
166
|
+
// as a POD (Note that aligned_storage<> itself is not a POD):
|
167
|
+
//
|
168
|
+
template <std::size_t size_, std::size_t alignment_>
|
169
|
+
struct is_pod<boost::detail::aligned_storage::aligned_storage_imp<size_,alignment_> >
|
170
|
+
BOOST_TT_AUX_BOOL_C_BASE(true)
|
171
|
+
{
|
172
|
+
BOOST_TT_AUX_BOOL_TRAIT_VALUE_DECL(true)
|
173
|
+
};
|
174
|
+
#endif
|
175
|
+
|
176
|
+
|
177
|
+
} // namespace boost
|
178
|
+
|
179
|
+
#include "boost/type_traits/detail/bool_trait_undef.hpp"
|
180
|
+
|
181
|
+
#endif // BOOST_ALIGNED_STORAGE_HPP
|