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
@@ -1,6 +1,6 @@
|
|
1
1
|
/*
|
2
|
-
* Phusion Passenger -
|
3
|
-
* Copyright (c) 2010 Phusion
|
2
|
+
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
|
+
* Copyright (c) 2010-2012 Phusion
|
4
4
|
*
|
5
5
|
* "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
|
6
6
|
*
|
@@ -132,8 +132,10 @@ caughtExitSignal(ev::sig &watcher, int revents) {
|
|
132
132
|
|
133
133
|
void
|
134
134
|
printInfo(ev::sig &watcher, int revents) {
|
135
|
-
|
136
|
-
|
135
|
+
cerr << "---------- Begin LoggingAgent status ----------\n";
|
136
|
+
loggingServer->dump(cerr);
|
137
|
+
cerr.flush();
|
138
|
+
cerr << "---------- End LoggingAgent status ----------\n";
|
137
139
|
}
|
138
140
|
|
139
141
|
static string
|
@@ -153,13 +155,11 @@ int
|
|
153
155
|
main(int argc, char *argv[]) {
|
154
156
|
VariantMap options = initializeAgent(argc, argv, "PassengerLoggingAgent");
|
155
157
|
string socketAddress = options.get("logging_agent_address");
|
156
|
-
string
|
158
|
+
string dumpFile = options.get("analytics_dump_file", false, "/dev/null");
|
157
159
|
string password = options.get("logging_agent_password");
|
158
160
|
string username = options.get("analytics_log_user",
|
159
161
|
false, myself());
|
160
162
|
string groupname = options.get("analytics_log_group", false);
|
161
|
-
string permissions = options.get("analytics_log_permissions",
|
162
|
-
false, DEFAULT_ANALYTICS_LOG_PERMISSIONS);
|
163
163
|
string unionStationGatewayAddress = options.get("union_station_gateway_address",
|
164
164
|
false, DEFAULT_UNION_STATION_GATEWAY_ADDRESS);
|
165
165
|
int unionStationGatewayPort = options.getInt("union_station_gateway_port",
|
@@ -234,15 +234,6 @@ main(int argc, char *argv[]) {
|
|
234
234
|
}
|
235
235
|
}
|
236
236
|
|
237
|
-
/* Create the logging directory if necessary. */
|
238
|
-
if (getFileType(loggingDir) == FT_NONEXISTANT) {
|
239
|
-
if (geteuid() == 0) {
|
240
|
-
makeDirTree(loggingDir, permissions, user->pw_uid, group->gr_gid);
|
241
|
-
} else {
|
242
|
-
makeDirTree(loggingDir, permissions);
|
243
|
-
}
|
244
|
-
}
|
245
|
-
|
246
237
|
/* Now's a good time to lower the privilege. */
|
247
238
|
if (geteuid() == 0) {
|
248
239
|
lowerPrivilege(username, user, group);
|
@@ -251,8 +242,7 @@ main(int argc, char *argv[]) {
|
|
251
242
|
/* Now setup the actual logging server. */
|
252
243
|
accountsDatabase->add("logging", password, false);
|
253
244
|
LoggingServer server(eventLoop, serverSocketFd,
|
254
|
-
accountsDatabase,
|
255
|
-
"u=rwx,g=rx,o=rx", GROUP_NOT_GIVEN,
|
245
|
+
accountsDatabase, dumpFile,
|
256
246
|
unionStationGatewayAddress,
|
257
247
|
unionStationGatewayPort,
|
258
248
|
unionStationGatewayCert,
|
@@ -281,7 +271,7 @@ main(int argc, char *argv[]) {
|
|
281
271
|
|
282
272
|
/********** Initialized! Enter main loop... **********/
|
283
273
|
|
284
|
-
|
274
|
+
P_WARN("Logging agent online, listening at " << socketAddress);
|
285
275
|
ev_run(eventLoop, 0);
|
286
276
|
P_DEBUG("Logging agent exiting with code " << exitCode << ".");
|
287
277
|
return exitCode;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/*
|
2
|
-
* Phusion Passenger -
|
2
|
+
* Phusion Passenger - https://www.phusionpassenger.com/
|
3
3
|
* Copyright (c) 2010 Phusion
|
4
4
|
*
|
5
5
|
* "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
|
@@ -241,6 +241,9 @@ private:
|
|
241
241
|
|
242
242
|
curl_easy_setopt(curl, CURLOPT_HTTPGET, 0);
|
243
243
|
curl_easy_setopt(curl, CURLOPT_HTTPPOST, post);
|
244
|
+
P_DEBUG("Sending Union Station packet: key=" << item.unionStationKey <<
|
245
|
+
", node=" << item.nodeName << ", category=" << item.category <<
|
246
|
+
", compressedDataSize=" << item.data.size());
|
244
247
|
CURLcode code = curl_easy_perform(curl);
|
245
248
|
curl_formfree(post);
|
246
249
|
|
@@ -471,7 +474,7 @@ public:
|
|
471
474
|
unsigned int count)
|
472
475
|
{
|
473
476
|
Item item;
|
474
|
-
|
477
|
+
|
475
478
|
item.unionStationKey = unionStationKey;
|
476
479
|
item.nodeName = nodeName;
|
477
480
|
item.category = category;
|
@@ -491,6 +494,10 @@ public:
|
|
491
494
|
}
|
492
495
|
}
|
493
496
|
|
497
|
+
P_DEBUG("Scheduling Union Station packet: key=" << unionStationKey <<
|
498
|
+
", node=" << nodeName << ", category=" << category <<
|
499
|
+
", compressedDataSize=" << item.data.size());
|
500
|
+
|
494
501
|
if (!queue.tryAdd(item)) {
|
495
502
|
P_WARN("The Union Station gateway isn't responding quickly enough; dropping packet.");
|
496
503
|
}
|
@@ -53,44 +53,84 @@ setGivenEnvVars(const char *envvarsData) {
|
|
53
53
|
|
54
54
|
static void
|
55
55
|
dumpInformation() {
|
56
|
-
const char *
|
57
|
-
if ((
|
58
|
-
|
56
|
+
const char *c_dir;
|
57
|
+
if ((c_dir = getenv("PASSENGER_DEBUG_DIR")) == NULL) {
|
58
|
+
return;
|
59
|
+
}
|
59
60
|
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
61
|
+
FILE *f;
|
62
|
+
string dir = c_dir;
|
63
|
+
|
64
|
+
f = fopen((dir + "/envvars").c_str(), "w");
|
65
|
+
if (f != NULL) {
|
66
|
+
int i = 0;
|
67
|
+
while (environ[i] != NULL) {
|
68
|
+
fputs(environ[i], f);
|
69
|
+
putc('\n', f);
|
70
|
+
i++;
|
69
71
|
}
|
72
|
+
fclose(f);
|
73
|
+
}
|
70
74
|
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
}
|
85
|
-
fclose(f);
|
75
|
+
f = fopen((dir + "/user_info").c_str(), "w");
|
76
|
+
if (f != NULL) {
|
77
|
+
pid_t pid = fork();
|
78
|
+
if (pid == 0) {
|
79
|
+
dup2(fileno(f), 1);
|
80
|
+
execlp("id", "id", (char *) 0);
|
81
|
+
_exit(1);
|
82
|
+
} else if (pid == -1) {
|
83
|
+
int e = errno;
|
84
|
+
fprintf(stderr, "Error: cannot fork a new process: %s (errno=%d)\n",
|
85
|
+
strerror(e), e);
|
86
|
+
} else {
|
87
|
+
waitpid(pid, NULL, 0);
|
86
88
|
}
|
89
|
+
fclose(f);
|
90
|
+
}
|
87
91
|
|
88
|
-
|
92
|
+
f = fopen((dir + "/ulimit").c_str(), "w");
|
93
|
+
if (f != NULL) {
|
94
|
+
pid_t pid = fork();
|
95
|
+
if (pid == 0) {
|
96
|
+
dup2(fileno(f), 1);
|
97
|
+
execlp("ulimit", "ulimit", "-a", (char *) 0);
|
98
|
+
_exit(1);
|
99
|
+
} else if (pid == -1) {
|
100
|
+
int e = errno;
|
101
|
+
fprintf(stderr, "Error: cannot fork a new process: %s (errno=%d)\n",
|
102
|
+
strerror(e), e);
|
103
|
+
} else {
|
104
|
+
waitpid(pid, NULL, 0);
|
105
|
+
}
|
106
|
+
fclose(f);
|
107
|
+
}
|
108
|
+
|
109
|
+
f = fopen((dir + "/ulimit").c_str(), "w");
|
110
|
+
if (f != NULL) {
|
111
|
+
pid_t pid = fork();
|
112
|
+
if (pid == 0) {
|
113
|
+
dup2(fileno(f), 1);
|
114
|
+
execlp("ulimit", "ulimit", "-a", (char *) 0);
|
115
|
+
_exit(1);
|
116
|
+
} else if (pid == -1) {
|
117
|
+
int e = errno;
|
118
|
+
fprintf(stderr, "Error: cannot fork a new process: %s (errno=%d)\n",
|
119
|
+
strerror(e), e);
|
120
|
+
} else {
|
121
|
+
waitpid(pid, NULL, 0);
|
122
|
+
}
|
123
|
+
fclose(f);
|
124
|
+
}
|
125
|
+
|
126
|
+
#ifdef __linux__
|
127
|
+
// TODO: call helper-scripts/system-memory-stats.py
|
128
|
+
f = fopen((dir + "/sysmemory").c_str(), "w");
|
89
129
|
if (f != NULL) {
|
90
130
|
pid_t pid = fork();
|
91
131
|
if (pid == 0) {
|
92
132
|
dup2(fileno(f), 1);
|
93
|
-
execlp("
|
133
|
+
execlp("free", "free", "-m", (char *) 0);
|
94
134
|
_exit(1);
|
95
135
|
} else if (pid == -1) {
|
96
136
|
int e = errno;
|
@@ -101,7 +141,7 @@ dumpInformation() {
|
|
101
141
|
}
|
102
142
|
fclose(f);
|
103
143
|
}
|
104
|
-
|
144
|
+
#endif
|
105
145
|
}
|
106
146
|
|
107
147
|
// Usage: SpawnPreparer <envvars> <executable> <exec args...>
|
data/ext/libeio/Changes
CHANGED
@@ -68,5 +68,9 @@ TODO: maybe work around 3.996gb barrier in pread/pwrite as well, maybe readahead
|
|
68
68
|
by implementing a working directory abstraction.
|
69
69
|
- make readahead emulation behave more like actual readahead by never failing.
|
70
70
|
- added EIO_LSEEK (untested).
|
71
|
+
- added EIO_FALLOC_FL_PUNCH_HOLE.
|
71
72
|
- wtf. etp_proc returned 0, and no compiler ever complained.
|
73
|
+
- remove pread/pwrite emulation, as the only system that lacked them
|
74
|
+
(cygwin) provides them for a while now.
|
75
|
+
- provide pread/pwrite implementations for win32.
|
72
76
|
|
data/ext/libeio/ecb.h
CHANGED
@@ -30,6 +30,9 @@
|
|
30
30
|
#ifndef ECB_H
|
31
31
|
#define ECB_H
|
32
32
|
|
33
|
+
/* 16 bits major, 16 bits minor */
|
34
|
+
#define ECB_VERSION 0x00010002
|
35
|
+
|
33
36
|
#ifdef _WIN32
|
34
37
|
typedef signed char int8_t;
|
35
38
|
typedef unsigned char uint8_t;
|
@@ -44,8 +47,22 @@
|
|
44
47
|
typedef signed __int64 int64_t;
|
45
48
|
typedef unsigned __int64 uint64_t;
|
46
49
|
#endif
|
50
|
+
#ifdef _WIN64
|
51
|
+
#define ECB_PTRSIZE 8
|
52
|
+
typedef uint64_t uintptr_t;
|
53
|
+
typedef int64_t intptr_t;
|
54
|
+
#else
|
55
|
+
#define ECB_PTRSIZE 4
|
56
|
+
typedef uint32_t uintptr_t;
|
57
|
+
typedef int32_t intptr_t;
|
58
|
+
#endif
|
47
59
|
#else
|
48
60
|
#include <inttypes.h>
|
61
|
+
#if UINTMAX_MAX > 0xffffffffU
|
62
|
+
#define ECB_PTRSIZE 8
|
63
|
+
#else
|
64
|
+
#define ECB_PTRSIZE 4
|
65
|
+
#endif
|
49
66
|
#endif
|
50
67
|
|
51
68
|
/* many compilers define _GNUC_ to some versions but then only implement
|
@@ -63,16 +80,32 @@
|
|
63
80
|
#endif
|
64
81
|
#endif
|
65
82
|
|
83
|
+
#define ECB_C (__STDC__+0) /* this assumes that __STDC__ is either empty or a number */
|
84
|
+
#define ECB_C99 (__STDC_VERSION__ >= 199901L)
|
85
|
+
#define ECB_C11 (__STDC_VERSION__ >= 201112L)
|
86
|
+
#define ECB_CPP (__cplusplus+0)
|
87
|
+
#define ECB_CPP11 (__cplusplus >= 201103L)
|
88
|
+
|
89
|
+
#if ECB_CPP
|
90
|
+
#define ECB_EXTERN_C extern "C"
|
91
|
+
#define ECB_EXTERN_C_BEG ECB_EXTERN_C {
|
92
|
+
#define ECB_EXTERN_C_END }
|
93
|
+
#else
|
94
|
+
#define ECB_EXTERN_C extern
|
95
|
+
#define ECB_EXTERN_C_BEG
|
96
|
+
#define ECB_EXTERN_C_END
|
97
|
+
#endif
|
98
|
+
|
66
99
|
/*****************************************************************************/
|
67
100
|
|
68
101
|
/* ECB_NO_THREADS - ecb is not used by multiple threads, ever */
|
69
102
|
/* ECB_NO_SMP - ecb might be used in multiple threads, but only on a single cpu */
|
70
103
|
|
71
104
|
#if ECB_NO_THREADS
|
72
|
-
#
|
105
|
+
#define ECB_NO_SMP 1
|
73
106
|
#endif
|
74
107
|
|
75
|
-
#if
|
108
|
+
#if ECB_NO_SMP
|
76
109
|
#define ECB_MEMORY_FENCE do { } while (0)
|
77
110
|
#endif
|
78
111
|
|
@@ -80,39 +113,55 @@
|
|
80
113
|
#if ECB_GCC_VERSION(2,5) || defined __INTEL_COMPILER || (__llvm__ && __GNUC__) || __SUNPRO_C >= 0x5110 || __SUNPRO_CC >= 0x5110
|
81
114
|
#if __i386 || __i386__
|
82
115
|
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("lock; orb $0, -1(%%esp)" : : : "memory")
|
83
|
-
#define ECB_MEMORY_FENCE_ACQUIRE
|
84
|
-
#define ECB_MEMORY_FENCE_RELEASE
|
116
|
+
#define ECB_MEMORY_FENCE_ACQUIRE __asm__ __volatile__ ("" : : : "memory")
|
117
|
+
#define ECB_MEMORY_FENCE_RELEASE __asm__ __volatile__ ("")
|
85
118
|
#elif __amd64 || __amd64__ || __x86_64 || __x86_64__
|
86
|
-
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("mfence"
|
87
|
-
#define ECB_MEMORY_FENCE_ACQUIRE __asm__ __volatile__ ("
|
88
|
-
#define ECB_MEMORY_FENCE_RELEASE __asm__ __volatile__ ("
|
119
|
+
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("mfence" : : : "memory")
|
120
|
+
#define ECB_MEMORY_FENCE_ACQUIRE __asm__ __volatile__ ("" : : : "memory")
|
121
|
+
#define ECB_MEMORY_FENCE_RELEASE __asm__ __volatile__ ("")
|
89
122
|
#elif __powerpc__ || __ppc__ || __powerpc64__ || __ppc64__
|
90
|
-
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("sync"
|
123
|
+
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("sync" : : : "memory")
|
91
124
|
#elif defined __ARM_ARCH_6__ || defined __ARM_ARCH_6J__ \
|
92
125
|
|| defined __ARM_ARCH_6K__ || defined __ARM_ARCH_6ZK__
|
93
126
|
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("mcr p15,0,%0,c7,c10,5" : : "r" (0) : "memory")
|
94
127
|
#elif defined __ARM_ARCH_7__ || defined __ARM_ARCH_7A__ \
|
95
|
-
|| defined __ARM_ARCH_7M__ || defined __ARM_ARCH_7R__
|
96
|
-
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("dmb"
|
128
|
+
|| defined __ARM_ARCH_7M__ || defined __ARM_ARCH_7R__
|
129
|
+
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("dmb" : : : "memory")
|
97
130
|
#elif __sparc || __sparc__
|
98
|
-
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("membar #LoadStore | #LoadLoad | #StoreStore | #StoreLoad
|
99
|
-
#define ECB_MEMORY_FENCE_ACQUIRE __asm__ __volatile__ ("membar #LoadStore | #LoadLoad"
|
100
|
-
#define ECB_MEMORY_FENCE_RELEASE __asm__ __volatile__ ("membar #LoadStore
|
131
|
+
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("membar #LoadStore | #LoadLoad | #StoreStore | #StoreLoad" : : : "memory")
|
132
|
+
#define ECB_MEMORY_FENCE_ACQUIRE __asm__ __volatile__ ("membar #LoadStore | #LoadLoad" : : : "memory")
|
133
|
+
#define ECB_MEMORY_FENCE_RELEASE __asm__ __volatile__ ("membar #LoadStore | #StoreStore")
|
101
134
|
#elif defined __s390__ || defined __s390x__
|
102
135
|
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("bcr 15,0" : : : "memory")
|
103
136
|
#elif defined __mips__
|
104
|
-
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("sync"
|
137
|
+
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("sync" : : : "memory")
|
105
138
|
#elif defined __alpha__
|
106
|
-
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("mb"
|
139
|
+
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("mb" : : : "memory")
|
140
|
+
#elif defined __hppa__
|
141
|
+
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("" : : : "memory")
|
142
|
+
#define ECB_MEMORY_FENCE_RELEASE __asm__ __volatile__ ("")
|
143
|
+
#elif defined __ia64__
|
144
|
+
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("mf" : : : "memory")
|
107
145
|
#endif
|
108
146
|
#endif
|
109
147
|
#endif
|
110
148
|
|
111
149
|
#ifndef ECB_MEMORY_FENCE
|
112
|
-
#if ECB_GCC_VERSION(4,
|
150
|
+
#if ECB_GCC_VERSION(4,7)
|
151
|
+
/* see comment below (stdatomic.h) about the C11 memory model. */
|
152
|
+
#define ECB_MEMORY_FENCE __atomic_thread_fence (__ATOMIC_SEQ_CST)
|
153
|
+
|
154
|
+
/* The __has_feature syntax from clang is so misdesigned that we cannot use it
|
155
|
+
* without risking compile time errors with other compilers. We *could*
|
156
|
+
* define our own ecb_clang_has_feature, but I just can't be bothered to work
|
157
|
+
* around this shit time and again.
|
158
|
+
* #elif defined __clang && __has_feature (cxx_atomic)
|
159
|
+
* // see comment below (stdatomic.h) about the C11 memory model.
|
160
|
+
* #define ECB_MEMORY_FENCE __c11_atomic_thread_fence (__ATOMIC_SEQ_CST)
|
161
|
+
*/
|
162
|
+
|
163
|
+
#elif ECB_GCC_VERSION(4,4) || defined __INTEL_COMPILER || defined __clang__
|
113
164
|
#define ECB_MEMORY_FENCE __sync_synchronize ()
|
114
|
-
/*#define ECB_MEMORY_FENCE_ACQUIRE ({ char dummy = 0; __sync_lock_test_and_set (&dummy, 1); }) */
|
115
|
-
/*#define ECB_MEMORY_FENCE_RELEASE ({ char dummy = 1; __sync_lock_release (&dummy ); }) */
|
116
165
|
#elif _MSC_VER >= 1400 /* VC++ 2005 */
|
117
166
|
#pragma intrinsic(_ReadBarrier,_WriteBarrier,_ReadWriteBarrier)
|
118
167
|
#define ECB_MEMORY_FENCE _ReadWriteBarrier ()
|
@@ -131,6 +180,21 @@
|
|
131
180
|
#endif
|
132
181
|
#endif
|
133
182
|
|
183
|
+
#ifndef ECB_MEMORY_FENCE
|
184
|
+
#if ECB_C11 && !defined __STDC_NO_ATOMICS__
|
185
|
+
/* we assume that these memory fences work on all variables/all memory accesses, */
|
186
|
+
/* not just C11 atomics and atomic accesses */
|
187
|
+
#include <stdatomic.h>
|
188
|
+
/* Unfortunately, neither gcc 4.7 nor clang 3.1 generate any instructions for */
|
189
|
+
/* any fence other than seq_cst, which isn't very efficient for us. */
|
190
|
+
/* Why that is, we don't know - either the C11 memory model is quite useless */
|
191
|
+
/* for most usages, or gcc and clang have a bug */
|
192
|
+
/* I *currently* lean towards the latter, and inefficiently implement */
|
193
|
+
/* all three of ecb's fences as a seq_cst fence */
|
194
|
+
#define ECB_MEMORY_FENCE atomic_thread_fence (memory_order_seq_cst)
|
195
|
+
#endif
|
196
|
+
#endif
|
197
|
+
|
134
198
|
#ifndef ECB_MEMORY_FENCE
|
135
199
|
#if !ECB_AVOID_PTHREADS
|
136
200
|
/*
|
@@ -159,8 +223,6 @@
|
|
159
223
|
|
160
224
|
/*****************************************************************************/
|
161
225
|
|
162
|
-
#define ECB_C99 (__STDC_VERSION__ >= 199901L)
|
163
|
-
|
164
226
|
#if __cplusplus
|
165
227
|
#define ecb_inline static inline
|
166
228
|
#elif ECB_GCC_VERSION(2,5)
|
@@ -208,11 +270,16 @@ typedef int ecb_bool;
|
|
208
270
|
#endif
|
209
271
|
|
210
272
|
#define ecb_noinline ecb_attribute ((__noinline__))
|
211
|
-
#define ecb_noreturn ecb_attribute ((__noreturn__))
|
212
273
|
#define ecb_unused ecb_attribute ((__unused__))
|
213
274
|
#define ecb_const ecb_attribute ((__const__))
|
214
275
|
#define ecb_pure ecb_attribute ((__pure__))
|
215
276
|
|
277
|
+
#if ECB_C11
|
278
|
+
#define ecb_noreturn _Noreturn
|
279
|
+
#else
|
280
|
+
#define ecb_noreturn ecb_attribute ((__noreturn__))
|
281
|
+
#endif
|
282
|
+
|
216
283
|
#if ECB_GCC_VERSION(4,3)
|
217
284
|
#define ecb_artificial ecb_attribute ((__artificial__))
|
218
285
|
#define ecb_hot ecb_attribute ((__hot__))
|
@@ -312,6 +379,11 @@ typedef int ecb_bool;
|
|
312
379
|
}
|
313
380
|
#endif
|
314
381
|
|
382
|
+
ecb_function_ ecb_bool ecb_is_pot32 (uint32_t x) ecb_const;
|
383
|
+
ecb_function_ ecb_bool ecb_is_pot32 (uint32_t x) { return !(x & (x - 1)); }
|
384
|
+
ecb_function_ ecb_bool ecb_is_pot64 (uint64_t x) ecb_const;
|
385
|
+
ecb_function_ ecb_bool ecb_is_pot64 (uint64_t x) { return !(x & (x - 1)); }
|
386
|
+
|
315
387
|
ecb_function_ uint8_t ecb_bitrev8 (uint8_t x) ecb_const;
|
316
388
|
ecb_function_ uint8_t ecb_bitrev8 (uint8_t x)
|
317
389
|
{
|
@@ -405,14 +477,32 @@ ecb_inline uint64_t ecb_rotr64 (uint64_t x, unsigned int count) { return (x << (
|
|
405
477
|
#endif
|
406
478
|
|
407
479
|
/* try to tell the compiler that some condition is definitely true */
|
408
|
-
#define ecb_assume(cond)
|
480
|
+
#define ecb_assume(cond) if (!(cond)) ecb_unreachable (); else 0
|
409
481
|
|
410
482
|
ecb_inline unsigned char ecb_byteorder_helper (void) ecb_const;
|
411
483
|
ecb_inline unsigned char
|
412
484
|
ecb_byteorder_helper (void)
|
413
485
|
{
|
414
|
-
|
415
|
-
|
486
|
+
/* the union code still generates code under pressure in gcc, */
|
487
|
+
/* but less than using pointers, and always seems to */
|
488
|
+
/* successfully return a constant. */
|
489
|
+
/* the reason why we have this horrible preprocessor mess */
|
490
|
+
/* is to avoid it in all cases, at least on common architectures */
|
491
|
+
/* or when using a recent enough gcc version (>= 4.6) */
|
492
|
+
#if __i386 || __i386__ || _M_X86 || __amd64 || __amd64__ || _M_X64
|
493
|
+
return 0x44;
|
494
|
+
#elif __BYTE_ORDER__ && __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
|
495
|
+
return 0x44;
|
496
|
+
#elif __BYTE_ORDER__ && __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
|
497
|
+
return 0x11;
|
498
|
+
#else
|
499
|
+
union
|
500
|
+
{
|
501
|
+
uint32_t i;
|
502
|
+
uint8_t c;
|
503
|
+
} u = { 0x11223344 };
|
504
|
+
return u.c;
|
505
|
+
#endif
|
416
506
|
}
|
417
507
|
|
418
508
|
ecb_inline ecb_bool ecb_big_endian (void) ecb_const;
|
@@ -453,5 +543,172 @@ ecb_inline ecb_bool ecb_little_endian (void) { return ecb_byteorder_helper () ==
|
|
453
543
|
#define ecb_array_length(name) (sizeof (name) / sizeof (name [0]))
|
454
544
|
#endif
|
455
545
|
|
546
|
+
/*******************************************************************************/
|
547
|
+
/* floating point stuff, can be disabled by defining ECB_NO_LIBM */
|
548
|
+
|
549
|
+
/* basically, everything uses "ieee pure-endian" floating point numbers */
|
550
|
+
/* the only noteworthy exception is ancient armle, which uses order 43218765 */
|
551
|
+
#if 0 \
|
552
|
+
|| __i386 || __i386__ \
|
553
|
+
|| __amd64 || __amd64__ || __x86_64 || __x86_64__ \
|
554
|
+
|| __powerpc__ || __ppc__ || __powerpc64__ || __ppc64__ \
|
555
|
+
|| defined __arm__ && defined __ARM_EABI__ \
|
556
|
+
|| defined __s390__ || defined __s390x__ \
|
557
|
+
|| defined __mips__ \
|
558
|
+
|| defined __alpha__ \
|
559
|
+
|| defined __hppa__ \
|
560
|
+
|| defined __ia64__ \
|
561
|
+
|| defined _M_IX86 || defined _M_AMD64 || defined _M_IA64
|
562
|
+
#define ECB_STDFP 1
|
563
|
+
#include <string.h> /* for memcpy */
|
564
|
+
#else
|
565
|
+
#define ECB_STDFP 0
|
566
|
+
#include <math.h> /* for frexp*, ldexp* */
|
567
|
+
#endif
|
568
|
+
|
569
|
+
#ifndef ECB_NO_LIBM
|
570
|
+
|
571
|
+
/* convert a float to ieee single/binary32 */
|
572
|
+
ecb_function_ uint32_t ecb_float_to_binary32 (float x) ecb_const;
|
573
|
+
ecb_function_ uint32_t
|
574
|
+
ecb_float_to_binary32 (float x)
|
575
|
+
{
|
576
|
+
uint32_t r;
|
577
|
+
|
578
|
+
#if ECB_STDFP
|
579
|
+
memcpy (&r, &x, 4);
|
580
|
+
#else
|
581
|
+
/* slow emulation, works for anything but -0 */
|
582
|
+
uint32_t m;
|
583
|
+
int e;
|
584
|
+
|
585
|
+
if (x == 0e0f ) return 0x00000000U;
|
586
|
+
if (x > +3.40282346638528860e+38f) return 0x7f800000U;
|
587
|
+
if (x < -3.40282346638528860e+38f) return 0xff800000U;
|
588
|
+
if (x != x ) return 0x7fbfffffU;
|
589
|
+
|
590
|
+
m = frexpf (x, &e) * 0x1000000U;
|
591
|
+
|
592
|
+
r = m & 0x80000000U;
|
593
|
+
|
594
|
+
if (r)
|
595
|
+
m = -m;
|
596
|
+
|
597
|
+
if (e <= -126)
|
598
|
+
{
|
599
|
+
m &= 0xffffffU;
|
600
|
+
m >>= (-125 - e);
|
601
|
+
e = -126;
|
602
|
+
}
|
603
|
+
|
604
|
+
r |= (e + 126) << 23;
|
605
|
+
r |= m & 0x7fffffU;
|
606
|
+
#endif
|
607
|
+
|
608
|
+
return r;
|
609
|
+
}
|
610
|
+
|
611
|
+
/* converts an ieee single/binary32 to a float */
|
612
|
+
ecb_function_ float ecb_binary32_to_float (uint32_t x) ecb_const;
|
613
|
+
ecb_function_ float
|
614
|
+
ecb_binary32_to_float (uint32_t x)
|
615
|
+
{
|
616
|
+
float r;
|
617
|
+
|
618
|
+
#if ECB_STDFP
|
619
|
+
memcpy (&r, &x, 4);
|
620
|
+
#else
|
621
|
+
/* emulation, only works for normals and subnormals and +0 */
|
622
|
+
int neg = x >> 31;
|
623
|
+
int e = (x >> 23) & 0xffU;
|
624
|
+
|
625
|
+
x &= 0x7fffffU;
|
626
|
+
|
627
|
+
if (e)
|
628
|
+
x |= 0x800000U;
|
629
|
+
else
|
630
|
+
e = 1;
|
631
|
+
|
632
|
+
/* we distrust ldexpf a bit and do the 2**-24 scaling by an extra multiply */
|
633
|
+
r = ldexpf (x * (0.5f / 0x800000U), e - 126);
|
634
|
+
|
635
|
+
r = neg ? -r : r;
|
636
|
+
#endif
|
637
|
+
|
638
|
+
return r;
|
639
|
+
}
|
640
|
+
|
641
|
+
/* convert a double to ieee double/binary64 */
|
642
|
+
ecb_function_ uint64_t ecb_double_to_binary64 (double x) ecb_const;
|
643
|
+
ecb_function_ uint64_t
|
644
|
+
ecb_double_to_binary64 (double x)
|
645
|
+
{
|
646
|
+
uint64_t r;
|
647
|
+
|
648
|
+
#if ECB_STDFP
|
649
|
+
memcpy (&r, &x, 8);
|
650
|
+
#else
|
651
|
+
/* slow emulation, works for anything but -0 */
|
652
|
+
uint64_t m;
|
653
|
+
int e;
|
654
|
+
|
655
|
+
if (x == 0e0 ) return 0x0000000000000000U;
|
656
|
+
if (x > +1.79769313486231470e+308) return 0x7ff0000000000000U;
|
657
|
+
if (x < -1.79769313486231470e+308) return 0xfff0000000000000U;
|
658
|
+
if (x != x ) return 0X7ff7ffffffffffffU;
|
659
|
+
|
660
|
+
m = frexp (x, &e) * 0x20000000000000U;
|
661
|
+
|
662
|
+
r = m & 0x8000000000000000;;
|
663
|
+
|
664
|
+
if (r)
|
665
|
+
m = -m;
|
666
|
+
|
667
|
+
if (e <= -1022)
|
668
|
+
{
|
669
|
+
m &= 0x1fffffffffffffU;
|
670
|
+
m >>= (-1021 - e);
|
671
|
+
e = -1022;
|
672
|
+
}
|
673
|
+
|
674
|
+
r |= ((uint64_t)(e + 1022)) << 52;
|
675
|
+
r |= m & 0xfffffffffffffU;
|
676
|
+
#endif
|
677
|
+
|
678
|
+
return r;
|
679
|
+
}
|
680
|
+
|
681
|
+
/* converts an ieee double/binary64 to a double */
|
682
|
+
ecb_function_ double ecb_binary64_to_double (uint64_t x) ecb_const;
|
683
|
+
ecb_function_ double
|
684
|
+
ecb_binary64_to_double (uint64_t x)
|
685
|
+
{
|
686
|
+
double r;
|
687
|
+
|
688
|
+
#if ECB_STDFP
|
689
|
+
memcpy (&r, &x, 8);
|
690
|
+
#else
|
691
|
+
/* emulation, only works for normals and subnormals and +0 */
|
692
|
+
int neg = x >> 63;
|
693
|
+
int e = (x >> 52) & 0x7ffU;
|
694
|
+
|
695
|
+
x &= 0xfffffffffffffU;
|
696
|
+
|
697
|
+
if (e)
|
698
|
+
x |= 0x10000000000000U;
|
699
|
+
else
|
700
|
+
e = 1;
|
701
|
+
|
702
|
+
/* we distrust ldexp a bit and do the 2**-53 scaling by an extra multiply */
|
703
|
+
r = ldexp (x * (0.5 / 0x10000000000000U), e - 1022);
|
704
|
+
|
705
|
+
r = neg ? -r : r;
|
706
|
+
#endif
|
707
|
+
|
708
|
+
return r;
|
709
|
+
}
|
710
|
+
|
711
|
+
#endif
|
712
|
+
|
456
713
|
#endif
|
457
714
|
|