diff options
author | robot-contrib <robot-contrib@yandex-team.com> | 2022-09-17 10:02:06 +0300 |
---|---|---|
committer | robot-contrib <robot-contrib@yandex-team.com> | 2022-09-17 10:02:06 +0300 |
commit | 28dcdc0d65fba31bc1e2215741a4af228992938e (patch) | |
tree | 41862decccd7e31588bbf3b271f58c9624730512 | |
parent | 6d2819377bd78f50c415e809c9f0feae0d79fe9f (diff) | |
download | ydb-28dcdc0d65fba31bc1e2215741a4af228992938e.tar.gz |
Update contrib/python/boto3/py3 to 1.24.75
-rw-r--r-- | contrib/restricted/boost/arcadia_test/python/mod/module.cpp | 11 | ||||
-rw-r--r-- | contrib/restricted/boost/arcadia_test/python/py2/test_hello.py | 5 | ||||
-rw-r--r-- | contrib/restricted/boost/arcadia_test/python/py3/test_hello.py | 5 | ||||
-rw-r--r-- | contrib/restricted/boost/bind/include/boost/bind/protect.hpp | 348 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/detail/aix_init_module.hpp | 26 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/detail/api_placeholder.hpp | 15 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/detail/enable_if.hpp | 39 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/detail/if_else.hpp | 81 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/detail/make_tuple.hpp | 32 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/detail/pointee.hpp | 35 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/detail/result.hpp | 133 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/numpy.hpp | 34 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/numpy/config.hpp | 80 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/numpy/dtype.hpp | 117 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/numpy/internal.hpp | 36 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/numpy/invoke_matching.hpp | 186 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/numpy/matrix.hpp | 84 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/numpy/ndarray.hpp | 313 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/numpy/numpy_object_mgr_traits.hpp | 38 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/numpy/scalars.hpp | 58 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/numpy/ufunc.hpp | 206 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/object_call.hpp | 23 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/suite/indexing/container_utils.hpp | 57 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/suite/indexing/detail/indexing_suite_detail.hpp | 759 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/suite/indexing/indexing_suite.hpp | 295 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/suite/indexing/map_indexing_suite.hpp | 181 | ||||
-rw-r--r-- | contrib/restricted/boost/boost/python/suite/indexing/vector_indexing_suite.hpp | 246 | ||||
-rw-r--r-- | contrib/restricted/boost/python/LICENSE_1_0.txt | 23 | ||||
-rw-r--r-- | contrib/restricted/boost/python/README.md | 57 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python.hpp (renamed from contrib/restricted/boost/boost/python.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/arg_from_python.hpp (renamed from contrib/restricted/boost/boost/python/arg_from_python.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/args.hpp (renamed from contrib/restricted/boost/boost/python/args.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/args_fwd.hpp (renamed from contrib/restricted/boost/boost/python/args_fwd.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/back_reference.hpp (renamed from contrib/restricted/boost/boost/python/back_reference.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/base_type_traits.hpp (renamed from contrib/restricted/boost/boost/python/base_type_traits.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/bases.hpp (renamed from contrib/restricted/boost/boost/python/bases.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/borrowed.hpp (renamed from contrib/restricted/boost/boost/python/borrowed.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/call.hpp (renamed from contrib/restricted/boost/boost/python/call.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/call_method.hpp (renamed from contrib/restricted/boost/boost/python/call_method.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/cast.hpp (renamed from contrib/restricted/boost/boost/python/cast.hpp) | 4 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/class.hpp (renamed from contrib/restricted/boost/boost/python/class.hpp) | 4 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/class_fwd.hpp (renamed from contrib/restricted/boost/boost/python/class_fwd.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/arg_from_python.hpp (renamed from contrib/restricted/boost/boost/python/converter/arg_from_python.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/arg_to_python.hpp (renamed from contrib/restricted/boost/boost/python/converter/arg_to_python.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/arg_to_python_base.hpp (renamed from contrib/restricted/boost/boost/python/converter/arg_to_python_base.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/as_to_python_function.hpp (renamed from contrib/restricted/boost/boost/python/converter/as_to_python_function.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/builtin_converters.hpp (renamed from contrib/restricted/boost/boost/python/converter/builtin_converters.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/constructor_function.hpp (renamed from contrib/restricted/boost/boost/python/converter/constructor_function.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/context_result_converter.hpp (renamed from contrib/restricted/boost/boost/python/converter/context_result_converter.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/convertible_function.hpp (renamed from contrib/restricted/boost/boost/python/converter/convertible_function.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/from_python.hpp (renamed from contrib/restricted/boost/boost/python/converter/from_python.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/implicit.hpp (renamed from contrib/restricted/boost/boost/python/converter/implicit.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/obj_mgr_arg_from_python.hpp (renamed from contrib/restricted/boost/boost/python/converter/obj_mgr_arg_from_python.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/object_manager.hpp (renamed from contrib/restricted/boost/boost/python/converter/object_manager.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/pointer_type_id.hpp (renamed from contrib/restricted/boost/boost/python/converter/pointer_type_id.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/pyobject_traits.hpp (renamed from contrib/restricted/boost/boost/python/converter/pyobject_traits.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/pyobject_type.hpp (renamed from contrib/restricted/boost/boost/python/converter/pyobject_type.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/pytype_function.hpp (renamed from contrib/restricted/boost/boost/python/converter/pytype_function.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/pytype_object_mgr_traits.hpp (renamed from contrib/restricted/boost/boost/python/converter/pytype_object_mgr_traits.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/registered.hpp (renamed from contrib/restricted/boost/boost/python/converter/registered.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/registered_pointee.hpp (renamed from contrib/restricted/boost/boost/python/converter/registered_pointee.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/registrations.hpp (renamed from contrib/restricted/boost/boost/python/converter/registrations.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/registry.hpp (renamed from contrib/restricted/boost/boost/python/converter/registry.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/return_from_python.hpp (renamed from contrib/restricted/boost/boost/python/converter/return_from_python.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/rvalue_from_python_data.hpp (renamed from contrib/restricted/boost/boost/python/converter/rvalue_from_python_data.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/shared_ptr_deleter.hpp (renamed from contrib/restricted/boost/boost/python/converter/shared_ptr_deleter.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/shared_ptr_from_python.hpp (renamed from contrib/restricted/boost/boost/python/converter/shared_ptr_from_python.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/shared_ptr_to_python.hpp (renamed from contrib/restricted/boost/boost/python/converter/shared_ptr_to_python.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/converter/to_python_function_type.hpp (renamed from contrib/restricted/boost/boost/python/converter/to_python_function_type.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/copy_const_reference.hpp (renamed from contrib/restricted/boost/boost/python/copy_const_reference.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/copy_non_const_reference.hpp (renamed from contrib/restricted/boost/boost/python/copy_non_const_reference.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/data_members.hpp (renamed from contrib/restricted/boost/boost/python/data_members.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/def.hpp (renamed from contrib/restricted/boost/boost/python/def.hpp) | 4 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/def_visitor.hpp (renamed from contrib/restricted/boost/boost/python/def_visitor.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/default_call_policies.hpp (renamed from contrib/restricted/boost/boost/python/default_call_policies.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/borrowed_ptr.hpp (renamed from contrib/restricted/boost/boost/python/detail/borrowed_ptr.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/caller.hpp (renamed from contrib/restricted/boost/boost/python/detail/caller.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/config.hpp (renamed from contrib/restricted/boost/boost/python/detail/config.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/construct.hpp (renamed from contrib/restricted/boost/boost/python/detail/construct.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/convertible.hpp (renamed from contrib/restricted/boost/boost/python/detail/convertible.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/copy_ctor_mutates_rhs.hpp (renamed from contrib/restricted/boost/boost/python/detail/copy_ctor_mutates_rhs.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/cv_category.hpp (renamed from contrib/restricted/boost/boost/python/detail/cv_category.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/dealloc.hpp (renamed from contrib/restricted/boost/boost/python/detail/dealloc.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/decorated_type_id.hpp (renamed from contrib/restricted/boost/boost/python/detail/decorated_type_id.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/decref_guard.hpp (renamed from contrib/restricted/boost/boost/python/detail/decref_guard.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/def_helper.hpp (renamed from contrib/restricted/boost/boost/python/detail/def_helper.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/def_helper_fwd.hpp (renamed from contrib/restricted/boost/boost/python/detail/def_helper_fwd.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/defaults_def.hpp (renamed from contrib/restricted/boost/boost/python/detail/defaults_def.hpp) | 6 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/defaults_gen.hpp (renamed from contrib/restricted/boost/boost/python/detail/defaults_gen.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/dependent.hpp (renamed from contrib/restricted/boost/boost/python/detail/dependent.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/destroy.hpp (renamed from contrib/restricted/boost/boost/python/detail/destroy.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/exception_handler.hpp (renamed from contrib/restricted/boost/boost/python/detail/exception_handler.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/force_instantiate.hpp (renamed from contrib/restricted/boost/boost/python/detail/force_instantiate.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/indirect_traits.hpp (renamed from contrib/restricted/boost/boost/python/detail/indirect_traits.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/invoke.hpp (renamed from contrib/restricted/boost/boost/python/detail/invoke.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/is_auto_ptr.hpp (renamed from contrib/restricted/boost/boost/python/detail/is_auto_ptr.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/is_shared_ptr.hpp (renamed from contrib/restricted/boost/boost/python/detail/is_shared_ptr.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/is_wrapper.hpp (renamed from contrib/restricted/boost/boost/python/detail/is_wrapper.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/is_xxx.hpp (renamed from contrib/restricted/boost/boost/python/detail/is_xxx.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/make_keyword_range_fn.hpp (renamed from contrib/restricted/boost/boost/python/detail/make_keyword_range_fn.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/map_entry.hpp (renamed from contrib/restricted/boost/boost/python/detail/map_entry.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/mpl_lambda.hpp (renamed from contrib/restricted/boost/boost/python/detail/mpl_lambda.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/msvc_typeinfo.hpp (renamed from contrib/restricted/boost/boost/python/detail/msvc_typeinfo.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/none.hpp (renamed from contrib/restricted/boost/boost/python/detail/none.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/not_specified.hpp (renamed from contrib/restricted/boost/boost/python/detail/not_specified.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/nullary_function_adaptor.hpp (renamed from contrib/restricted/boost/boost/python/detail/nullary_function_adaptor.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/operator_id.hpp (renamed from contrib/restricted/boost/boost/python/detail/operator_id.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/overloads_fwd.hpp (renamed from contrib/restricted/boost/boost/python/detail/overloads_fwd.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/prefix.hpp (renamed from contrib/restricted/boost/boost/python/detail/prefix.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/preprocessor.hpp (renamed from contrib/restricted/boost/boost/python/detail/preprocessor.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/python22_fixed.h (renamed from contrib/restricted/boost/boost/python/detail/python22_fixed.h) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/python_type.hpp (renamed from contrib/restricted/boost/boost/python/detail/python_type.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/raw_pyobject.hpp (renamed from contrib/restricted/boost/boost/python/detail/raw_pyobject.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/referent_storage.hpp (renamed from contrib/restricted/boost/boost/python/detail/referent_storage.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/scope.hpp (renamed from contrib/restricted/boost/boost/python/detail/scope.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/sfinae.hpp (renamed from contrib/restricted/boost/boost/python/detail/sfinae.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/signature.hpp (renamed from contrib/restricted/boost/boost/python/detail/signature.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/string_literal.hpp (renamed from contrib/restricted/boost/boost/python/detail/string_literal.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/target.hpp (renamed from contrib/restricted/boost/boost/python/detail/target.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/translate_exception.hpp (renamed from contrib/restricted/boost/boost/python/detail/translate_exception.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/type_list.hpp (renamed from contrib/restricted/boost/boost/python/detail/type_list.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/type_list_impl.hpp (renamed from contrib/restricted/boost/boost/python/detail/type_list_impl.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/type_traits.hpp (renamed from contrib/restricted/boost/boost/python/detail/type_traits.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/unwind_type.hpp (renamed from contrib/restricted/boost/boost/python/detail/unwind_type.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/unwrap_type_id.hpp (renamed from contrib/restricted/boost/boost/python/detail/unwrap_type_id.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/unwrap_wrapper.hpp (renamed from contrib/restricted/boost/boost/python/detail/unwrap_wrapper.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/value_arg.hpp (renamed from contrib/restricted/boost/boost/python/detail/value_arg.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/value_is_shared_ptr.hpp (renamed from contrib/restricted/boost/boost/python/detail/value_is_shared_ptr.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/value_is_xxx.hpp (renamed from contrib/restricted/boost/boost/python/detail/value_is_xxx.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/void_ptr.hpp (renamed from contrib/restricted/boost/boost/python/detail/void_ptr.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/void_return.hpp (renamed from contrib/restricted/boost/boost/python/detail/void_return.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/wrap_python.hpp (renamed from contrib/restricted/boost/boost/python/detail/wrap_python.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/detail/wrapper_base.hpp (renamed from contrib/restricted/boost/boost/python/detail/wrapper_base.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/dict.hpp (renamed from contrib/restricted/boost/boost/python/dict.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/docstring_options.hpp (renamed from contrib/restricted/boost/boost/python/docstring_options.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/enum.hpp (renamed from contrib/restricted/boost/boost/python/enum.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/errors.hpp (renamed from contrib/restricted/boost/boost/python/errors.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/exception_translator.hpp (renamed from contrib/restricted/boost/boost/python/exception_translator.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/exec.hpp (renamed from contrib/restricted/boost/boost/python/exec.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/extract.hpp (renamed from contrib/restricted/boost/boost/python/extract.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/handle.hpp (renamed from contrib/restricted/boost/boost/python/handle.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/handle_fwd.hpp (renamed from contrib/restricted/boost/boost/python/handle_fwd.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/has_back_reference.hpp (renamed from contrib/restricted/boost/boost/python/has_back_reference.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/implicit.hpp (renamed from contrib/restricted/boost/boost/python/implicit.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/import.hpp (renamed from contrib/restricted/boost/boost/python/import.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/init.hpp (renamed from contrib/restricted/boost/boost/python/init.hpp) | 4 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/instance_holder.hpp (renamed from contrib/restricted/boost/boost/python/instance_holder.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/iterator.hpp (renamed from contrib/restricted/boost/boost/python/iterator.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/list.hpp (renamed from contrib/restricted/boost/boost/python/list.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/long.hpp (renamed from contrib/restricted/boost/boost/python/long.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/lvalue_from_pytype.hpp (renamed from contrib/restricted/boost/boost/python/lvalue_from_pytype.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/make_constructor.hpp (renamed from contrib/restricted/boost/boost/python/make_constructor.hpp) | 4 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/make_function.hpp (renamed from contrib/restricted/boost/boost/python/make_function.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/manage_new_object.hpp (renamed from contrib/restricted/boost/boost/python/manage_new_object.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/module.hpp (renamed from contrib/restricted/boost/boost/python/module.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/module_init.hpp (renamed from contrib/restricted/boost/boost/python/module_init.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object.hpp (renamed from contrib/restricted/boost/boost/python/object.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/add_to_namespace.hpp (renamed from contrib/restricted/boost/boost/python/object/add_to_namespace.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/class.hpp (renamed from contrib/restricted/boost/boost/python/object/class.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/class_detail.hpp (renamed from contrib/restricted/boost/boost/python/object/class_detail.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/class_metadata.hpp (renamed from contrib/restricted/boost/boost/python/object/class_metadata.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/class_wrapper.hpp (renamed from contrib/restricted/boost/boost/python/object/class_wrapper.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/enum_base.hpp (renamed from contrib/restricted/boost/boost/python/object/enum_base.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/find_instance.hpp (renamed from contrib/restricted/boost/boost/python/object/find_instance.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/forward.hpp (renamed from contrib/restricted/boost/boost/python/object/forward.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/function.hpp (renamed from contrib/restricted/boost/boost/python/object/function.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/function_doc_signature.hpp (renamed from contrib/restricted/boost/boost/python/object/function_doc_signature.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/function_handle.hpp (renamed from contrib/restricted/boost/boost/python/object/function_handle.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/function_object.hpp (renamed from contrib/restricted/boost/boost/python/object/function_object.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/inheritance.hpp (renamed from contrib/restricted/boost/boost/python/object/inheritance.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/inheritance_query.hpp (renamed from contrib/restricted/boost/boost/python/object/inheritance_query.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/instance.hpp (renamed from contrib/restricted/boost/boost/python/object/instance.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/iterator.hpp (renamed from contrib/restricted/boost/boost/python/object/iterator.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/iterator_core.hpp (renamed from contrib/restricted/boost/boost/python/object/iterator_core.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/life_support.hpp (renamed from contrib/restricted/boost/boost/python/object/life_support.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/make_holder.hpp (renamed from contrib/restricted/boost/boost/python/object/make_holder.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/make_instance.hpp (renamed from contrib/restricted/boost/boost/python/object/make_instance.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/make_ptr_instance.hpp (renamed from contrib/restricted/boost/boost/python/object/make_ptr_instance.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/pickle_support.hpp (renamed from contrib/restricted/boost/boost/python/object/pickle_support.hpp) | 4 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/pointer_holder.hpp (renamed from contrib/restricted/boost/boost/python/object/pointer_holder.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/py_function.hpp (renamed from contrib/restricted/boost/boost/python/object/py_function.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/stl_iterator_core.hpp (renamed from contrib/restricted/boost/boost/python/object/stl_iterator_core.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/value_holder.hpp (renamed from contrib/restricted/boost/boost/python/object/value_holder.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object/value_holder_fwd.hpp (renamed from contrib/restricted/boost/boost/python/object/value_holder_fwd.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object_attributes.hpp (renamed from contrib/restricted/boost/boost/python/object_attributes.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object_core.hpp (renamed from contrib/restricted/boost/boost/python/object_core.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object_fwd.hpp (renamed from contrib/restricted/boost/boost/python/object_fwd.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object_items.hpp (renamed from contrib/restricted/boost/boost/python/object_items.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object_operators.hpp (renamed from contrib/restricted/boost/boost/python/object_operators.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object_protocol.hpp (renamed from contrib/restricted/boost/boost/python/object_protocol.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object_protocol_core.hpp (renamed from contrib/restricted/boost/boost/python/object_protocol_core.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/object_slices.hpp (renamed from contrib/restricted/boost/boost/python/object_slices.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/opaque_pointer_converter.hpp (renamed from contrib/restricted/boost/boost/python/opaque_pointer_converter.hpp) | 10 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/operators.hpp (renamed from contrib/restricted/boost/boost/python/operators.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/other.hpp (renamed from contrib/restricted/boost/boost/python/other.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/overloads.hpp (renamed from contrib/restricted/boost/boost/python/overloads.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/override.hpp (renamed from contrib/restricted/boost/boost/python/override.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/pointee.hpp (renamed from contrib/restricted/boost/boost/python/pointee.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/proxy.hpp (renamed from contrib/restricted/boost/boost/python/proxy.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/ptr.hpp (renamed from contrib/restricted/boost/boost/python/ptr.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/pure_virtual.hpp (renamed from contrib/restricted/boost/boost/python/pure_virtual.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/raw_function.hpp (renamed from contrib/restricted/boost/boost/python/raw_function.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/refcount.hpp (renamed from contrib/restricted/boost/boost/python/refcount.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/reference_existing_object.hpp (renamed from contrib/restricted/boost/boost/python/reference_existing_object.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/register_ptr_to_python.hpp (renamed from contrib/restricted/boost/boost/python/register_ptr_to_python.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/return_arg.hpp (renamed from contrib/restricted/boost/boost/python/return_arg.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/return_by_value.hpp (renamed from contrib/restricted/boost/boost/python/return_by_value.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/return_internal_reference.hpp (renamed from contrib/restricted/boost/boost/python/return_internal_reference.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/return_opaque_pointer.hpp (renamed from contrib/restricted/boost/boost/python/return_opaque_pointer.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/return_value_policy.hpp (renamed from contrib/restricted/boost/boost/python/return_value_policy.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/scope.hpp (renamed from contrib/restricted/boost/boost/python/scope.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/self.hpp (renamed from contrib/restricted/boost/boost/python/self.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/signature.hpp (renamed from contrib/restricted/boost/boost/python/signature.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/slice.hpp (renamed from contrib/restricted/boost/boost/python/slice.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/slice_nil.hpp (renamed from contrib/restricted/boost/boost/python/slice_nil.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/ssize_t.hpp (renamed from contrib/restricted/boost/boost/python/ssize_t.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/stl_iterator.hpp (renamed from contrib/restricted/boost/boost/python/stl_iterator.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/str.hpp (renamed from contrib/restricted/boost/boost/python/str.hpp) | 4 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/tag.hpp (renamed from contrib/restricted/boost/boost/python/tag.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/to_python_converter.hpp (renamed from contrib/restricted/boost/boost/python/to_python_converter.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/to_python_indirect.hpp (renamed from contrib/restricted/boost/boost/python/to_python_indirect.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/to_python_value.hpp (renamed from contrib/restricted/boost/boost/python/to_python_value.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/tuple.hpp (renamed from contrib/restricted/boost/boost/python/tuple.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/type_id.hpp (renamed from contrib/restricted/boost/boost/python/type_id.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/with_custodian_and_ward.hpp (renamed from contrib/restricted/boost/boost/python/with_custodian_and_ward.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/include/boost/python/wrapper.hpp (renamed from contrib/restricted/boost/boost/python/wrapper.hpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/converter/arg_to_python_base.cpp (renamed from contrib/restricted/boost/libs/python/src/converter/arg_to_python_base.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/converter/builtin_converters.cpp (renamed from contrib/restricted/boost/libs/python/src/converter/builtin_converters.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/converter/from_python.cpp (renamed from contrib/restricted/boost/libs/python/src/converter/from_python.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/converter/registry.cpp (renamed from contrib/restricted/boost/libs/python/src/converter/registry.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/converter/type_id.cpp (renamed from contrib/restricted/boost/libs/python/src/converter/type_id.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/dict.cpp (renamed from contrib/restricted/boost/libs/python/src/dict.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/errors.cpp (renamed from contrib/restricted/boost/libs/python/src/errors.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/exec.cpp (renamed from contrib/restricted/boost/libs/python/src/exec.cpp) | 16 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/import.cpp (renamed from contrib/restricted/boost/libs/python/src/import.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/list.cpp (renamed from contrib/restricted/boost/libs/python/src/list.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/long.cpp (renamed from contrib/restricted/boost/libs/python/src/long.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/module.cpp (renamed from contrib/restricted/boost/libs/python/src/module.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/object/class.cpp (renamed from contrib/restricted/boost/libs/python/src/object/class.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/object/enum.cpp (renamed from contrib/restricted/boost/libs/python/src/object/enum.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/object/function.cpp (renamed from contrib/restricted/boost/libs/python/src/object/function.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/object/function_doc_signature.cpp (renamed from contrib/restricted/boost/libs/python/src/object/function_doc_signature.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/object/inheritance.cpp (renamed from contrib/restricted/boost/libs/python/src/object/inheritance.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/object/iterator.cpp (renamed from contrib/restricted/boost/libs/python/src/object/iterator.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/object/life_support.cpp (renamed from contrib/restricted/boost/libs/python/src/object/life_support.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/object/pickle_support.cpp (renamed from contrib/restricted/boost/libs/python/src/object/pickle_support.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/object/stl_iterator.cpp (renamed from contrib/restricted/boost/libs/python/src/object/stl_iterator.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/object_operators.cpp (renamed from contrib/restricted/boost/libs/python/src/object_operators.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/object_protocol.cpp (renamed from contrib/restricted/boost/libs/python/src/object_protocol.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/slice.cpp (renamed from contrib/restricted/boost/libs/python/src/slice.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/str.cpp (renamed from contrib/restricted/boost/libs/python/src/str.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/tuple.cpp (renamed from contrib/restricted/boost/libs/python/src/tuple.cpp) | 0 | ||||
-rw-r--r-- | contrib/restricted/boost/python/src/wrapper.cpp (renamed from contrib/restricted/boost/libs/python/src/wrapper.cpp) | 0 |
253 files changed, 468 insertions, 3115 deletions
diff --git a/contrib/restricted/boost/arcadia_test/python/mod/module.cpp b/contrib/restricted/boost/arcadia_test/python/mod/module.cpp new file mode 100644 index 0000000000..6053f30c81 --- /dev/null +++ b/contrib/restricted/boost/arcadia_test/python/mod/module.cpp @@ -0,0 +1,11 @@ +#include <boost/python.hpp> + +using namespace boost::python; + +static const char* hello() { + return "hello world!"; +} + +BOOST_PYTHON_MODULE(arcadia_boost_python_test) { + def("hello", &hello); +} diff --git a/contrib/restricted/boost/arcadia_test/python/py2/test_hello.py b/contrib/restricted/boost/arcadia_test/python/py2/test_hello.py new file mode 100644 index 0000000000..67d1d8f06a --- /dev/null +++ b/contrib/restricted/boost/arcadia_test/python/py2/test_hello.py @@ -0,0 +1,5 @@ +import arcadia_boost_python_test as M + + +def test_hello(): + assert M.hello() == "hello world!" diff --git a/contrib/restricted/boost/arcadia_test/python/py3/test_hello.py b/contrib/restricted/boost/arcadia_test/python/py3/test_hello.py new file mode 100644 index 0000000000..67d1d8f06a --- /dev/null +++ b/contrib/restricted/boost/arcadia_test/python/py3/test_hello.py @@ -0,0 +1,5 @@ +import arcadia_boost_python_test as M + + +def test_hello(): + assert M.hello() == "hello world!" diff --git a/contrib/restricted/boost/bind/include/boost/bind/protect.hpp b/contrib/restricted/boost/bind/include/boost/bind/protect.hpp new file mode 100644 index 0000000000..ef26fe989f --- /dev/null +++ b/contrib/restricted/boost/bind/include/boost/bind/protect.hpp @@ -0,0 +1,348 @@ +#ifndef BOOST_BIND_PROTECT_HPP_INCLUDED +#define BOOST_BIND_PROTECT_HPP_INCLUDED + +// +// protect.hpp +// +// Copyright 2002, 2020 Peter Dimov +// Copyright 2009 Steven Watanabe +// +// Distributed under the Boost Software License, Version 1.0. (See +// accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) +// + +#include <boost/config.hpp> +#include <boost/config/workaround.hpp> +#include <utility> + +namespace boost +{ + +namespace _bi +{ + +#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) && !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) && !defined(BOOST_NO_CXX11_DECLTYPE) && !(defined(BOOST_GCC) && BOOST_GCC < 40600) + +template<class T> struct protect_make_void +{ + typedef void type; +}; + +template<class F, class E = void> struct protect_result_type +{ +}; + +template<class F> struct protect_result_type< F, typename protect_make_void<typename F::result_type>::type > +{ + typedef typename F::result_type result_type; +}; + +template<class F> class protected_bind_t: public protect_result_type<F> +{ +private: + + F f_; + +public: + + explicit protected_bind_t( F f ): f_( f ) + { + } + + template<class... A> auto operator()( A&&... a ) -> decltype( f_( std::forward<A>(a)... ) ) + { + return f_( std::forward<A>(a)... ); + } + + template<class... A> auto operator()( A&&... a ) const -> decltype( f_( std::forward<A>(a)... ) ) + { + return f_( std::forward<A>(a)... ); + } +}; + +#else + +template<class F> class protected_bind_t +{ +private: + + F f_; + +public: + + typedef typename F::result_type result_type; + + explicit protected_bind_t(F f): f_(f) + { + } + + result_type operator()() + { + return f_(); + } + + result_type operator()() const + { + return f_(); + } + + template<class A1> result_type operator()(A1 & a1) + { + return f_(a1); + } + + template<class A1> result_type operator()(A1 & a1) const + { + return f_(a1); + } + + +#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ + && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) + + template<class A1> result_type operator()(const A1 & a1) + { + return f_(a1); + } + + template<class A1> result_type operator()(const A1 & a1) const + { + return f_(a1); + } + +#endif + + template<class A1, class A2> result_type operator()(A1 & a1, A2 & a2) + { + return f_(a1, a2); + } + + template<class A1, class A2> result_type operator()(A1 & a1, A2 & a2) const + { + return f_(a1, a2); + } + +#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ + && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) + + template<class A1, class A2> result_type operator()(A1 const & a1, A2 & a2) + { + return f_(a1, a2); + } + + template<class A1, class A2> result_type operator()(A1 const & a1, A2 & a2) const + { + return f_(a1, a2); + } + + template<class A1, class A2> result_type operator()(A1 & a1, A2 const & a2) + { + return f_(a1, a2); + } + + template<class A1, class A2> result_type operator()(A1 & a1, A2 const & a2) const + { + return f_(a1, a2); + } + + template<class A1, class A2> result_type operator()(A1 const & a1, A2 const & a2) + { + return f_(a1, a2); + } + + template<class A1, class A2> result_type operator()(A1 const & a1, A2 const & a2) const + { + return f_(a1, a2); + } + +#endif + + template<class A1, class A2, class A3> result_type operator()(A1 & a1, A2 & a2, A3 & a3) + { + return f_(a1, a2, a3); + } + + template<class A1, class A2, class A3> result_type operator()(A1 & a1, A2 & a2, A3 & a3) const + { + return f_(a1, a2, a3); + } + +#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ + && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) + + template<class A1, class A2, class A3> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3) + { + return f_(a1, a2, a3); + } + + template<class A1, class A2, class A3> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3) const + { + return f_(a1, a2, a3); + } + +#endif + + template<class A1, class A2, class A3, class A4> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4) + { + return f_(a1, a2, a3, a4); + } + + template<class A1, class A2, class A3, class A4> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4) const + { + return f_(a1, a2, a3, a4); + } + +#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ + && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) + + template<class A1, class A2, class A3, class A4> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4) + { + return f_(a1, a2, a3, a4); + } + + template<class A1, class A2, class A3, class A4> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4) const + { + return f_(a1, a2, a3, a4); + } + +#endif + + template<class A1, class A2, class A3, class A4, class A5> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5) + { + return f_(a1, a2, a3, a4, a5); + } + + template<class A1, class A2, class A3, class A4, class A5> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5) const + { + return f_(a1, a2, a3, a4, a5); + } + +#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ + && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) + + template<class A1, class A2, class A3, class A4, class A5> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5) + { + return f_(a1, a2, a3, a4, a5); + } + + template<class A1, class A2, class A3, class A4, class A5> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5) const + { + return f_(a1, a2, a3, a4, a5); + } + +#endif + + template<class A1, class A2, class A3, class A4, class A5, class A6> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6) + { + return f_(a1, a2, a3, a4, a5, a6); + } + + template<class A1, class A2, class A3, class A4, class A5, class A6> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6) const + { + return f_(a1, a2, a3, a4, a5, a6); + } + +#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ + && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) + + template<class A1, class A2, class A3, class A4, class A5, class A6> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5, A6 const & a6) + { + return f_(a1, a2, a3, a4, a5, a6); + } + + template<class A1, class A2, class A3, class A4, class A5, class A6> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5, A6 const & a6) const + { + return f_(a1, a2, a3, a4, a5, a6); + } + +#endif + + template<class A1, class A2, class A3, class A4, class A5, class A6, class A7> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6, A7 & a7) + { + return f_(a1, a2, a3, a4, a5, a6, a7); + } + + template<class A1, class A2, class A3, class A4, class A5, class A6, class A7> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6, A7 & a7) const + { + return f_(a1, a2, a3, a4, a5, a6, a7); + } + +#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ + && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) + + template<class A1, class A2, class A3, class A4, class A5, class A6, class A7> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5, A6 const & a6, A7 const & a7) + { + return f_(a1, a2, a3, a4, a5, a6, a7); + } + + template<class A1, class A2, class A3, class A4, class A5, class A6, class A7> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5, A6 const & a6, A7 const & a7) const + { + return f_(a1, a2, a3, a4, a5, a6, a7); + } + +#endif + + template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6, A7 & a7, A8 & a8) + { + return f_(a1, a2, a3, a4, a5, a6, a7, a8); + } + + template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6, A7 & a7, A8 & a8) const + { + return f_(a1, a2, a3, a4, a5, a6, a7, a8); + } + +#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ + && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) + + template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5, A6 const & a6, A7 const & a7, A8 const & a8) + { + return f_(a1, a2, a3, a4, a5, a6, a7, a8); + } + + template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5, A6 const & a6, A7 const & a7, A8 const & a8) const + { + return f_(a1, a2, a3, a4, a5, a6, a7, a8); + } + +#endif + + template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8, class A9> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6, A7 & a7, A8 & a8, A9 & a9) + { + return f_(a1, a2, a3, a4, a5, a6, a7, a8, a9); + } + + template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8, class A9> result_type operator()(A1 & a1, A2 & a2, A3 & a3, A4 & a4, A5 & a5, A6 & a6, A7 & a7, A8 & a8, A9 & a9) const + { + return f_(a1, a2, a3, a4, a5, a6, a7, a8, a9); + } + +#if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) \ + && !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) + + template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8, class A9> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5, A6 const & a6, A7 const & a7, A8 const & a8, A9 const & a9) + { + return f_(a1, a2, a3, a4, a5, a6, a7, a8, a9); + } + + template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8, class A9> result_type operator()(A1 const & a1, A2 const & a2, A3 const & a3, A4 const & a4, A5 const & a5, A6 const & a6, A7 const & a7, A8 const & a8, A9 const & a9) const + { + return f_(a1, a2, a3, a4, a5, a6, a7, a8, a9); + } + +#endif +}; + +#endif + +} // namespace _bi + +template<class F> _bi::protected_bind_t<F> protect(F f) +{ + return _bi::protected_bind_t<F>(f); +} + +} // namespace boost + +#endif // #ifndef BOOST_BIND_PROTECT_HPP_INCLUDED diff --git a/contrib/restricted/boost/boost/python/detail/aix_init_module.hpp b/contrib/restricted/boost/boost/python/detail/aix_init_module.hpp deleted file mode 100644 index 9214dbf09b..0000000000 --- a/contrib/restricted/boost/boost/python/detail/aix_init_module.hpp +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright David Abrahams 2002. -// Distributed under the Boost Software License, Version 1.0. (See -// accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) -#ifndef AIX_INIT_MODULE_DWA2002529_HPP -# define AIX_INIT_MODULE_DWA2002529_HPP -# ifdef _AIX -# include <boost/python/detail/prefix.hpp> -# include <cstdio> -# ifdef __KCC -# include <iostream> // this works around a problem in KCC 4.0f -# endif - -namespace boost { namespace python { namespace detail { - -extern "C" -{ - typedef PyObject* (*so_load_function)(char*,char*,FILE*); -} - -void aix_init_module(so_load_function, char const* name, void (*init_module)()); - -}}} // namespace boost::python::detail -# endif - -#endif // AIX_INIT_MODULE_DWA2002529_HPP diff --git a/contrib/restricted/boost/boost/python/detail/api_placeholder.hpp b/contrib/restricted/boost/boost/python/detail/api_placeholder.hpp deleted file mode 100644 index 5975a13bda..0000000000 --- a/contrib/restricted/boost/boost/python/detail/api_placeholder.hpp +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright David Abrahams 2002. -// Distributed under the Boost Software License, Version 1.0. (See -// accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -// DEPRECATED HEADER (2006 Jan 12) -// Provided only for backward compatibility. -// The boost::python::len() function is now defined in object.hpp. - -#ifndef BOOST_PYTHON_API_PLACE_HOLDER_HPP -#define BOOST_PYTHON_API_PLACE_HOLDER_HPP - -#include <boost/python/object.hpp> - -#endif // BOOST_PYTHON_API_PLACE_HOLDER_HPP diff --git a/contrib/restricted/boost/boost/python/detail/enable_if.hpp b/contrib/restricted/boost/boost/python/detail/enable_if.hpp deleted file mode 100644 index 7a37be121a..0000000000 --- a/contrib/restricted/boost/boost/python/detail/enable_if.hpp +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright David Abrahams 2004. Distributed under the Boost -// Software License, Version 1.0. (See accompanying -// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -#ifndef ENABLE_IF_DWA2004722_HPP -# define ENABLE_IF_DWA2004722_HPP - -# include <boost/python/detail/sfinae.hpp> -# include <boost/detail/workaround.hpp> - -#if !defined(BOOST_NO_SFINAE) -# include <boost/utility/enable_if.hpp> - -namespace boost { namespace python { namespace detail { - -template <class C, class T = int> -struct enable_if_arg - : enable_if<C,T> -{}; - -template <class C, class T = int> -struct disable_if_arg - : disable_if<C,T> -{}; - -template <class C, class T = void> -struct enable_if_ret - : enable_if<C,T> -{}; - -template <class C, class T = void> -struct disable_if_ret - : disable_if<C,T> -{}; - -}}} // namespace boost::python::detail - -# endif - -#endif // ENABLE_IF_DWA2004722_HPP diff --git a/contrib/restricted/boost/boost/python/detail/if_else.hpp b/contrib/restricted/boost/boost/python/detail/if_else.hpp deleted file mode 100644 index 3f505c5edb..0000000000 --- a/contrib/restricted/boost/boost/python/detail/if_else.hpp +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright David Abrahams 2002. -// Distributed under the Boost Software License, Version 1.0. (See -// accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) -#ifndef IF_ELSE_DWA2002322_HPP -# define IF_ELSE_DWA2002322_HPP -# include <boost/config.hpp> - -namespace boost { namespace python { namespace detail { - -template <class T> struct elif_selected; - -template <class T> -struct if_selected -{ - template <bool b> - struct elif : elif_selected<T> - { - }; - - template <class U> - struct else_ - { - typedef T type; - }; -}; - -template <class T> -struct elif_selected -{ -# if !(defined(__MWERKS__) && __MWERKS__ <= 0x2407) - template <class U> class then; -# else - template <class U> - struct then : if_selected<T> - { - }; -# endif -}; - -# if !(defined(__MWERKS__) && __MWERKS__ <= 0x2407) -template <class T> -template <class U> -class elif_selected<T>::then : public if_selected<T> -{ -}; -# endif - -template <bool b> struct if_ -{ - template <class T> - struct then : if_selected<T> - { - }; -}; - -struct if_unselected -{ - template <bool b> struct elif : if_<b> - { - }; - - template <class U> - struct else_ - { - typedef U type; - }; -}; - -template <> -struct if_<false> -{ - template <class T> - struct then : if_unselected - { - }; -}; - -}}} // namespace boost::python::detail - -#endif // IF_ELSE_DWA2002322_HPP diff --git a/contrib/restricted/boost/boost/python/detail/make_tuple.hpp b/contrib/restricted/boost/boost/python/detail/make_tuple.hpp deleted file mode 100644 index 57b285be1c..0000000000 --- a/contrib/restricted/boost/boost/python/detail/make_tuple.hpp +++ /dev/null @@ -1,32 +0,0 @@ -# ifndef BOOST_PYTHON_SYNOPSIS -# // Copyright David Abrahams 2002. -# // Distributed under the Boost Software License, Version 1.0. (See -# // accompanying file LICENSE_1_0.txt or copy at -# // http://www.boost.org/LICENSE_1_0.txt) - -# if !defined(BOOST_PP_IS_ITERATING) -# error Boost.Python - do not include this file! -# endif - -# define N BOOST_PP_ITERATION() - -# define BOOST_PYTHON_MAKE_TUPLE_ARG(z, N, ignored) \ - PyTuple_SET_ITEM( \ - result.ptr() \ - , N \ - , python::incref(python::object(a##N).ptr()) \ - ); - - template <BOOST_PP_ENUM_PARAMS_Z(1, N, class A)> - tuple - make_tuple(BOOST_PP_ENUM_BINARY_PARAMS_Z(1, N, A, const& a)) - { - tuple result((detail::new_reference)::PyTuple_New(N)); - BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_MAKE_TUPLE_ARG, _) - return result; - } - -# undef BOOST_PYTHON_MAKE_TUPLE_ARG - -# undef N -# endif // BOOST_PYTHON_SYNOPSIS diff --git a/contrib/restricted/boost/boost/python/detail/pointee.hpp b/contrib/restricted/boost/boost/python/detail/pointee.hpp deleted file mode 100644 index e786b37626..0000000000 --- a/contrib/restricted/boost/boost/python/detail/pointee.hpp +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright David Abrahams 2002. -// Distributed under the Boost Software License, Version 1.0. (See -// accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) -#ifndef POINTEE_DWA2002323_HPP -# define POINTEE_DWA2002323_HPP - -# include <boost/python/detail/type_traits.hpp> - -namespace boost { namespace python { namespace detail { - -template <bool is_ptr = true> -struct pointee_impl -{ - template <class T> struct apply : remove_pointer<T> {}; -}; - -template <> -struct pointee_impl<false> -{ - template <class T> struct apply - { - typedef typename T::element_type type; - }; -}; - -template <class T> -struct pointee - : pointee_impl<is_pointer<T>::value>::template apply<T> -{ -}; - -}}} // namespace boost::python::detail - -#endif // POINTEE_DWA2002323_HPP diff --git a/contrib/restricted/boost/boost/python/detail/result.hpp b/contrib/restricted/boost/boost/python/detail/result.hpp deleted file mode 100644 index 2390693a88..0000000000 --- a/contrib/restricted/boost/boost/python/detail/result.hpp +++ /dev/null @@ -1,133 +0,0 @@ -#if !defined(BOOST_PP_IS_ITERATING) - -// Copyright David Abrahams 2002. -// Distributed under the Boost Software License, Version 1.0. (See -// accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -# ifndef RESULT_DWA2002521_HPP -# define RESULT_DWA2002521_HPP - -# include <boost/type.hpp> - -# include <boost/python/detail/preprocessor.hpp> -# include <boost/python/detail/type_traits.hpp> - -# include <boost/mpl/if.hpp> - -# include <boost/preprocessor/comma_if.hpp> -# include <boost/preprocessor/iterate.hpp> -# include <boost/preprocessor/debug/line.hpp> -# include <boost/preprocessor/enum_params.hpp> -# include <boost/preprocessor/repetition/enum_trailing_params.hpp> - -namespace boost { namespace python { namespace detail { - -// Defines a family of overloaded function which, given x, a function -// pointer, member [function] pointer, or an AdaptableFunction object, -// returns a pointer to type<R>*, where R is the result type of -// invoking the result of bind(x). -// -// In order to work around bugs in deficient compilers, if x might be -// an AdaptableFunction object, you must pass OL as a second argument -// to get this to work portably. - -# define BOOST_PP_ITERATION_PARAMS_1 \ - (4, (0, BOOST_PYTHON_MAX_ARITY, <boost/python/detail/result.hpp>, BOOST_PYTHON_FUNCTION_POINTER)) -# include BOOST_PP_ITERATE() - -# define BOOST_PP_ITERATION_PARAMS_1 \ - (4, (0, BOOST_PYTHON_CV_COUNT - 1, <boost/python/detail/result.hpp>, BOOST_PYTHON_POINTER_TO_MEMBER)) -# include BOOST_PP_ITERATE() - -template <class R, class T> -boost::type<R>* result(R (T::*), int = 0) { return 0; } - -# if (defined(__MWERKS__) && __MWERKS__ < 0x3000) -// This code actually works on all implementations, but why use it when we don't have to? -template <class T> -struct get_result_type -{ - typedef boost::type<typename T::result_type> type; -}; - -struct void_type -{ - typedef void type; -}; - -template <class T> -struct result_result -{ - typedef typename mpl::if_c< - is_class<T>::value - , get_result_type<T> - , void_type - >::type t1; - - typedef typename t1::type* type; -}; - -template <class X> -typename result_result<X>::type -result(X const&, short) { return 0; } - -# else // Simpler code for more-capable compilers -template <class X> -boost::type<typename X::result_type>* -result(X const&, short = 0) { return 0; } - -# endif - -}}} // namespace boost::python::detail - -# endif // RESULT_DWA2002521_HPP - -/* --------------- function pointers --------------- */ -// For gcc 4.4 compatability, we must include the -// BOOST_PP_ITERATION_DEPTH test inside an #else clause. -#else // BOOST_PP_IS_ITERATING -#if BOOST_PP_ITERATION_DEPTH() == 1 && BOOST_PP_ITERATION_FLAGS() == BOOST_PYTHON_FUNCTION_POINTER -# if !(BOOST_WORKAROUND(__MWERKS__, > 0x3100) \ - && BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3201))) -# line BOOST_PP_LINE(__LINE__, result.hpp(function pointers)) -# endif - -# define N BOOST_PP_ITERATION() - -template <class R BOOST_PP_ENUM_TRAILING_PARAMS_Z(1, N, class A)> -boost::type<R>* result(R (*)(BOOST_PP_ENUM_PARAMS_Z(1, N, A)), int = 0) -{ - return 0; -} - -# undef N - -/* --------------- pointers-to-members --------------- */ -#elif BOOST_PP_ITERATION_DEPTH() == 1 && BOOST_PP_ITERATION_FLAGS() == BOOST_PYTHON_POINTER_TO_MEMBER -// Outer over cv-qualifiers - -# define BOOST_PP_ITERATION_PARAMS_2 (3, (0, BOOST_PYTHON_MAX_ARITY, <boost/python/detail/result.hpp>)) -# include BOOST_PP_ITERATE() - -#elif BOOST_PP_ITERATION_DEPTH() == 2 -# if !(BOOST_WORKAROUND(__MWERKS__, > 0x3100) \ - && BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3201))) -# line BOOST_PP_LINE(__LINE__, result.hpp(pointers-to-members)) -# endif -// Inner over arities - -# define N BOOST_PP_ITERATION() -# define Q BOOST_PYTHON_CV_QUALIFIER(BOOST_PP_RELATIVE_ITERATION(1)) - -template <class R, class T BOOST_PP_ENUM_TRAILING_PARAMS_Z(1, N, class A)> -boost::type<R>* result(R (T::*)(BOOST_PP_ENUM_PARAMS_Z(1, N, A)) Q, int = 0) -{ - return 0; -} - -# undef N -# undef Q - -#endif // BOOST_PP_ITERATION_DEPTH() -#endif diff --git a/contrib/restricted/boost/boost/python/numpy.hpp b/contrib/restricted/boost/boost/python/numpy.hpp deleted file mode 100644 index 18a6389d51..0000000000 --- a/contrib/restricted/boost/boost/python/numpy.hpp +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright Jim Bosch 2010-2012. -// Copyright Stefan Seefeld 2016. -// Distributed under the Boost Software License, Version 1.0. -// (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef boost_python_numpy_hpp_ -#define boost_python_numpy_hpp_ - -#include <boost/python/numpy/dtype.hpp> -#include <boost/python/numpy/ndarray.hpp> -#include <boost/python/numpy/scalars.hpp> -#include <boost/python/numpy/matrix.hpp> -#include <boost/python/numpy/ufunc.hpp> -#include <boost/python/numpy/invoke_matching.hpp> -#include <boost/python/numpy/config.hpp> - -namespace boost { namespace python { namespace numpy { - -/** - * @brief Initialize the Numpy C-API - * - * This must be called before using anything in boost.numpy; - * It should probably be the first line inside BOOST_PYTHON_MODULE. - * - * @internal This just calls the Numpy C-API functions "import_array()" - * and "import_ufunc()", and then calls - * dtype::register_scalar_converters(). - */ -BOOST_NUMPY_DECL void initialize(bool register_scalar_converters=true); - -}}} // namespace boost::python::numpy - -#endif diff --git a/contrib/restricted/boost/boost/python/numpy/config.hpp b/contrib/restricted/boost/boost/python/numpy/config.hpp deleted file mode 100644 index e6484bc51f..0000000000 --- a/contrib/restricted/boost/boost/python/numpy/config.hpp +++ /dev/null @@ -1,80 +0,0 @@ -// (C) Copyright Samuli-Petrus Korhonen 2017. -// Distributed under the Boost Software License, Version 1.0. (See -// accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) -// -// The author gratefully acknowleges the support of NMR Solutions, Inc., in -// producing this work. - -// Revision History: -// 15 Feb 17 Initial version - -#ifndef CONFIG_NUMPY20170215_H_ -# define CONFIG_NUMPY20170215_H_ - -# include <boost/config.hpp> - -/***************************************************************************** - * - * Set up dll import/export options: - * - ****************************************************************************/ - -// backwards compatibility: -#ifdef BOOST_NUMPY_STATIC_LIB -# define BOOST_NUMPY_STATIC_LINK -# elif !defined(BOOST_NUMPY_DYNAMIC_LIB) -# define BOOST_NUMPY_DYNAMIC_LIB -#endif - -#if defined(BOOST_NUMPY_DYNAMIC_LIB) -# if defined(BOOST_SYMBOL_EXPORT) -# if defined(BOOST_NUMPY_SOURCE) -# define BOOST_NUMPY_DECL BOOST_SYMBOL_EXPORT -# define BOOST_NUMPY_DECL_FORWARD BOOST_SYMBOL_FORWARD_EXPORT -# define BOOST_NUMPY_DECL_EXCEPTION BOOST_EXCEPTION_EXPORT -# define BOOST_NUMPY_BUILD_DLL -# else -# define BOOST_NUMPY_DECL BOOST_SYMBOL_IMPORT -# define BOOST_NUMPY_DECL_FORWARD BOOST_SYMBOL_FORWARD_IMPORT -# define BOOST_NUMPY_DECL_EXCEPTION BOOST_EXCEPTION_IMPORT -# endif -# endif - -#endif - -#ifndef BOOST_NUMPY_DECL -# define BOOST_NUMPY_DECL -#endif - -#ifndef BOOST_NUMPY_DECL_FORWARD -# define BOOST_NUMPY_DECL_FORWARD -#endif - -#ifndef BOOST_NUMPY_DECL_EXCEPTION -# define BOOST_NUMPY_DECL_EXCEPTION -#endif - -// enable automatic library variant selection ------------------------------// - -#if !defined(BOOST_NUMPY_SOURCE) && !defined(BOOST_ALL_NO_LIB) && !defined(BOOST_NUMPY_NO_LIB) -// -// Set the name of our library, this will get undef'ed by auto_link.hpp -// once it's done with it: -// -#define BOOST_LIB_NAME boost_numpy##PY_MAJOR_VERSION##PY_MINOR_VERSION -// -// If we're importing code from a dll, then tell auto_link.hpp about it: -// -#ifdef BOOST_NUMPY_DYNAMIC_LIB -# define BOOST_DYN_LINK -#endif -// -// And include the header that does the work: -// -#include <boost/config/auto_link.hpp> -#endif // auto-linking disabled - -#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION - -#endif // CONFIG_NUMPY20170215_H_ diff --git a/contrib/restricted/boost/boost/python/numpy/dtype.hpp b/contrib/restricted/boost/boost/python/numpy/dtype.hpp deleted file mode 100644 index 4673745e57..0000000000 --- a/contrib/restricted/boost/boost/python/numpy/dtype.hpp +++ /dev/null @@ -1,117 +0,0 @@ -// Copyright Jim Bosch 2010-2012. -// Copyright Stefan Seefeld 2016. -// Distributed under the Boost Software License, Version 1.0. -// (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef boost_python_numpy_dtype_hpp_ -#define boost_python_numpy_dtype_hpp_ - -/** - * @file boost/python/numpy/dtype.hpp - * @brief Object manager for Python's numpy.dtype class. - */ - -#include <boost/python.hpp> -#include <boost/python/numpy/config.hpp> -#include <boost/python/numpy/numpy_object_mgr_traits.hpp> -#include <boost/mpl/for_each.hpp> -#include <boost/python/detail/type_traits.hpp> - -namespace boost { namespace python { namespace numpy { - -/** - * @brief A boost.python "object manager" (subclass of object) for numpy.dtype. - * - * @todo This could have a lot more interesting accessors. - */ -class BOOST_NUMPY_DECL dtype : public object { - static python::detail::new_reference convert(object::object_cref arg, bool align); -public: - - /// @brief Convert an arbitrary Python object to a data-type descriptor object. - template <typename T> - explicit dtype(T arg, bool align=false) : object(convert(arg, align)) {} - - /** - * @brief Get the built-in numpy dtype associated with the given scalar template type. - * - * This is perhaps the most useful part of the numpy API: it returns the dtype object - * corresponding to a built-in C++ type. This should work for any integer or floating point - * type supported by numpy, and will also work for std::complex if - * sizeof(std::complex<T>) == 2*sizeof(T). - * - * It can also be useful for users to add explicit specializations for POD structs - * that return field-based dtypes. - */ - template <typename T> static dtype get_builtin(); - - /// @brief Return the size of the data type in bytes. - int get_itemsize() const; - - /** - * @brief Compare two dtypes for equivalence. - * - * This is more permissive than equality tests. For instance, if long and int are the same - * size, the dtypes corresponding to each will be equivalent, but not equal. - */ - friend BOOST_NUMPY_DECL bool equivalent(dtype const & a, dtype const & b); - - /** - * @brief Register from-Python converters for NumPy's built-in array scalar types. - * - * This is usually called automatically by initialize(), and shouldn't be called twice - * (doing so just adds unused converters to the Boost.Python registry). - */ - static void register_scalar_converters(); - - BOOST_PYTHON_FORWARD_OBJECT_CONSTRUCTORS(dtype, object); - -}; - -BOOST_NUMPY_DECL bool equivalent(dtype const & a, dtype const & b); - -namespace detail -{ - -template <int bits, bool isUnsigned> dtype get_int_dtype(); - -template <int bits> dtype get_float_dtype(); - -template <int bits> dtype get_complex_dtype(); - -template <typename T, bool isInt=boost::is_integral<T>::value> -struct builtin_dtype; - -template <typename T> -struct builtin_dtype<T,true> { - static dtype get() { return get_int_dtype< 8*sizeof(T), boost::is_unsigned<T>::value >(); } -}; - -template <> -struct BOOST_NUMPY_DECL builtin_dtype<bool,true> { - static dtype get(); -}; - -template <typename T> -struct builtin_dtype<T,false> { - static dtype get() { return get_float_dtype< 8*sizeof(T) >(); } -}; - -template <typename T> -struct builtin_dtype< std::complex<T>, false > { - static dtype get() { return get_complex_dtype< 16*sizeof(T) >(); } -}; - -} // namespace detail - -template <typename T> -inline dtype dtype::get_builtin() { return detail::builtin_dtype<T>::get(); } - -} // namespace boost::python::numpy - -namespace converter { -NUMPY_OBJECT_MANAGER_TRAITS(numpy::dtype); -}}} // namespace boost::python::converter - -#endif diff --git a/contrib/restricted/boost/boost/python/numpy/internal.hpp b/contrib/restricted/boost/boost/python/numpy/internal.hpp deleted file mode 100644 index c24718f0ae..0000000000 --- a/contrib/restricted/boost/boost/python/numpy/internal.hpp +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright Jim Bosch 2010-2012. -// Copyright Stefan Seefeld 2016. -// Distributed under the Boost Software License, Version 1.0. -// (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef boost_python_numpy_internal_hpp_ -#define boost_python_numpy_internal_hpp_ - -/** - * @file boost/python/numpy/internal.hpp - * @brief Internal header file to include the Numpy C-API headers. - * - * This should only be included by source files in the boost.numpy library itself. - */ - -#include <boost/python.hpp> -#include <boost/python/numpy/config.hpp> -#ifdef BOOST_PYTHON_NUMPY_INTERNAL -#define NO_IMPORT_ARRAY -#define NO_IMPORT_UFUNC -#else -#ifndef BOOST_PYTHON_NUMPY_INTERNAL_MAIN -ERROR_internal_hpp_is_for_internal_use_only -#endif -#endif -#define PY_ARRAY_UNIQUE_SYMBOL BOOST_NUMPY_ARRAY_API -#define PY_UFUNC_UNIQUE_SYMBOL BOOST_UFUNC_ARRAY_API -#include <numpy/arrayobject.h> -#include <numpy/ufuncobject.h> -#include <boost/python/numpy.hpp> - -#define NUMPY_OBJECT_MANAGER_TRAITS_IMPL(pytype,manager) \ - PyTypeObject const * object_manager_traits<manager>::get_pytype() { return &pytype; } - -#endif diff --git a/contrib/restricted/boost/boost/python/numpy/invoke_matching.hpp b/contrib/restricted/boost/boost/python/numpy/invoke_matching.hpp deleted file mode 100644 index 095ca3a8db..0000000000 --- a/contrib/restricted/boost/boost/python/numpy/invoke_matching.hpp +++ /dev/null @@ -1,186 +0,0 @@ -// Copyright Jim Bosch 2010-2012. -// Copyright Stefan Seefeld 2016. -// Distributed under the Boost Software License, Version 1.0. -// (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef boost_python_numpy_invoke_matching_hpp_ -#define boost_python_numpy_invoke_matching_hpp_ - -/** - * @brief Template invocation based on dtype matching. - */ - -#include <boost/python/numpy/dtype.hpp> -#include <boost/python/numpy/ndarray.hpp> -#include <boost/mpl/integral_c.hpp> - -namespace boost { namespace python { namespace numpy { -namespace detail -{ - -struct BOOST_NUMPY_DECL add_pointer_meta -{ - template <typename T> - struct apply - { - typedef typename boost::add_pointer<T>::type type; - }; - -}; - -struct BOOST_NUMPY_DECL dtype_template_match_found {}; -struct BOOST_NUMPY_DECL nd_template_match_found {}; - -template <typename Function> -struct dtype_template_invoker -{ - - template <typename T> - void operator()(T *) const - { - if (dtype::get_builtin<T>() == m_dtype) - { - m_func.Function::template apply<T>(); - throw dtype_template_match_found(); - } - } - - dtype_template_invoker(dtype const & dtype_, Function func) - : m_dtype(dtype_), m_func(func) {} - -private: - dtype const & m_dtype; - Function m_func; -}; - -template <typename Function> -struct dtype_template_invoker< boost::reference_wrapper<Function> > -{ - - template <typename T> - void operator()(T *) const - { - if (dtype::get_builtin<T>() == m_dtype) - { - m_func.Function::template apply<T>(); - throw dtype_template_match_found(); - } - } - - dtype_template_invoker(dtype const & dtype_, Function & func) - : m_dtype(dtype_), m_func(func) {} - -private: - dtype const & m_dtype; - Function & m_func; -}; - -template <typename Function> -struct nd_template_invoker -{ - template <int N> - void operator()(boost::mpl::integral_c<int,N> *) const - { - if (m_nd == N) - { - m_func.Function::template apply<N>(); - throw nd_template_match_found(); - } - } - - nd_template_invoker(int nd, Function func) : m_nd(nd), m_func(func) {} - -private: - int m_nd; - Function m_func; -}; - -template <typename Function> -struct nd_template_invoker< boost::reference_wrapper<Function> > -{ - template <int N> - void operator()(boost::mpl::integral_c<int,N> *) const - { - if (m_nd == N) - { - m_func.Function::template apply<N>(); - throw nd_template_match_found(); - } - } - - nd_template_invoker(int nd, Function & func) : m_nd(nd), m_func(func) {} - -private: - int m_nd; - Function & m_func; -}; - -} // namespace boost::python::numpy::detail - -template <typename Sequence, typename Function> -void invoke_matching_nd(int nd, Function f) -{ - detail::nd_template_invoker<Function> invoker(nd, f); - try { boost::mpl::for_each< Sequence, detail::add_pointer_meta >(invoker);} - catch (detail::nd_template_match_found &) { return;} - PyErr_SetString(PyExc_TypeError, "number of dimensions not found in template list."); - python::throw_error_already_set(); -} - -template <typename Sequence, typename Function> -void invoke_matching_dtype(dtype const & dtype_, Function f) -{ - detail::dtype_template_invoker<Function> invoker(dtype_, f); - try { boost::mpl::for_each< Sequence, detail::add_pointer_meta >(invoker);} - catch (detail::dtype_template_match_found &) { return;} - PyErr_SetString(PyExc_TypeError, "dtype not found in template list."); - python::throw_error_already_set(); -} - -namespace detail -{ - -template <typename T, typename Function> -struct array_template_invoker_wrapper_2 -{ - template <int N> - void apply() const { m_func.Function::template apply<T,N>();} - array_template_invoker_wrapper_2(Function & func) : m_func(func) {} - -private: - Function & m_func; -}; - -template <typename DimSequence, typename Function> -struct array_template_invoker_wrapper_1 -{ - template <typename T> - void apply() const { invoke_matching_nd<DimSequence>(m_nd, array_template_invoker_wrapper_2<T,Function>(m_func));} - array_template_invoker_wrapper_1(int nd, Function & func) : m_nd(nd), m_func(func) {} - -private: - int m_nd; - Function & m_func; -}; - -template <typename DimSequence, typename Function> -struct array_template_invoker_wrapper_1< DimSequence, boost::reference_wrapper<Function> > - : public array_template_invoker_wrapper_1< DimSequence, Function > -{ - array_template_invoker_wrapper_1(int nd, Function & func) - : array_template_invoker_wrapper_1< DimSequence, Function >(nd, func) {} -}; - -} // namespace boost::python::numpy::detail - -template <typename TypeSequence, typename DimSequence, typename Function> -void invoke_matching_array(ndarray const & array_, Function f) -{ - detail::array_template_invoker_wrapper_1<DimSequence,Function> wrapper(array_.get_nd(), f); - invoke_matching_dtype<TypeSequence>(array_.get_dtype(), wrapper); -} - -}}} // namespace boost::python::numpy - -#endif diff --git a/contrib/restricted/boost/boost/python/numpy/matrix.hpp b/contrib/restricted/boost/boost/python/numpy/matrix.hpp deleted file mode 100644 index 829f544af5..0000000000 --- a/contrib/restricted/boost/boost/python/numpy/matrix.hpp +++ /dev/null @@ -1,84 +0,0 @@ -// Copyright Jim Bosch 2010-2012. -// Copyright Stefan Seefeld 2016. -// Distributed under the Boost Software License, Version 1.0. -// (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef boost_python_numpy_matrix_hpp_ -#define boost_python_numpy_matrix_hpp_ - -/** - * @brief Object manager for numpy.matrix. - */ - -#include <boost/python.hpp> -#include <boost/python/numpy/numpy_object_mgr_traits.hpp> -#include <boost/python/numpy/ndarray.hpp> -#include <boost/python/numpy/config.hpp> - - -namespace boost { namespace python { namespace numpy { - -/** - * @brief A boost.python "object manager" (subclass of object) for numpy.matrix. - * - * @internal numpy.matrix is defined in Python, so object_manager_traits<matrix>::get_pytype() - * is implemented by importing numpy and getting the "matrix" attribute of the module. - * We then just hope that doesn't get destroyed while we need it, because if we put - * a dynamic python object in a static-allocated boost::python::object or handle<>, - * bad things happen when Python shuts down. I think this solution is safe, but I'd - * love to get that confirmed. - */ -class BOOST_NUMPY_DECL matrix : public ndarray -{ - static object construct(object_cref obj, dtype const & dt, bool copy); - static object construct(object_cref obj, bool copy); -public: - - BOOST_PYTHON_FORWARD_OBJECT_CONSTRUCTORS(matrix, ndarray); - - /// @brief Equivalent to "numpy.matrix(obj,dt,copy)" in Python. - explicit matrix(object const & obj, dtype const & dt, bool copy=true) - : ndarray(extract<ndarray>(construct(obj, dt, copy))) {} - - /// @brief Equivalent to "numpy.matrix(obj,copy=copy)" in Python. - explicit matrix(object const & obj, bool copy=true) - : ndarray(extract<ndarray>(construct(obj, copy))) {} - - /// \brief Return a view of the matrix with the given dtype. - matrix view(dtype const & dt) const; - - /// \brief Copy the scalar (deep for all non-object fields). - matrix copy() const; - - /// \brief Transpose the matrix. - matrix transpose() const; - -}; - -/** - * @brief CallPolicies that causes a function that returns a numpy.ndarray to - * return a numpy.matrix instead. - */ -template <typename Base = default_call_policies> -struct as_matrix : Base -{ - static PyObject * postcall(PyObject *, PyObject * result) - { - object a = object(handle<>(result)); - numpy::matrix m(a, false); - Py_INCREF(m.ptr()); - return m.ptr(); - } -}; - -} // namespace boost::python::numpy - -namespace converter -{ - -NUMPY_OBJECT_MANAGER_TRAITS(numpy::matrix); - -}}} // namespace boost::python::converter - -#endif diff --git a/contrib/restricted/boost/boost/python/numpy/ndarray.hpp b/contrib/restricted/boost/boost/python/numpy/ndarray.hpp deleted file mode 100644 index 2cb3b509f8..0000000000 --- a/contrib/restricted/boost/boost/python/numpy/ndarray.hpp +++ /dev/null @@ -1,313 +0,0 @@ -// Copyright Jim Bosch 2010-2012. -// Copyright Stefan Seefeld 2016. -// Distributed under the Boost Software License, Version 1.0. -// (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef boost_python_numpy_ndarray_hpp_ -#define boost_python_numpy_ndarray_hpp_ - -/** - * @brief Object manager and various utilities for numpy.ndarray. - */ - -#include <boost/python.hpp> -#include <boost/utility/enable_if.hpp> -#include <boost/python/detail/type_traits.hpp> -#include <boost/python/numpy/numpy_object_mgr_traits.hpp> -#include <boost/python/numpy/dtype.hpp> -#include <boost/python/numpy/config.hpp> - -#include <vector> - -namespace boost { namespace python { namespace numpy { - -/** - * @brief A boost.python "object manager" (subclass of object) for numpy.ndarray. - * - * @todo This could have a lot more functionality (like boost::python::numeric::array). - * Right now all that exists is what was needed to move raw data between C++ and Python. - */ - -class BOOST_NUMPY_DECL ndarray : public object -{ - - /** - * @brief An internal struct that's byte-compatible with PyArrayObject. - * - * This is just a hack to allow inline access to this stuff while hiding numpy/arrayobject.h - * from the user. - */ - struct array_struct - { - PyObject_HEAD - char * data; - int nd; - Py_intptr_t * shape; - Py_intptr_t * strides; - PyObject * base; - PyObject * descr; - int flags; - PyObject * weakreflist; - }; - - /// @brief Return the held Python object as an array_struct. - array_struct * get_struct() const { return reinterpret_cast<array_struct*>(this->ptr()); } - -public: - - /** - * @brief Enum to represent (some) of Numpy's internal flags. - * - * These don't match the actual Numpy flag values; we can't get those without including - * numpy/arrayobject.h or copying them directly. That's very unfortunate. - * - * @todo I'm torn about whether this should be an enum. It's very convenient to not - * make these simple integer values for overloading purposes, but the need to - * define every possible combination and custom bitwise operators is ugly. - */ - enum bitflag - { - NONE=0x0, C_CONTIGUOUS=0x1, F_CONTIGUOUS=0x2, V_CONTIGUOUS=0x1|0x2, - ALIGNED=0x4, WRITEABLE=0x8, BEHAVED=0x4|0x8, - CARRAY_RO=0x1|0x4, CARRAY=0x1|0x4|0x8, CARRAY_MIS=0x1|0x8, - FARRAY_RO=0x2|0x4, FARRAY=0x2|0x4|0x8, FARRAY_MIS=0x2|0x8, - UPDATE_ALL=0x1|0x2|0x4, VARRAY=0x1|0x2|0x8, ALL=0x1|0x2|0x4|0x8 - }; - - BOOST_PYTHON_FORWARD_OBJECT_CONSTRUCTORS(ndarray, object); - - /// @brief Return a view of the scalar with the given dtype. - ndarray view(dtype const & dt) const; - - /// @brief Copy the array, cast to a specified type. - ndarray astype(dtype const & dt) const; - - /// @brief Copy the scalar (deep for all non-object fields). - ndarray copy() const; - - /// @brief Return the size of the nth dimension. raises IndexError if k not in [-get_nd() : get_nd()-1 ] - Py_intptr_t shape(int n) const; - - /// @brief Return the stride of the nth dimension. raises IndexError if k not in [-get_nd() : get_nd()-1] - Py_intptr_t strides(int n) const; - - /** - * @brief Return the array's raw data pointer. - * - * This returns char so stride math works properly on it. It's pretty much - * expected that the user will have to reinterpret_cast it. - */ - char * get_data() const { return get_struct()->data; } - - /// @brief Return the array's data-type descriptor object. - dtype get_dtype() const; - - /// @brief Return the object that owns the array's data, or None if the array owns its own data. - object get_base() const; - - /// @brief Set the object that owns the array's data. Use with care. - void set_base(object const & base); - - /// @brief Return the shape of the array as an array of integers (length == get_nd()). - Py_intptr_t const * get_shape() const { return get_struct()->shape; } - - /// @brief Return the stride of the array as an array of integers (length == get_nd()). - Py_intptr_t const * get_strides() const { return get_struct()->strides; } - - /// @brief Return the number of array dimensions. - int get_nd() const { return get_struct()->nd; } - - /// @brief Return the array flags. - bitflag get_flags() const; - - /// @brief Reverse the dimensions of the array. - ndarray transpose() const; - - /// @brief Eliminate any unit-sized dimensions. - ndarray squeeze() const; - - /// @brief Equivalent to self.reshape(*shape) in Python. - ndarray reshape(python::tuple const & shape) const; - - /** - * @brief If the array contains only a single element, return it as an array scalar; otherwise return - * the array. - * - * @internal This is simply a call to PyArray_Return(); - */ - object scalarize() const; -}; - -/** - * @brief Construct a new array with the given shape and data type, with data initialized to zero. - */ -BOOST_NUMPY_DECL ndarray zeros(python::tuple const & shape, dtype const & dt); -BOOST_NUMPY_DECL ndarray zeros(int nd, Py_intptr_t const * shape, dtype const & dt); - -/** - * @brief Construct a new array with the given shape and data type, with data left uninitialized. - */ -BOOST_NUMPY_DECL ndarray empty(python::tuple const & shape, dtype const & dt); -BOOST_NUMPY_DECL ndarray empty(int nd, Py_intptr_t const * shape, dtype const & dt); - -/** - * @brief Construct a new array from an arbitrary Python sequence. - * - * @todo This does't seem to handle ndarray subtypes the same way that "numpy.array" does in Python. - */ -BOOST_NUMPY_DECL ndarray array(object const & obj); -BOOST_NUMPY_DECL ndarray array(object const & obj, dtype const & dt); - -namespace detail -{ - -BOOST_NUMPY_DECL ndarray from_data_impl(void * data, - dtype const & dt, - std::vector<Py_intptr_t> const & shape, - std::vector<Py_intptr_t> const & strides, - object const & owner, - bool writeable); - -template <typename Container> -ndarray from_data_impl(void * data, - dtype const & dt, - Container shape, - Container strides, - object const & owner, - bool writeable, - typename boost::enable_if< boost::python::detail::is_integral<typename Container::value_type> >::type * enabled = NULL) -{ - std::vector<Py_intptr_t> shape_(shape.begin(),shape.end()); - std::vector<Py_intptr_t> strides_(strides.begin(), strides.end()); - return from_data_impl(data, dt, shape_, strides_, owner, writeable); -} - -BOOST_NUMPY_DECL ndarray from_data_impl(void * data, - dtype const & dt, - object const & shape, - object const & strides, - object const & owner, - bool writeable); - -} // namespace boost::python::numpy::detail - -/** - * @brief Construct a new ndarray object from a raw pointer. - * - * @param[in] data Raw pointer to the first element of the array. - * @param[in] dt Data type descriptor. Often retrieved with dtype::get_builtin(). - * @param[in] shape Shape of the array as STL container of integers; must have begin() and end(). - * @param[in] strides Shape of the array as STL container of integers; must have begin() and end(). - * @param[in] owner An arbitray Python object that owns that data pointer. The array object will - * keep a reference to the object, and decrement it's reference count when the - * array goes out of scope. Pass None at your own peril. - * - * @todo Should probably take ranges of iterators rather than actual container objects. - */ -template <typename Container> -inline ndarray from_data(void * data, - dtype const & dt, - Container shape, - Container strides, - python::object const & owner) -{ - return numpy::detail::from_data_impl(data, dt, shape, strides, owner, true); -} - -/** - * @brief Construct a new ndarray object from a raw pointer. - * - * @param[in] data Raw pointer to the first element of the array. - * @param[in] dt Data type descriptor. Often retrieved with dtype::get_builtin(). - * @param[in] shape Shape of the array as STL container of integers; must have begin() and end(). - * @param[in] strides Shape of the array as STL container of integers; must have begin() and end(). - * @param[in] owner An arbitray Python object that owns that data pointer. The array object will - * keep a reference to the object, and decrement it's reference count when the - * array goes out of scope. Pass None at your own peril. - * - * This overload takes a const void pointer and sets the "writeable" flag of the array to false. - * - * @todo Should probably take ranges of iterators rather than actual container objects. - */ -template <typename Container> -inline ndarray from_data(void const * data, - dtype const & dt, - Container shape, - Container strides, - python::object const & owner) -{ - return numpy::detail::from_data_impl(const_cast<void*>(data), dt, shape, strides, owner, false); -} - -/** - * @brief Transform an arbitrary object into a numpy array with the given requirements. - * - * @param[in] obj An arbitrary python object to convert. Arrays that meet the requirements - * will be passed through directly. - * @param[in] dt Data type descriptor. Often retrieved with dtype::get_builtin(). - * @param[in] nd_min Minimum number of dimensions. - * @param[in] nd_max Maximum number of dimensions. - * @param[in] flags Bitwise OR of flags specifying additional requirements. - */ -BOOST_NUMPY_DECL ndarray from_object(object const & obj, - dtype const & dt, - int nd_min, - int nd_max, - ndarray::bitflag flags=ndarray::NONE); - -BOOST_NUMPY_DECL inline ndarray from_object(object const & obj, - dtype const & dt, - int nd, - ndarray::bitflag flags=ndarray::NONE) -{ - return from_object(obj, dt, nd, nd, flags); -} - -BOOST_NUMPY_DECL inline ndarray from_object(object const & obj, - dtype const & dt, - ndarray::bitflag flags=ndarray::NONE) -{ - return from_object(obj, dt, 0, 0, flags); -} - -BOOST_NUMPY_DECL ndarray from_object(object const & obj, - int nd_min, - int nd_max, - ndarray::bitflag flags=ndarray::NONE); - -BOOST_NUMPY_DECL inline ndarray from_object(object const & obj, - int nd, - ndarray::bitflag flags=ndarray::NONE) -{ - return from_object(obj, nd, nd, flags); -} - -BOOST_NUMPY_DECL inline ndarray from_object(object const & obj, - ndarray::bitflag flags=ndarray::NONE) -{ - return from_object(obj, 0, 0, flags); -} - -BOOST_NUMPY_DECL inline ndarray::bitflag operator|(ndarray::bitflag a, - ndarray::bitflag b) -{ - return ndarray::bitflag(int(a) | int(b)); -} - -BOOST_NUMPY_DECL inline ndarray::bitflag operator&(ndarray::bitflag a, - ndarray::bitflag b) -{ - return ndarray::bitflag(int(a) & int(b)); -} - -} // namespace boost::python::numpy - -namespace converter -{ - -NUMPY_OBJECT_MANAGER_TRAITS(numpy::ndarray); - -}}} // namespace boost::python::converter - -#endif diff --git a/contrib/restricted/boost/boost/python/numpy/numpy_object_mgr_traits.hpp b/contrib/restricted/boost/boost/python/numpy/numpy_object_mgr_traits.hpp deleted file mode 100644 index a138f4cd52..0000000000 --- a/contrib/restricted/boost/boost/python/numpy/numpy_object_mgr_traits.hpp +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright Jim Bosch 2010-2012. -// Copyright Stefan Seefeld 2016. -// Distributed under the Boost Software License, Version 1.0. -// (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef boost_python_numpy_numpy_object_mgr_traits_hpp_ -#define boost_python_numpy_numpy_object_mgr_traits_hpp_ - -#include <boost/python/numpy/config.hpp> - -/** - * @brief Macro that specializes object_manager_traits by requiring a - * source-file implementation of get_pytype(). - */ - -#define NUMPY_OBJECT_MANAGER_TRAITS(manager) \ -template <> \ -struct BOOST_NUMPY_DECL object_manager_traits<manager> \ -{ \ - BOOST_STATIC_CONSTANT(bool, is_specialized = true); \ - static inline python::detail::new_reference adopt(PyObject* x) \ - { \ - return python::detail::new_reference(python::pytype_check((PyTypeObject*)get_pytype(), x)); \ - } \ - static bool check(PyObject* x) \ - { \ - return ::PyObject_IsInstance(x, (PyObject*)get_pytype()); \ - } \ - static manager* checked_downcast(PyObject* x) \ - { \ - return python::downcast<manager>((checked_downcast_impl)(x, (PyTypeObject*)get_pytype())); \ - } \ - static PyTypeObject const * get_pytype(); \ -} - -#endif - diff --git a/contrib/restricted/boost/boost/python/numpy/scalars.hpp b/contrib/restricted/boost/boost/python/numpy/scalars.hpp deleted file mode 100644 index c2a83d8253..0000000000 --- a/contrib/restricted/boost/boost/python/numpy/scalars.hpp +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright Jim Bosch 2010-2012. -// Copyright Stefan Seefeld 2016. -// Distributed under the Boost Software License, Version 1.0. -// (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef boost_python_numpy_scalars_hpp_ -#define boost_python_numpy_scalars_hpp_ - -/** - * @brief Object managers for array scalars (currently only numpy.void is implemented). - */ - -#include <boost/python.hpp> -#include <boost/python/numpy/numpy_object_mgr_traits.hpp> -#include <boost/python/numpy/dtype.hpp> - -namespace boost { namespace python { namespace numpy { - -/** - * @brief A boost.python "object manager" (subclass of object) for numpy.void. - * - * @todo This could have a lot more functionality. - */ -class BOOST_NUMPY_DECL void_ : public object -{ - static python::detail::new_reference convert(object_cref arg, bool align); -public: - - /** - * @brief Construct a new array scalar with the given size and void dtype. - * - * Data is initialized to zero. One can create a standalone scalar object - * with a certain dtype "dt" with: - * @code - * void_ scalar = void_(dt.get_itemsize()).view(dt); - * @endcode - */ - explicit void_(Py_ssize_t size); - - BOOST_PYTHON_FORWARD_OBJECT_CONSTRUCTORS(void_, object); - - /// @brief Return a view of the scalar with the given dtype. - void_ view(dtype const & dt) const; - - /// @brief Copy the scalar (deep for all non-object fields). - void_ copy() const; - -}; - -} // namespace boost::python::numpy - -namespace converter -{ -NUMPY_OBJECT_MANAGER_TRAITS(numpy::void_); -}}} // namespace boost::python::converter - -#endif diff --git a/contrib/restricted/boost/boost/python/numpy/ufunc.hpp b/contrib/restricted/boost/boost/python/numpy/ufunc.hpp deleted file mode 100644 index 79d7d262b8..0000000000 --- a/contrib/restricted/boost/boost/python/numpy/ufunc.hpp +++ /dev/null @@ -1,206 +0,0 @@ -// Copyright Jim Bosch 2010-2012. -// Copyright Stefan Seefeld 2016. -// Distributed under the Boost Software License, Version 1.0. -// (See accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef boost_python_numpy_ufunc_hpp_ -#define boost_python_numpy_ufunc_hpp_ - -/** - * @brief Utilities to create ufunc-like broadcasting functions out of C++ functors. - */ - -#include <boost/python.hpp> -#include <boost/python/numpy/numpy_object_mgr_traits.hpp> -#include <boost/python/numpy/dtype.hpp> -#include <boost/python/numpy/ndarray.hpp> -#include <boost/python/numpy/config.hpp> - -namespace boost { namespace python { namespace numpy { - -/** - * @brief A boost.python "object manager" (subclass of object) for PyArray_MultiIter. - * - * multi_iter is a Python object, but a very low-level one. It should generally only be used - * in loops of the form: - * @code - * while (iter.not_done()) { - * ... - * iter.next(); - * } - * @endcode - * - * @todo I can't tell if this type is exposed in Python anywhere; if it is, we should use that name. - * It's more dangerous than most object managers, however - maybe it actually belongs in - * a detail namespace? - */ -class BOOST_NUMPY_DECL multi_iter : public object -{ -public: - - BOOST_PYTHON_FORWARD_OBJECT_CONSTRUCTORS(multi_iter, object); - - /// @brief Increment the iterator. - void next(); - - /// @brief Check if the iterator is at its end. - bool not_done() const; - - /// @brief Return a pointer to the element of the nth broadcasted array. - char * get_data(int n) const; - - /// @brief Return the number of dimensions of the broadcasted array expression. - int get_nd() const; - - /// @brief Return the shape of the broadcasted array expression as an array of integers. - Py_intptr_t const * get_shape() const; - - /// @brief Return the shape of the broadcasted array expression in the nth dimension. - Py_intptr_t shape(int n) const; - -}; - -/// @brief Construct a multi_iter over a single sequence or scalar object. -BOOST_NUMPY_DECL multi_iter make_multi_iter(object const & a1); - -/// @brief Construct a multi_iter by broadcasting two objects. -BOOST_NUMPY_DECL multi_iter make_multi_iter(object const & a1, object const & a2); - -/// @brief Construct a multi_iter by broadcasting three objects. -BOOST_NUMPY_DECL multi_iter make_multi_iter(object const & a1, object const & a2, object const & a3); - -/** - * @brief Helps wrap a C++ functor taking a single scalar argument as a broadcasting ufunc-like - * Python object. - * - * Typical usage looks like this: - * @code - * struct TimesPI - * { - * typedef double argument_type; - * typedef double result_type; - * double operator()(double input) const { return input * M_PI; } - * }; - * - * BOOST_PYTHON_MODULE(example) - * { - * class_< TimesPI >("TimesPI") - * .def("__call__", unary_ufunc<TimesPI>::make()); - * } - * @endcode - * - */ -template <typename TUnaryFunctor, - typename TArgument=typename TUnaryFunctor::argument_type, - typename TResult=typename TUnaryFunctor::result_type> -struct unary_ufunc -{ - - /** - * @brief A C++ function with object arguments that broadcasts its arguments before - * passing them to the underlying C++ functor. - */ - static object call(TUnaryFunctor & self, object const & input, object const & output) - { - dtype in_dtype = dtype::get_builtin<TArgument>(); - dtype out_dtype = dtype::get_builtin<TResult>(); - ndarray in_array = from_object(input, in_dtype, ndarray::ALIGNED); - ndarray out_array = ! output.is_none() ? - from_object(output, out_dtype, ndarray::ALIGNED | ndarray::WRITEABLE) - : zeros(in_array.get_nd(), in_array.get_shape(), out_dtype); - multi_iter iter = make_multi_iter(in_array, out_array); - while (iter.not_done()) - { - TArgument * argument = reinterpret_cast<TArgument*>(iter.get_data(0)); - TResult * result = reinterpret_cast<TResult*>(iter.get_data(1)); - *result = self(*argument); - iter.next(); - } - return out_array.scalarize(); - } - - /** - * @brief Construct a boost.python function object from call() with reasonable keyword names. - * - * Users will often want to specify their own keyword names with the same signature, but this - * is a convenient shortcut. - */ - static object make() - { - return make_function(call, default_call_policies(), (arg("input"), arg("output")=object())); - } -}; - -/** - * @brief Helps wrap a C++ functor taking a pair of scalar arguments as a broadcasting ufunc-like - * Python object. - * - * Typical usage looks like this: - * @code - * struct CosSum - * { - * typedef double first_argument_type; - * typedef double second_argument_type; - * typedef double result_type; - * double operator()(double input1, double input2) const { return std::cos(input1 + input2); } - * }; - * - * BOOST_PYTHON_MODULE(example) - * { - * class_< CosSum >("CosSum") - * .def("__call__", binary_ufunc<CosSum>::make()); - * } - * @endcode - * - */ -template <typename TBinaryFunctor, - typename TArgument1=typename TBinaryFunctor::first_argument_type, - typename TArgument2=typename TBinaryFunctor::second_argument_type, - typename TResult=typename TBinaryFunctor::result_type> -struct binary_ufunc -{ - - static object - call(TBinaryFunctor & self, object const & input1, object const & input2, - object const & output) - { - dtype in1_dtype = dtype::get_builtin<TArgument1>(); - dtype in2_dtype = dtype::get_builtin<TArgument2>(); - dtype out_dtype = dtype::get_builtin<TResult>(); - ndarray in1_array = from_object(input1, in1_dtype, ndarray::ALIGNED); - ndarray in2_array = from_object(input2, in2_dtype, ndarray::ALIGNED); - multi_iter iter = make_multi_iter(in1_array, in2_array); - ndarray out_array = !output.is_none() - ? from_object(output, out_dtype, ndarray::ALIGNED | ndarray::WRITEABLE) - : zeros(iter.get_nd(), iter.get_shape(), out_dtype); - iter = make_multi_iter(in1_array, in2_array, out_array); - while (iter.not_done()) - { - TArgument1 * argument1 = reinterpret_cast<TArgument1*>(iter.get_data(0)); - TArgument2 * argument2 = reinterpret_cast<TArgument2*>(iter.get_data(1)); - TResult * result = reinterpret_cast<TResult*>(iter.get_data(2)); - *result = self(*argument1, *argument2); - iter.next(); - } - return out_array.scalarize(); - } - - static object make() - { - return make_function(call, default_call_policies(), - (arg("input1"), arg("input2"), arg("output")=object())); - } - -}; - -} // namespace boost::python::numpy - -namespace converter -{ - -NUMPY_OBJECT_MANAGER_TRAITS(numpy::multi_iter); - -}}} // namespace boost::python::converter - -#endif diff --git a/contrib/restricted/boost/boost/python/object_call.hpp b/contrib/restricted/boost/boost/python/object_call.hpp deleted file mode 100644 index 5c4d0f2fbe..0000000000 --- a/contrib/restricted/boost/boost/python/object_call.hpp +++ /dev/null @@ -1,23 +0,0 @@ -# if !defined(BOOST_PYTHON_SYNOPSIS) -# // Copyright David Abrahams 2002. -# // Distributed under the Boost Software License, Version 1.0. (See -# // accompanying file LICENSE_1_0.txt or copy at -# // http://www.boost.org/LICENSE_1_0.txt) - -# if !defined(BOOST_PP_IS_ITERATING) -# error Boost.Python - do not include this file! -# endif - -# define N BOOST_PP_ITERATION() - - template <BOOST_PP_ENUM_PARAMS_Z(1, N, class A)> - typename detail::dependent<object, A0>::type - operator()(BOOST_PP_ENUM_BINARY_PARAMS_Z(1, N, A, const& a)) const - { - typedef typename detail::dependent<object, A0>::type obj; - U const& self = *static_cast<U const*>(this); - return call<obj>(get_managed_object(self, tag), BOOST_PP_ENUM_PARAMS_Z(1, N, a)); - } - -# undef N -# endif // BOOST_PYTHON_SYNOPSIS diff --git a/contrib/restricted/boost/boost/python/suite/indexing/container_utils.hpp b/contrib/restricted/boost/boost/python/suite/indexing/container_utils.hpp deleted file mode 100644 index 72710bb8b0..0000000000 --- a/contrib/restricted/boost/boost/python/suite/indexing/container_utils.hpp +++ /dev/null @@ -1,57 +0,0 @@ - -// (C) Copyright Joel de Guzman 2003. -// Distributed under the Boost Software License, Version 1.0. (See -// accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef PY_CONTAINER_UTILS_JDG20038_HPP -# define PY_CONTAINER_UTILS_JDG20038_HPP - -# include <utility> -# include <boost/foreach.hpp> -# include <boost/python/object.hpp> -# include <boost/python/handle.hpp> -# include <boost/python/extract.hpp> -# include <boost/python/stl_iterator.hpp> - -namespace boost { namespace python { namespace container_utils { - - template <typename Container> - void - extend_container(Container& container, object l) - { - typedef typename Container::value_type data_type; - - // l must be iterable - BOOST_FOREACH(object elem, - std::make_pair( - boost::python::stl_input_iterator<object>(l), - boost::python::stl_input_iterator<object>() - )) - { - extract<data_type const&> x(elem); - // try if elem is an exact data_type type - if (x.check()) - { - container.push_back(x()); - } - else - { - // try to convert elem to data_type type - extract<data_type> x(elem); - if (x.check()) - { - container.push_back(x()); - } - else - { - PyErr_SetString(PyExc_TypeError, "Incompatible Data Type"); - throw_error_already_set(); - } - } - } - } - -}}} // namespace boost::python::container_utils - -#endif diff --git a/contrib/restricted/boost/boost/python/suite/indexing/detail/indexing_suite_detail.hpp b/contrib/restricted/boost/boost/python/suite/indexing/detail/indexing_suite_detail.hpp deleted file mode 100644 index eb8b81c0a3..0000000000 --- a/contrib/restricted/boost/boost/python/suite/indexing/detail/indexing_suite_detail.hpp +++ /dev/null @@ -1,759 +0,0 @@ -// (C) Copyright Joel de Guzman 2003. -// Distributed under the Boost Software License, Version 1.0. (See -// accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef INDEXING_SUITE_DETAIL_JDG20036_HPP -# define INDEXING_SUITE_DETAIL_JDG20036_HPP - -# include <boost/python/extract.hpp> -# include <boost/scoped_ptr.hpp> -# include <boost/get_pointer.hpp> -# include <boost/detail/binary_search.hpp> -# include <boost/numeric/conversion/cast.hpp> -# include <boost/python/detail/type_traits.hpp> -# include <vector> -# include <map> -#include <iostream> - -namespace boost { namespace python { namespace detail { - -#if defined(NDEBUG) -#define BOOST_PYTHON_INDEXING_CHECK_INVARIANT -#else -#define BOOST_PYTHON_INDEXING_CHECK_INVARIANT check_invariant() -#endif - - template <class Proxy> - struct compare_proxy_index - { - // This functor compares a proxy and an index. - // This is used by proxy_group::first_proxy to - // get first proxy with index i. - - template <class Index> - bool operator()(PyObject* prox, Index i) const - { - typedef typename Proxy::policies_type policies_type; - Proxy& proxy = extract<Proxy&>(prox)(); - return policies_type:: - compare_index(proxy.get_container(), proxy.get_index(), i); - } - }; - - // The proxy_group class holds a vector of container element - // proxies. First, what is a container element proxy? A container - // element proxy acts like a smart pointer holding a reference to - // a container and an index (see container_element, for details). - // - // The proxies are held in a vector always sorted by its index. - // Various functions manage the addition, removal and searching - // of proxies from the vector. - // - template <class Proxy> - class proxy_group - { - public: - - typedef typename std::vector<PyObject*>::const_iterator const_iterator; - typedef typename std::vector<PyObject*>::iterator iterator; - typedef typename Proxy::index_type index_type; - typedef typename Proxy::policies_type policies_type; - - iterator - first_proxy(index_type i) - { - // Return the first proxy with index <= i - return boost::detail::lower_bound( - proxies.begin(), proxies.end(), - i, compare_proxy_index<Proxy>()); - } - - void - remove(Proxy& proxy) - { - // Remove a proxy - for (iterator iter = first_proxy(proxy.get_index()); - iter != proxies.end(); ++iter) - { - if (&extract<Proxy&>(*iter)() == &proxy) - { - proxies.erase(iter); - break; - } - } - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - } - - void - add(PyObject* prox) - { - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - // Add a proxy - proxies.insert( - first_proxy(extract<Proxy&>(prox)().get_index()), prox); - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - } - - void - erase(index_type i, mpl::false_) - { - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - // Erase the proxy with index i - replace(i, i+1, 0); - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - } - - void - erase(index_type i, mpl::true_) - { - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - // Erase the proxy with index i - - iterator iter = first_proxy(i); - extract<Proxy&> p(*iter); - - if (iter != proxies.end() && p().get_index() == i) - { - extract<Proxy&> p(*iter); - p().detach(); - proxies.erase(iter); - } - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - } - - void - erase(index_type from, index_type to) - { - // note: this cannot be called when container is not sliceable - - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - // Erase all proxies with indexes from..to - replace(from, to, 0); - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - } - - void - replace( - index_type from, - index_type to, - typename std::vector<PyObject*>::size_type len) - { - // note: this cannot be called when container is not sliceable - - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - // Erase all proxies with indexes from..to. - // Adjust the displaced indexes such that the - // final effect is that we have inserted *len* - // number of proxies in the vacated region. This - // procedure involves adjusting the indexes of - // the proxies. - - iterator left = first_proxy(from); - iterator right = proxies.end(); // we'll adjust this later - - for (iterator iter = left; iter != right; ++iter) - { - if (extract<Proxy&>(*iter)().get_index() > to) - { - right = iter; // adjust right - break; - } - extract<Proxy&> p(*iter); - p().detach(); - } - - typename std::vector<PyObject*>::size_type - offset = left-proxies.begin(); - proxies.erase(left, right); - right = proxies.begin()+offset; - - while (right != proxies.end()) - { - typedef typename Proxy::container_type::difference_type difference_type; - extract<Proxy&> p(*right); - p().set_index( - extract<Proxy&>(*right)().get_index() - - (difference_type(to) - from - len) - ); - - ++right; - } - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - } - - PyObject* - find(index_type i) - { - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - // Find the proxy with *exact* index i. - // Return 0 (null) if no proxy with the - // given index is found. - iterator iter = first_proxy(i); - if (iter != proxies.end() - && extract<Proxy&>(*iter)().get_index() == i) - { - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - return *iter; - } - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - return 0; - } - - typename std::vector<PyObject*>::size_type - size() const - { - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - // How many proxies are there so far? - return proxies.size(); - } - - private: - -#if !defined(NDEBUG) - void - check_invariant() const - { - for (const_iterator i = proxies.begin(); i != proxies.end(); ++i) - { - if ((*i)->ob_refcnt <= 0) - { - PyErr_SetString(PyExc_RuntimeError, - "Invariant: Proxy vector in an inconsistent state"); - throw_error_already_set(); - } - - if (i+1 != proxies.end()) - { - if (extract<Proxy&>(*(i+1))().get_index() == - extract<Proxy&>(*(i))().get_index()) - { - PyErr_SetString(PyExc_RuntimeError, - "Invariant: Proxy vector in an inconsistent state (duplicate proxy)"); - throw_error_already_set(); - } - } - } - } -#endif - - std::vector<PyObject*> proxies; - }; - - // proxy_links holds a map of Container pointers (keys) - // with proxy_group(s) (data). Various functions manage - // the addition, removal and searching of proxies from - // the map. - // - template <class Proxy, class Container> - class proxy_links - { - public: - - typedef std::map<Container*, proxy_group<Proxy> > links_t; - typedef typename Proxy::index_type index_type; - - void - remove(Proxy& proxy) - { - // Remove a proxy. - typename links_t::iterator r = links.find(&proxy.get_container()); - if (r != links.end()) - { - r->second.remove(proxy); - if (r->second.size() == 0) - links.erase(r); - } - } - - void - add(PyObject* prox, Container& container) - { - // Add a proxy - links[&container].add(prox); - } - - template <class NoSlice> - void erase(Container& container, index_type i, NoSlice no_slice) - { - // Erase the proxy with index i - typename links_t::iterator r = links.find(&container); - if (r != links.end()) - { - r->second.erase(i, no_slice); - if (r->second.size() == 0) - links.erase(r); - } - } - - void - erase(Container& container, index_type from, index_type to) - { - // Erase all proxies with indexes from..to - typename links_t::iterator r = links.find(&container); - if (r != links.end()) - { - r->second.erase(from, to); - if (r->second.size() == 0) - links.erase(r); - } - } - - void - replace( - Container& container, - index_type from, index_type to, index_type len) - { - // Erase all proxies with indexes from..to. - // Adjust the displaced indexes such that the - // final effect is that we have inserted *len* - // number of proxies in the vacated region. This - // procedure involves adjusting the indexes of - // the proxies. - - typename links_t::iterator r = links.find(&container); - if (r != links.end()) - { - r->second.replace(from, to, len); - if (r->second.size() == 0) - links.erase(r); - } - } - - PyObject* - find(Container& container, index_type i) - { - // Find the proxy with *exact* index i. - // Return 0 (null) if no proxy with the given - // index is found. - typename links_t::iterator r = links.find(&container); - if (r != links.end()) - return r->second.find(i); - return 0; - } - - private: - - links_t links; - }; - - // container_element is our container proxy class. - // This class acts like a smart pointer to a container - // element. The class holds an index and a reference to - // a container. Dereferencing the smart pointer will - // retrieve the nth (index) element from the container. - // - // A container_element can also be detached from the - // container. In such a detached state, the container_element - // holds a copy of the nth (index) element, which it - // returns when dereferenced. - // - template <class Container, class Index, class Policies> - class container_element - { - public: - - typedef Index index_type; - typedef Container container_type; - typedef typename Policies::data_type element_type; - typedef Policies policies_type; - typedef container_element<Container, Index, Policies> self_t; - typedef proxy_group<self_t> links_type; - - container_element(object container, Index index) - : ptr() - , container(container) - , index(index) - { - } - - container_element(container_element const& ce) - : ptr(ce.ptr.get() == 0 ? 0 : new element_type(*ce.ptr.get())) - , container(ce.container) - , index(ce.index) - { - } - - ~container_element() - { - if (!is_detached()) - get_links().remove(*this); - } - - element_type& operator*() const - { - if (is_detached()) - return *get_pointer(ptr); - return Policies::get_item(get_container(), index); - } - - element_type* get() const - { - if (is_detached()) - return get_pointer(ptr); - return &Policies::get_item(get_container(), index); - } - - void - detach() - { - if (!is_detached()) - { - ptr.reset( - new element_type( - Policies::get_item(get_container(), index))); - container = object(); // free container. reset it to None - } - } - - bool - is_detached() const - { - return get_pointer(ptr) != 0; - } - - Container& - get_container() const - { - return extract<Container&>(container)(); - } - - Index - get_index() const - { - return index; - } - - void - set_index(Index i) - { - index = i; - } - - static proxy_links<self_t, Container>& - get_links() - { - // All container_element(s) maintain links to - // its container in a global map (see proxy_links). - // This global "links" map is a singleton. - - static proxy_links<self_t, Container> links; - return links; // singleton - } - - private: - - container_element& operator=(container_element const& ce); - - scoped_ptr<element_type> ptr; - object container; - Index index; - }; - - template < - class Container - , class DerivedPolicies - , class ContainerElement - , class Index - > - struct no_proxy_helper - { - static void - register_container_element() - { - } - - template <class DataType> - static object - base_get_item_helper(DataType const& p, detail::true_) - { - return object(ptr(p)); - } - - template <class DataType> - static object - base_get_item_helper(DataType const& x, detail::false_) - { - return object(x); - } - - static object - base_get_item_(back_reference<Container&> const& container, PyObject* i) - { - return base_get_item_helper( - DerivedPolicies::get_item( - container.get(), DerivedPolicies:: - convert_index(container.get(), i)) - , is_pointer<BOOST_DEDUCED_TYPENAME Container::value_type>() - ); - } - - static void - base_replace_indexes( - Container& /*container*/, Index /*from*/, - Index /*to*/, Index /*n*/) - { - } - - template <class NoSlice> - static void - base_erase_index( - Container& /*container*/, Index /*i*/, NoSlice /*no_slice*/) - { - } - - static void - base_erase_indexes(Container& /*container*/, Index /*from*/, Index /*to*/) - { - } - }; - - template < - class Container - , class DerivedPolicies - , class ContainerElement - , class Index - > - struct proxy_helper - { - static void - register_container_element() - { - register_ptr_to_python<ContainerElement>(); - } - - static object - base_get_item_(back_reference<Container&> const& container, PyObject* i) - { - // Proxy - Index idx = DerivedPolicies::convert_index(container.get(), i); - - if (PyObject* shared = - ContainerElement::get_links().find(container.get(), idx)) - { - handle<> h(python::borrowed(shared)); - return object(h); - } - else - { - object prox(ContainerElement(container.source(), idx)); - ContainerElement:: - get_links().add(prox.ptr(), container.get()); - return prox; - } - } - - static void - base_replace_indexes( - Container& container, Index from, - Index to, Index n) - { - ContainerElement::get_links().replace(container, from, to, n); - } - - template <class NoSlice> - static void - base_erase_index( - Container& container, Index i, NoSlice no_slice) - { - ContainerElement::get_links().erase(container, i, no_slice); - } - - static void - base_erase_indexes( - Container& container, Index from, Index to) - { - ContainerElement::get_links().erase(container, from, to); - } - }; - - template < - class Container - , class DerivedPolicies - , class ProxyHandler - , class Data - , class Index - > - struct slice_helper - { - static object - base_get_slice(Container& container, PySliceObject* slice) - { - Index from, to; - base_get_slice_data(container, slice, from, to); - return DerivedPolicies::get_slice(container, from, to); - } - - static void - base_get_slice_data( - Container& container, PySliceObject* slice, Index& from_, Index& to_) - { - if (Py_None != slice->step) { - PyErr_SetString( PyExc_IndexError, "slice step size not supported."); - throw_error_already_set(); - } - - Index min_index = DerivedPolicies::get_min_index(container); - Index max_index = DerivedPolicies::get_max_index(container); - - if (Py_None == slice->start) { - from_ = min_index; - } - else { - long from = extract<long>( slice->start); - if (from < 0) // Negative slice index - from += max_index; - if (from < 0) // Clip lower bounds to zero - from = 0; - from_ = boost::numeric_cast<Index>(from); - if (from_ > max_index) // Clip upper bounds to max_index. - from_ = max_index; - } - - if (Py_None == slice->stop) { - to_ = max_index; - } - else { - long to = extract<long>( slice->stop); - if (to < 0) - to += max_index; - if (to < 0) - to = 0; - to_ = boost::numeric_cast<Index>(to); - if (to_ > max_index) - to_ = max_index; - } - } - - static void - base_set_slice(Container& container, PySliceObject* slice, PyObject* v) - { - Index from, to; - base_get_slice_data(container, slice, from, to); - - extract<Data&> elem(v); - // try if elem is an exact Data - if (elem.check()) - { - ProxyHandler::base_replace_indexes(container, from, to, 1); - DerivedPolicies::set_slice(container, from, to, elem()); - } - else - { - // try to convert elem to Data - extract<Data> elem(v); - if (elem.check()) - { - ProxyHandler::base_replace_indexes(container, from, to, 1); - DerivedPolicies::set_slice(container, from, to, elem()); - } - else - { - // Otherwise, it must be a list or some container - handle<> l_(python::borrowed(v)); - object l(l_); - - std::vector<Data> temp; - for (int i = 0; i < l.attr("__len__")(); i++) - { - object elem(l[i]); - extract<Data const&> x(elem); - // try if elem is an exact Data type - if (x.check()) - { - temp.push_back(x()); - } - else - { - // try to convert elem to Data type - extract<Data> x(elem); - if (x.check()) - { - temp.push_back(x()); - } - else - { - PyErr_SetString(PyExc_TypeError, - "Invalid sequence element"); - throw_error_already_set(); - } - } - } - - ProxyHandler::base_replace_indexes(container, from, to, - temp.end()-temp.begin()); - DerivedPolicies::set_slice(container, from, to, - temp.begin(), temp.end()); - } - } - } - - static void - base_delete_slice(Container& container, PySliceObject* slice) - { - Index from, to; - base_get_slice_data(container, slice, from, to); - ProxyHandler::base_erase_indexes(container, from, to); - DerivedPolicies::delete_slice(container, from, to); - } - }; - - template < - class Container - , class DerivedPolicies - , class ProxyHandler - , class Data - , class Index - > - struct no_slice_helper - { - static void - slicing_not_suported() - { - PyErr_SetString(PyExc_RuntimeError, "Slicing not supported"); - throw_error_already_set(); - } - - static object - base_get_slice(Container& /*container*/, PySliceObject* /*slice*/) - { - slicing_not_suported(); - return object(); - } - - static void - base_set_slice(Container& /*container*/, PySliceObject* /*slice*/, PyObject* /*v*/) - { - slicing_not_suported(); - } - - static void - base_delete_slice(Container& /*container*/, PySliceObject* /*slice*/) - { - slicing_not_suported(); - } - }; - -#ifdef BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP -}} // namespace python::detail -#endif - - template <class Container, class Index, class Policies> - inline typename Policies::data_type* - get_pointer( - python::detail::container_element<Container, Index, Policies> const& p) - { - // Get the pointer of a container_element smart pointer - return p.get(); - } - -#ifndef BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP - // Don't hide these other get_pointer overloads - using boost::python::get_pointer; - using boost::get_pointer; -}} // namespace python::detail -#endif - -} // namespace boost - -#endif // INDEXING_SUITE_DETAIL_JDG20036_HPP diff --git a/contrib/restricted/boost/boost/python/suite/indexing/indexing_suite.hpp b/contrib/restricted/boost/boost/python/suite/indexing/indexing_suite.hpp deleted file mode 100644 index 78ca74d633..0000000000 --- a/contrib/restricted/boost/boost/python/suite/indexing/indexing_suite.hpp +++ /dev/null @@ -1,295 +0,0 @@ -// (C) Copyright Joel de Guzman 2003. -// Distributed under the Boost Software License, Version 1.0. (See -// accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef INDEXING_SUITE_JDG20036_HPP -# define INDEXING_SUITE_JDG20036_HPP - -# include <boost/python/class.hpp> -# include <boost/python/def_visitor.hpp> -# include <boost/python/register_ptr_to_python.hpp> -# include <boost/python/suite/indexing/detail/indexing_suite_detail.hpp> -# include <boost/python/return_internal_reference.hpp> -# include <boost/python/iterator.hpp> -# include <boost/mpl/or.hpp> -# include <boost/mpl/not.hpp> -# include <boost/python/detail/type_traits.hpp> - -namespace boost { namespace python { - - // indexing_suite class. This class is the facade class for - // the management of C++ containers intended to be integrated - // to Python. The objective is make a C++ container look and - // feel and behave exactly as we'd expect a Python container. - // By default indexed elements are returned by proxy. This can be - // disabled by supplying *true* in the NoProxy template parameter. - // - // Derived classes provide the hooks needed by the indexing_suite - // to do its job: - // - // static data_type& - // get_item(Container& container, index_type i); - // - // static object - // get_slice(Container& container, index_type from, index_type to); - // - // static void - // set_item(Container& container, index_type i, data_type const& v); - // - // static void - // set_slice( - // Container& container, index_type from, - // index_type to, data_type const& v - // ); - // - // template <class Iter> - // static void - // set_slice(Container& container, index_type from, - // index_type to, Iter first, Iter last - // ); - // - // static void - // delete_item(Container& container, index_type i); - // - // static void - // delete_slice(Container& container, index_type from, index_type to); - // - // static size_t - // size(Container& container); - // - // template <class T> - // static bool - // contains(Container& container, T const& val); - // - // static index_type - // convert_index(Container& container, PyObject* i); - // - // static index_type - // adjust_index(index_type current, index_type from, - // index_type to, size_type len - // ); - // - // Most of these policies are self explanatory. convert_index and - // adjust_index, however, deserves some explanation. - // - // convert_index converts an Python index into a C++ index that the - // container can handle. For instance, negative indexes in Python, by - // convention, indexes from the right (e.g. C[-1] indexes the rightmost - // element in C). convert_index should handle the necessary conversion - // for the C++ container (e.g. convert -1 to C.size()-1). convert_index - // should also be able to convert the type of the index (A dynamic Python - // type) to the actual type that the C++ container expects. - // - // When a container expands or contracts, held indexes to its elements - // must be adjusted to follow the movement of data. For instance, if - // we erase 3 elements, starting from index 0 from a 5 element vector, - // what used to be at index 4 will now be at index 1: - // - // [a][b][c][d][e] ---> [d][e] - // ^ ^ - // 4 1 - // - // adjust_index takes care of the adjustment. Given a current index, - // the function should return the adjusted index when data in the - // container at index from..to is replaced by *len* elements. - // - - template < - class Container - , class DerivedPolicies - , bool NoProxy = false - , bool NoSlice = false - , class Data = typename Container::value_type - , class Index = typename Container::size_type - , class Key = typename Container::value_type - > - class indexing_suite - : public def_visitor< - indexing_suite< - Container - , DerivedPolicies - , NoProxy - , NoSlice - , Data - , Index - , Key - > > - { - private: - - typedef mpl::or_< - mpl::bool_<NoProxy> - , mpl::not_<is_class<Data> > - , typename mpl::or_< - detail::is_same<Data, std::string> - , detail::is_same<Data, std::complex<float> > - , detail::is_same<Data, std::complex<double> > - , detail::is_same<Data, std::complex<long double> > >::type> - no_proxy; - - typedef detail::container_element<Container, Index, DerivedPolicies> - container_element_t; - - typedef return_internal_reference<> return_policy; - - typedef typename mpl::if_< - no_proxy - , iterator<Container> - , iterator<Container, return_policy> >::type - def_iterator; - - typedef typename mpl::if_< - no_proxy - , detail::no_proxy_helper< - Container - , DerivedPolicies - , container_element_t - , Index> - , detail::proxy_helper< - Container - , DerivedPolicies - , container_element_t - , Index> >::type - proxy_handler; - - typedef typename mpl::if_< - mpl::bool_<NoSlice> - , detail::no_slice_helper< - Container - , DerivedPolicies - , proxy_handler - , Data - , Index> - , detail::slice_helper< - Container - , DerivedPolicies - , proxy_handler - , Data - , Index> >::type - slice_handler; - - public: - - template <class Class> - void visit(Class& cl) const - { - // Hook into the class_ generic visitation .def function - proxy_handler::register_container_element(); - - cl - .def("__len__", base_size) - .def("__setitem__", &base_set_item) - .def("__delitem__", &base_delete_item) - .def("__getitem__", &base_get_item) - .def("__contains__", &base_contains) - .def("__iter__", def_iterator()) - ; - - DerivedPolicies::extension_def(cl); - } - - template <class Class> - static void - extension_def(Class&/* cl*/) - { - // default. - // no more extensions - } - - private: - - static object - base_get_item(back_reference<Container&> container, PyObject* i) - { - if (PySlice_Check(i)) - return slice_handler::base_get_slice( - container.get(), static_cast<PySliceObject*>(static_cast<void*>(i))); - - return proxy_handler::base_get_item_(container, i); - } - - static void - base_set_item(Container& container, PyObject* i, PyObject* v) - { - if (PySlice_Check(i)) - { - slice_handler::base_set_slice(container, - static_cast<PySliceObject*>(static_cast<void*>(i)), v); - } - else - { - extract<Data&> elem(v); - // try if elem is an exact Data - if (elem.check()) - { - DerivedPolicies:: - set_item(container, - DerivedPolicies:: - convert_index(container, i), elem()); - } - else - { - // try to convert elem to Data - extract<Data> elem(v); - if (elem.check()) - { - DerivedPolicies:: - set_item(container, - DerivedPolicies:: - convert_index(container, i), elem()); - } - else - { - PyErr_SetString(PyExc_TypeError, "Invalid assignment"); - throw_error_already_set(); - } - } - } - } - - static void - base_delete_item(Container& container, PyObject* i) - { - if (PySlice_Check(i)) - { - slice_handler::base_delete_slice( - container, static_cast<PySliceObject*>(static_cast<void*>(i))); - return; - } - - Index index = DerivedPolicies::convert_index(container, i); - proxy_handler::base_erase_index(container, index, mpl::bool_<NoSlice>()); - DerivedPolicies::delete_item(container, index); - } - - static size_t - base_size(Container& container) - { - return DerivedPolicies::size(container); - } - - static bool - base_contains(Container& container, PyObject* key) - { - extract<Key const&> x(key); - // try if key is an exact Key type - if (x.check()) - { - return DerivedPolicies::contains(container, x()); - } - else - { - // try to convert key to Key type - extract<Key> x(key); - if (x.check()) - return DerivedPolicies::contains(container, x()); - else - return false; - } - } - }; - -}} // namespace boost::python - -#endif // INDEXING_SUITE_JDG20036_HPP diff --git a/contrib/restricted/boost/boost/python/suite/indexing/map_indexing_suite.hpp b/contrib/restricted/boost/boost/python/suite/indexing/map_indexing_suite.hpp deleted file mode 100644 index 7fbad4cace..0000000000 --- a/contrib/restricted/boost/boost/python/suite/indexing/map_indexing_suite.hpp +++ /dev/null @@ -1,181 +0,0 @@ -// (C) Copyright Joel de Guzman 2003. -// Distributed under the Boost Software License, Version 1.0. (See -// accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef MAP_INDEXING_SUITE_JDG20038_HPP -# define MAP_INDEXING_SUITE_JDG20038_HPP - -# include <boost/python/suite/indexing/indexing_suite.hpp> -# include <boost/python/iterator.hpp> -# include <boost/python/call_method.hpp> -# include <boost/python/tuple.hpp> - -namespace boost { namespace python { - - // Forward declaration - template <class Container, bool NoProxy, class DerivedPolicies> - class map_indexing_suite; - - namespace detail - { - template <class Container, bool NoProxy> - class final_map_derived_policies - : public map_indexing_suite<Container, - NoProxy, final_map_derived_policies<Container, NoProxy> > {}; - } - - // The map_indexing_suite class is a predefined indexing_suite derived - // class for wrapping std::map (and std::map like) classes. It provides - // all the policies required by the indexing_suite (see indexing_suite). - // Example usage: - // - // class X {...}; - // - // ... - // - // class_<std::map<std::string, X> >("XMap") - // .def(map_indexing_suite<std::map<std::string, X> >()) - // ; - // - // By default indexed elements are returned by proxy. This can be - // disabled by supplying *true* in the NoProxy template parameter. - // - template < - class Container, - bool NoProxy = false, - class DerivedPolicies - = detail::final_map_derived_policies<Container, NoProxy> > - class map_indexing_suite - : public indexing_suite< - Container - , DerivedPolicies - , NoProxy - , true - , typename Container::value_type::second_type - , typename Container::key_type - , typename Container::key_type - > - { - public: - - typedef typename Container::value_type value_type; - typedef typename Container::value_type::second_type data_type; - typedef typename Container::key_type key_type; - typedef typename Container::key_type index_type; - typedef typename Container::size_type size_type; - typedef typename Container::difference_type difference_type; - - template <class Class> - static void - extension_def(Class& cl) - { - // Wrap the map's element (value_type) - std::string elem_name = "map_indexing_suite_"; - object class_name(cl.attr("__name__")); - extract<std::string> class_name_extractor(class_name); - elem_name += class_name_extractor(); - elem_name += "_entry"; - - typedef typename mpl::if_< - mpl::and_<is_class<data_type>, mpl::bool_<!NoProxy> > - , return_internal_reference<> - , default_call_policies - >::type get_data_return_policy; - - class_<value_type>(elem_name.c_str()) - .def("__repr__", &DerivedPolicies::print_elem) - .def("data", &DerivedPolicies::get_data, get_data_return_policy()) - .def("key", &DerivedPolicies::get_key) - ; - } - - static object - print_elem(typename Container::value_type const& e) - { - return "(%s, %s)" % python::make_tuple(e.first, e.second); - } - - static - typename mpl::if_< - mpl::and_<is_class<data_type>, mpl::bool_<!NoProxy> > - , data_type& - , data_type - >::type - get_data(typename Container::value_type& e) - { - return e.second; - } - - static typename Container::key_type - get_key(typename Container::value_type& e) - { - return e.first; - } - - static data_type& - get_item(Container& container, index_type i_) - { - typename Container::iterator i = container.find(i_); - if (i == container.end()) - { - PyErr_SetString(PyExc_KeyError, "Invalid key"); - throw_error_already_set(); - } - return i->second; - } - - static void - set_item(Container& container, index_type i, data_type const& v) - { - container[i] = v; - } - - static void - delete_item(Container& container, index_type i) - { - container.erase(i); - } - - static size_t - size(Container& container) - { - return container.size(); - } - - static bool - contains(Container& container, key_type const& key) - { - return container.find(key) != container.end(); - } - - static bool - compare_index(Container& container, index_type a, index_type b) - { - return container.key_comp()(a, b); - } - - static index_type - convert_index(Container& /*container*/, PyObject* i_) - { - extract<key_type const&> i(i_); - if (i.check()) - { - return i(); - } - else - { - extract<key_type> i(i_); - if (i.check()) - return i(); - } - - PyErr_SetString(PyExc_TypeError, "Invalid index type"); - throw_error_already_set(); - return index_type(); - } - }; - -}} // namespace boost::python - -#endif // MAP_INDEXING_SUITE_JDG20038_HPP diff --git a/contrib/restricted/boost/boost/python/suite/indexing/vector_indexing_suite.hpp b/contrib/restricted/boost/boost/python/suite/indexing/vector_indexing_suite.hpp deleted file mode 100644 index 606f24a4af..0000000000 --- a/contrib/restricted/boost/boost/python/suite/indexing/vector_indexing_suite.hpp +++ /dev/null @@ -1,246 +0,0 @@ -// (C) Copyright Joel de Guzman 2003. -// Distributed under the Boost Software License, Version 1.0. (See -// accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef VECTOR_INDEXING_SUITE_JDG20036_HPP -# define VECTOR_INDEXING_SUITE_JDG20036_HPP - -#if defined(__GNUC__) - #pragma GCC system_header -#endif - -# include <boost/python/suite/indexing/indexing_suite.hpp> -# include <boost/python/suite/indexing/container_utils.hpp> -# include <boost/python/iterator.hpp> - -namespace boost { namespace python { - - // Forward declaration - template <class Container, bool NoProxy, class DerivedPolicies> - class vector_indexing_suite; - - namespace detail - { - template <class Container, bool NoProxy> - class final_vector_derived_policies - : public vector_indexing_suite<Container, - NoProxy, final_vector_derived_policies<Container, NoProxy> > {}; - } - - // The vector_indexing_suite class is a predefined indexing_suite derived - // class for wrapping std::vector (and std::vector like) classes. It provides - // all the policies required by the indexing_suite (see indexing_suite). - // Example usage: - // - // class X {...}; - // - // ... - // - // class_<std::vector<X> >("XVec") - // .def(vector_indexing_suite<std::vector<X> >()) - // ; - // - // By default indexed elements are returned by proxy. This can be - // disabled by supplying *true* in the NoProxy template parameter. - // - template < - class Container, - bool NoProxy = false, - class DerivedPolicies - = detail::final_vector_derived_policies<Container, NoProxy> > - class vector_indexing_suite - : public indexing_suite<Container, DerivedPolicies, NoProxy> - { - public: - - typedef typename Container::value_type data_type; - typedef typename Container::value_type key_type; - typedef typename Container::size_type index_type; - typedef typename Container::size_type size_type; - typedef typename Container::difference_type difference_type; - - template <class Class> - static void - extension_def(Class& cl) - { - cl - .def("append", &base_append) - .def("extend", &base_extend) - ; - } - - static - typename mpl::if_< - is_class<data_type> - , data_type& - , data_type - >::type - get_item(Container& container, index_type i) - { - return container[i]; - } - - static object - get_slice(Container& container, index_type from, index_type to) - { - if (from > to) - return object(Container()); - return object(Container(container.begin()+from, container.begin()+to)); - } - - static void - set_item(Container& container, index_type i, data_type const& v) - { - container[i] = v; - } - - static void - set_slice(Container& container, index_type from, - index_type to, data_type const& v) - { - if (from > to) { - return; - } - else { - container.erase(container.begin()+from, container.begin()+to); - container.insert(container.begin()+from, v); - } - } - - template <class Iter> - static void - set_slice(Container& container, index_type from, - index_type to, Iter first, Iter last) - { - if (from > to) { - container.insert(container.begin()+from, first, last); - } - else { - container.erase(container.begin()+from, container.begin()+to); - container.insert(container.begin()+from, first, last); - } - } - - static void - delete_item(Container& container, index_type i) - { - container.erase(container.begin()+i); - } - - static void - delete_slice(Container& container, index_type from, index_type to) - { - if (from > to) { - // A null-op. - return; - } - container.erase(container.begin()+from, container.begin()+to); - } - - static size_t - size(Container& container) - { - return container.size(); - } - - static bool - contains(Container& container, key_type const& key) - { - return std::find(container.begin(), container.end(), key) - != container.end(); - } - - static index_type - get_min_index(Container& /*container*/) - { - return 0; - } - - static index_type - get_max_index(Container& container) - { - return container.size(); - } - - static bool - compare_index(Container& /*container*/, index_type a, index_type b) - { - return a < b; - } - - static index_type - convert_index(Container& container, PyObject* i_) - { - extract<long> i(i_); - if (i.check()) - { - long index = i(); - if (index < 0) - index += DerivedPolicies::size(container); - if (index >= long(container.size()) || index < 0) - { - PyErr_SetString(PyExc_IndexError, "Index out of range"); - throw_error_already_set(); - } - return index; - } - - PyErr_SetString(PyExc_TypeError, "Invalid index type"); - throw_error_already_set(); - return index_type(); - } - - static void - append(Container& container, data_type const& v) - { - container.push_back(v); - } - - template <class Iter> - static void - extend(Container& container, Iter first, Iter last) - { - container.insert(container.end(), first, last); - } - - private: - - static void - base_append(Container& container, object v) - { - extract<data_type&> elem(v); - // try if elem is an exact Data - if (elem.check()) - { - DerivedPolicies::append(container, elem()); - } - else - { - // try to convert elem to data_type - extract<data_type> elem(v); - if (elem.check()) - { - DerivedPolicies::append(container, elem()); - } - else - { - PyErr_SetString(PyExc_TypeError, - "Attempting to append an invalid type"); - throw_error_already_set(); - } - } - } - - static void - base_extend(Container& container, object v) - { - std::vector<data_type> temp; - container_utils::extend_container(temp, v); - DerivedPolicies::extend(container, temp.begin(), temp.end()); - } - }; - -}} // namespace boost::python - -#endif // VECTOR_INDEXING_SUITE_JDG20036_HPP diff --git a/contrib/restricted/boost/python/LICENSE_1_0.txt b/contrib/restricted/boost/python/LICENSE_1_0.txt new file mode 100644 index 0000000000..36b7cd93cd --- /dev/null +++ b/contrib/restricted/boost/python/LICENSE_1_0.txt @@ -0,0 +1,23 @@ +Boost Software License - Version 1.0 - August 17th, 2003 + +Permission is hereby granted, free of charge, to any person or organization +obtaining a copy of the software and accompanying documentation covered by +this license (the "Software") to use, reproduce, display, distribute, +execute, and transmit the Software, and to prepare derivative works of the +Software, and to permit third-parties to whom the Software is furnished to +do so, all subject to the following: + +The copyright notices in the Software and this entire statement, including +the above license grant, this restriction and the following disclaimer, +must be included in all copies of the Software, in whole or in part, and +all derivative works of the Software, unless such copies or derivative +works are solely in the form of machine-executable object code generated by +a source language processor. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT +SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE +FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. diff --git a/contrib/restricted/boost/python/README.md b/contrib/restricted/boost/python/README.md new file mode 100644 index 0000000000..c692bb8a66 --- /dev/null +++ b/contrib/restricted/boost/python/README.md @@ -0,0 +1,57 @@ +![logo](https://raw.githubusercontent.com/boostorg/python/develop/doc/images/bpl.png) + +# Synopsis + +Welcome to Boost.Python, a C++ library which enables seamless interoperability between C++ and the Python programming language. The library includes support for: + +* References and Pointers +* Globally Registered Type Coercions +* Automatic Cross-Module Type Conversions +* Efficient Function Overloading +* C++ to Python Exception Translation +* Default Arguments +* Keyword Arguments +* Manipulating Python objects in C++ +* Exporting C++ Iterators as Python Iterators +* Documentation Strings + +See the [Boost.Python](http://boostorg.github.io/python) documentation for details. + +**Hint :** Check out the [development version](http://boostorg.github.io/python/develop) of the documentation to see work in progress. + +# Building ![Build Status](https://travis-ci.org/boostorg/python.svg?branch=develop) + +While Boost.Python is part of the Boost C++ Libraries super-project, and thus can be compiled as part of Boost, it can also be compiled and installed stand-alone, i.e. against a pre-installed Boost package. + +## Prerequisites + +* [Python](http://www.python.org) +* [Boost](http://www.boost.org) +* [Faber](https://stefanseefeld.github.io/faber) + +## Build + +Run + +``` +faber +``` +to build the library. + +## Test + +Run + +``` +faber test.report +``` +to run the tests. + +## Build docs + +Run + +``` +faber doc.html +``` +to build the documentation. diff --git a/contrib/restricted/boost/boost/python.hpp b/contrib/restricted/boost/python/include/boost/python.hpp index e484034103..e484034103 100644 --- a/contrib/restricted/boost/boost/python.hpp +++ b/contrib/restricted/boost/python/include/boost/python.hpp diff --git a/contrib/restricted/boost/boost/python/arg_from_python.hpp b/contrib/restricted/boost/python/include/boost/python/arg_from_python.hpp index 983726b065..983726b065 100644 --- a/contrib/restricted/boost/boost/python/arg_from_python.hpp +++ b/contrib/restricted/boost/python/include/boost/python/arg_from_python.hpp diff --git a/contrib/restricted/boost/boost/python/args.hpp b/contrib/restricted/boost/python/include/boost/python/args.hpp index 27731bd8c9..27731bd8c9 100644 --- a/contrib/restricted/boost/boost/python/args.hpp +++ b/contrib/restricted/boost/python/include/boost/python/args.hpp diff --git a/contrib/restricted/boost/boost/python/args_fwd.hpp b/contrib/restricted/boost/python/include/boost/python/args_fwd.hpp index 39239461b0..39239461b0 100644 --- a/contrib/restricted/boost/boost/python/args_fwd.hpp +++ b/contrib/restricted/boost/python/include/boost/python/args_fwd.hpp diff --git a/contrib/restricted/boost/boost/python/back_reference.hpp b/contrib/restricted/boost/python/include/boost/python/back_reference.hpp index e68066f7d5..e68066f7d5 100644 --- a/contrib/restricted/boost/boost/python/back_reference.hpp +++ b/contrib/restricted/boost/python/include/boost/python/back_reference.hpp diff --git a/contrib/restricted/boost/boost/python/base_type_traits.hpp b/contrib/restricted/boost/python/include/boost/python/base_type_traits.hpp index e1c6a4843f..e1c6a4843f 100644 --- a/contrib/restricted/boost/boost/python/base_type_traits.hpp +++ b/contrib/restricted/boost/python/include/boost/python/base_type_traits.hpp diff --git a/contrib/restricted/boost/boost/python/bases.hpp b/contrib/restricted/boost/python/include/boost/python/bases.hpp index efcac3f389..efcac3f389 100644 --- a/contrib/restricted/boost/boost/python/bases.hpp +++ b/contrib/restricted/boost/python/include/boost/python/bases.hpp diff --git a/contrib/restricted/boost/boost/python/borrowed.hpp b/contrib/restricted/boost/python/include/boost/python/borrowed.hpp index fd2716bfbd..fd2716bfbd 100644 --- a/contrib/restricted/boost/boost/python/borrowed.hpp +++ b/contrib/restricted/boost/python/include/boost/python/borrowed.hpp diff --git a/contrib/restricted/boost/boost/python/call.hpp b/contrib/restricted/boost/python/include/boost/python/call.hpp index 5d2d7d2341..5d2d7d2341 100644 --- a/contrib/restricted/boost/boost/python/call.hpp +++ b/contrib/restricted/boost/python/include/boost/python/call.hpp diff --git a/contrib/restricted/boost/boost/python/call_method.hpp b/contrib/restricted/boost/python/include/boost/python/call_method.hpp index 410f66820e..410f66820e 100644 --- a/contrib/restricted/boost/boost/python/call_method.hpp +++ b/contrib/restricted/boost/python/include/boost/python/call_method.hpp diff --git a/contrib/restricted/boost/boost/python/cast.hpp b/contrib/restricted/boost/python/include/boost/python/cast.hpp index c04defad95..c0dd229e84 100644 --- a/contrib/restricted/boost/boost/python/cast.hpp +++ b/contrib/restricted/boost/python/include/boost/python/cast.hpp @@ -5,10 +5,6 @@ #ifndef CAST_DWA200269_HPP # define CAST_DWA200269_HPP -#if defined(__GNUC__) - #pragma GCC system_header -#endif - # include <boost/python/detail/prefix.hpp> # include <boost/python/detail/type_traits.hpp> diff --git a/contrib/restricted/boost/boost/python/class.hpp b/contrib/restricted/boost/python/include/boost/python/class.hpp index 8a3fb5075f..77f915ba0a 100644 --- a/contrib/restricted/boost/boost/python/class.hpp +++ b/contrib/restricted/boost/python/include/boost/python/class.hpp @@ -5,10 +5,6 @@ #ifndef CLASS_DWA200216_HPP # define CLASS_DWA200216_HPP -#if defined(__GNUC__) - #pragma GCC system_header -#endif - # include <boost/python/detail/prefix.hpp> # include <boost/noncopyable.hpp> diff --git a/contrib/restricted/boost/boost/python/class_fwd.hpp b/contrib/restricted/boost/python/include/boost/python/class_fwd.hpp index 528e18a1dc..528e18a1dc 100644 --- a/contrib/restricted/boost/boost/python/class_fwd.hpp +++ b/contrib/restricted/boost/python/include/boost/python/class_fwd.hpp diff --git a/contrib/restricted/boost/boost/python/converter/arg_from_python.hpp b/contrib/restricted/boost/python/include/boost/python/converter/arg_from_python.hpp index 0c0daabc1f..0c0daabc1f 100644 --- a/contrib/restricted/boost/boost/python/converter/arg_from_python.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/arg_from_python.hpp diff --git a/contrib/restricted/boost/boost/python/converter/arg_to_python.hpp b/contrib/restricted/boost/python/include/boost/python/converter/arg_to_python.hpp index bbecae72e5..bbecae72e5 100644 --- a/contrib/restricted/boost/boost/python/converter/arg_to_python.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/arg_to_python.hpp diff --git a/contrib/restricted/boost/boost/python/converter/arg_to_python_base.hpp b/contrib/restricted/boost/python/include/boost/python/converter/arg_to_python_base.hpp index c66ce9c3e0..c66ce9c3e0 100644 --- a/contrib/restricted/boost/boost/python/converter/arg_to_python_base.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/arg_to_python_base.hpp diff --git a/contrib/restricted/boost/boost/python/converter/as_to_python_function.hpp b/contrib/restricted/boost/python/include/boost/python/converter/as_to_python_function.hpp index 19a3efaafc..19a3efaafc 100644 --- a/contrib/restricted/boost/boost/python/converter/as_to_python_function.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/as_to_python_function.hpp diff --git a/contrib/restricted/boost/boost/python/converter/builtin_converters.hpp b/contrib/restricted/boost/python/include/boost/python/converter/builtin_converters.hpp index c2e01c03d3..c2e01c03d3 100644 --- a/contrib/restricted/boost/boost/python/converter/builtin_converters.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/builtin_converters.hpp diff --git a/contrib/restricted/boost/boost/python/converter/constructor_function.hpp b/contrib/restricted/boost/python/include/boost/python/converter/constructor_function.hpp index 814aa7d763..814aa7d763 100644 --- a/contrib/restricted/boost/boost/python/converter/constructor_function.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/constructor_function.hpp diff --git a/contrib/restricted/boost/boost/python/converter/context_result_converter.hpp b/contrib/restricted/boost/python/include/boost/python/converter/context_result_converter.hpp index beb7e9f098..beb7e9f098 100644 --- a/contrib/restricted/boost/boost/python/converter/context_result_converter.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/context_result_converter.hpp diff --git a/contrib/restricted/boost/boost/python/converter/convertible_function.hpp b/contrib/restricted/boost/python/include/boost/python/converter/convertible_function.hpp index 4b29fbb00b..4b29fbb00b 100644 --- a/contrib/restricted/boost/boost/python/converter/convertible_function.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/convertible_function.hpp diff --git a/contrib/restricted/boost/boost/python/converter/from_python.hpp b/contrib/restricted/boost/python/include/boost/python/converter/from_python.hpp index b2f24b3519..b2f24b3519 100644 --- a/contrib/restricted/boost/boost/python/converter/from_python.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/from_python.hpp diff --git a/contrib/restricted/boost/boost/python/converter/implicit.hpp b/contrib/restricted/boost/python/include/boost/python/converter/implicit.hpp index 8bbbfd5ac1..8bbbfd5ac1 100644 --- a/contrib/restricted/boost/boost/python/converter/implicit.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/implicit.hpp diff --git a/contrib/restricted/boost/boost/python/converter/obj_mgr_arg_from_python.hpp b/contrib/restricted/boost/python/include/boost/python/converter/obj_mgr_arg_from_python.hpp index cd4e1e0ea8..cd4e1e0ea8 100644 --- a/contrib/restricted/boost/boost/python/converter/obj_mgr_arg_from_python.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/obj_mgr_arg_from_python.hpp diff --git a/contrib/restricted/boost/boost/python/converter/object_manager.hpp b/contrib/restricted/boost/python/include/boost/python/converter/object_manager.hpp index b2271a7ea2..b2271a7ea2 100644 --- a/contrib/restricted/boost/boost/python/converter/object_manager.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/object_manager.hpp diff --git a/contrib/restricted/boost/boost/python/converter/pointer_type_id.hpp b/contrib/restricted/boost/python/include/boost/python/converter/pointer_type_id.hpp index 49eeda42cb..49eeda42cb 100644 --- a/contrib/restricted/boost/boost/python/converter/pointer_type_id.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/pointer_type_id.hpp diff --git a/contrib/restricted/boost/boost/python/converter/pyobject_traits.hpp b/contrib/restricted/boost/python/include/boost/python/converter/pyobject_traits.hpp index 43e384af8d..43e384af8d 100644 --- a/contrib/restricted/boost/boost/python/converter/pyobject_traits.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/pyobject_traits.hpp diff --git a/contrib/restricted/boost/boost/python/converter/pyobject_type.hpp b/contrib/restricted/boost/python/include/boost/python/converter/pyobject_type.hpp index bde39e8057..bde39e8057 100644 --- a/contrib/restricted/boost/boost/python/converter/pyobject_type.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/pyobject_type.hpp diff --git a/contrib/restricted/boost/boost/python/converter/pytype_function.hpp b/contrib/restricted/boost/python/include/boost/python/converter/pytype_function.hpp index 8e0a4e7995..8e0a4e7995 100644 --- a/contrib/restricted/boost/boost/python/converter/pytype_function.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/pytype_function.hpp diff --git a/contrib/restricted/boost/boost/python/converter/pytype_object_mgr_traits.hpp b/contrib/restricted/boost/python/include/boost/python/converter/pytype_object_mgr_traits.hpp index 8f5b2b7677..8f5b2b7677 100644 --- a/contrib/restricted/boost/boost/python/converter/pytype_object_mgr_traits.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/pytype_object_mgr_traits.hpp diff --git a/contrib/restricted/boost/boost/python/converter/registered.hpp b/contrib/restricted/boost/python/include/boost/python/converter/registered.hpp index 98013052ec..98013052ec 100644 --- a/contrib/restricted/boost/boost/python/converter/registered.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/registered.hpp diff --git a/contrib/restricted/boost/boost/python/converter/registered_pointee.hpp b/contrib/restricted/boost/python/include/boost/python/converter/registered_pointee.hpp index 28b2988c7f..28b2988c7f 100644 --- a/contrib/restricted/boost/boost/python/converter/registered_pointee.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/registered_pointee.hpp diff --git a/contrib/restricted/boost/boost/python/converter/registrations.hpp b/contrib/restricted/boost/python/include/boost/python/converter/registrations.hpp index 7ef74e8f40..7ef74e8f40 100644 --- a/contrib/restricted/boost/boost/python/converter/registrations.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/registrations.hpp diff --git a/contrib/restricted/boost/boost/python/converter/registry.hpp b/contrib/restricted/boost/python/include/boost/python/converter/registry.hpp index 368adcc61d..368adcc61d 100644 --- a/contrib/restricted/boost/boost/python/converter/registry.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/registry.hpp diff --git a/contrib/restricted/boost/boost/python/converter/return_from_python.hpp b/contrib/restricted/boost/python/include/boost/python/converter/return_from_python.hpp index a995a2905a..a995a2905a 100644 --- a/contrib/restricted/boost/boost/python/converter/return_from_python.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/return_from_python.hpp diff --git a/contrib/restricted/boost/boost/python/converter/rvalue_from_python_data.hpp b/contrib/restricted/boost/python/include/boost/python/converter/rvalue_from_python_data.hpp index acb38f8498..acb38f8498 100644 --- a/contrib/restricted/boost/boost/python/converter/rvalue_from_python_data.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/rvalue_from_python_data.hpp diff --git a/contrib/restricted/boost/boost/python/converter/shared_ptr_deleter.hpp b/contrib/restricted/boost/python/include/boost/python/converter/shared_ptr_deleter.hpp index 926508d00e..926508d00e 100644 --- a/contrib/restricted/boost/boost/python/converter/shared_ptr_deleter.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/shared_ptr_deleter.hpp diff --git a/contrib/restricted/boost/boost/python/converter/shared_ptr_from_python.hpp b/contrib/restricted/boost/python/include/boost/python/converter/shared_ptr_from_python.hpp index bb2ae863ff..bb2ae863ff 100644 --- a/contrib/restricted/boost/boost/python/converter/shared_ptr_from_python.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/shared_ptr_from_python.hpp diff --git a/contrib/restricted/boost/boost/python/converter/shared_ptr_to_python.hpp b/contrib/restricted/boost/python/include/boost/python/converter/shared_ptr_to_python.hpp index 02649d406e..02649d406e 100644 --- a/contrib/restricted/boost/boost/python/converter/shared_ptr_to_python.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/shared_ptr_to_python.hpp diff --git a/contrib/restricted/boost/boost/python/converter/to_python_function_type.hpp b/contrib/restricted/boost/python/include/boost/python/converter/to_python_function_type.hpp index cccd014d68..cccd014d68 100644 --- a/contrib/restricted/boost/boost/python/converter/to_python_function_type.hpp +++ b/contrib/restricted/boost/python/include/boost/python/converter/to_python_function_type.hpp diff --git a/contrib/restricted/boost/boost/python/copy_const_reference.hpp b/contrib/restricted/boost/python/include/boost/python/copy_const_reference.hpp index 55bede136f..55bede136f 100644 --- a/contrib/restricted/boost/boost/python/copy_const_reference.hpp +++ b/contrib/restricted/boost/python/include/boost/python/copy_const_reference.hpp diff --git a/contrib/restricted/boost/boost/python/copy_non_const_reference.hpp b/contrib/restricted/boost/python/include/boost/python/copy_non_const_reference.hpp index 15fef62d67..15fef62d67 100644 --- a/contrib/restricted/boost/boost/python/copy_non_const_reference.hpp +++ b/contrib/restricted/boost/python/include/boost/python/copy_non_const_reference.hpp diff --git a/contrib/restricted/boost/boost/python/data_members.hpp b/contrib/restricted/boost/python/include/boost/python/data_members.hpp index 989f7d7f93..989f7d7f93 100644 --- a/contrib/restricted/boost/boost/python/data_members.hpp +++ b/contrib/restricted/boost/python/include/boost/python/data_members.hpp diff --git a/contrib/restricted/boost/boost/python/def.hpp b/contrib/restricted/boost/python/include/boost/python/def.hpp index 6ba5652869..fe2c65f938 100644 --- a/contrib/restricted/boost/boost/python/def.hpp +++ b/contrib/restricted/boost/python/include/boost/python/def.hpp @@ -5,10 +5,6 @@ #ifndef DEF_DWA200292_HPP # define DEF_DWA200292_HPP -#if defined(__GNUC__) - #pragma GCC system_header -#endif - # include <boost/python/detail/prefix.hpp> # include <boost/python/object_fwd.hpp> diff --git a/contrib/restricted/boost/boost/python/def_visitor.hpp b/contrib/restricted/boost/python/include/boost/python/def_visitor.hpp index 9c8907cd6f..9c8907cd6f 100644 --- a/contrib/restricted/boost/boost/python/def_visitor.hpp +++ b/contrib/restricted/boost/python/include/boost/python/def_visitor.hpp diff --git a/contrib/restricted/boost/boost/python/default_call_policies.hpp b/contrib/restricted/boost/python/include/boost/python/default_call_policies.hpp index c882257348..c882257348 100644 --- a/contrib/restricted/boost/boost/python/default_call_policies.hpp +++ b/contrib/restricted/boost/python/include/boost/python/default_call_policies.hpp diff --git a/contrib/restricted/boost/boost/python/detail/borrowed_ptr.hpp b/contrib/restricted/boost/python/include/boost/python/detail/borrowed_ptr.hpp index 7d78739ed9..7d78739ed9 100644 --- a/contrib/restricted/boost/boost/python/detail/borrowed_ptr.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/borrowed_ptr.hpp diff --git a/contrib/restricted/boost/boost/python/detail/caller.hpp b/contrib/restricted/boost/python/include/boost/python/detail/caller.hpp index 1bd30bfb5a..1bd30bfb5a 100644 --- a/contrib/restricted/boost/boost/python/detail/caller.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/caller.hpp diff --git a/contrib/restricted/boost/boost/python/detail/config.hpp b/contrib/restricted/boost/python/include/boost/python/detail/config.hpp index acf588311f..acf588311f 100644 --- a/contrib/restricted/boost/boost/python/detail/config.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/config.hpp diff --git a/contrib/restricted/boost/boost/python/detail/construct.hpp b/contrib/restricted/boost/python/include/boost/python/detail/construct.hpp index e69fbc7538..e69fbc7538 100644 --- a/contrib/restricted/boost/boost/python/detail/construct.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/construct.hpp diff --git a/contrib/restricted/boost/boost/python/detail/convertible.hpp b/contrib/restricted/boost/python/include/boost/python/detail/convertible.hpp index 1ff350ec24..1ff350ec24 100644 --- a/contrib/restricted/boost/boost/python/detail/convertible.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/convertible.hpp diff --git a/contrib/restricted/boost/boost/python/detail/copy_ctor_mutates_rhs.hpp b/contrib/restricted/boost/python/include/boost/python/detail/copy_ctor_mutates_rhs.hpp index 4ca8d03911..4ca8d03911 100644 --- a/contrib/restricted/boost/boost/python/detail/copy_ctor_mutates_rhs.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/copy_ctor_mutates_rhs.hpp diff --git a/contrib/restricted/boost/boost/python/detail/cv_category.hpp b/contrib/restricted/boost/python/include/boost/python/detail/cv_category.hpp index eb5a8eb9da..eb5a8eb9da 100644 --- a/contrib/restricted/boost/boost/python/detail/cv_category.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/cv_category.hpp diff --git a/contrib/restricted/boost/boost/python/detail/dealloc.hpp b/contrib/restricted/boost/python/include/boost/python/detail/dealloc.hpp index ce07926ee1..ce07926ee1 100644 --- a/contrib/restricted/boost/boost/python/detail/dealloc.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/dealloc.hpp diff --git a/contrib/restricted/boost/boost/python/detail/decorated_type_id.hpp b/contrib/restricted/boost/python/include/boost/python/detail/decorated_type_id.hpp index 2596f3104a..2596f3104a 100644 --- a/contrib/restricted/boost/boost/python/detail/decorated_type_id.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/decorated_type_id.hpp diff --git a/contrib/restricted/boost/boost/python/detail/decref_guard.hpp b/contrib/restricted/boost/python/include/boost/python/detail/decref_guard.hpp index d713e0a604..d713e0a604 100644 --- a/contrib/restricted/boost/boost/python/detail/decref_guard.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/decref_guard.hpp diff --git a/contrib/restricted/boost/boost/python/detail/def_helper.hpp b/contrib/restricted/boost/python/include/boost/python/detail/def_helper.hpp index 24f9c5cdb2..24f9c5cdb2 100644 --- a/contrib/restricted/boost/boost/python/detail/def_helper.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/def_helper.hpp diff --git a/contrib/restricted/boost/boost/python/detail/def_helper_fwd.hpp b/contrib/restricted/boost/python/include/boost/python/detail/def_helper_fwd.hpp index 31c22e97a3..31c22e97a3 100644 --- a/contrib/restricted/boost/boost/python/detail/def_helper_fwd.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/def_helper_fwd.hpp diff --git a/contrib/restricted/boost/boost/python/detail/defaults_def.hpp b/contrib/restricted/boost/python/include/boost/python/detail/defaults_def.hpp index 773b79937e..607775842b 100644 --- a/contrib/restricted/boost/boost/python/detail/defaults_def.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/defaults_def.hpp @@ -11,10 +11,6 @@ #ifndef DEFAULTS_DEF_JDG20020811_HPP #define DEFAULTS_DEF_JDG20020811_HPP -#if defined(__GNUC__) - #pragma GCC system_header -#endif - #include <boost/python/detail/defaults_gen.hpp> #include <boost/python/detail/type_traits.hpp> #include <boost/mpl/front.hpp> @@ -93,7 +89,7 @@ namespace detail NameSpaceT& name_space , char const* name , Func f - , keyword_range const& kw // ignored + , keyword_range const& /* kw */ // ignored , CallPolicies const& policies , char const* doc , module* diff --git a/contrib/restricted/boost/boost/python/detail/defaults_gen.hpp b/contrib/restricted/boost/python/include/boost/python/detail/defaults_gen.hpp index 88beeedb02..88beeedb02 100644 --- a/contrib/restricted/boost/boost/python/detail/defaults_gen.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/defaults_gen.hpp diff --git a/contrib/restricted/boost/boost/python/detail/dependent.hpp b/contrib/restricted/boost/python/include/boost/python/detail/dependent.hpp index 70392c4d78..70392c4d78 100644 --- a/contrib/restricted/boost/boost/python/detail/dependent.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/dependent.hpp diff --git a/contrib/restricted/boost/boost/python/detail/destroy.hpp b/contrib/restricted/boost/python/include/boost/python/detail/destroy.hpp index d35b2b536e..d35b2b536e 100644 --- a/contrib/restricted/boost/boost/python/detail/destroy.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/destroy.hpp diff --git a/contrib/restricted/boost/boost/python/detail/exception_handler.hpp b/contrib/restricted/boost/python/include/boost/python/detail/exception_handler.hpp index fdc9989836..fdc9989836 100644 --- a/contrib/restricted/boost/boost/python/detail/exception_handler.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/exception_handler.hpp diff --git a/contrib/restricted/boost/boost/python/detail/force_instantiate.hpp b/contrib/restricted/boost/python/include/boost/python/detail/force_instantiate.hpp index a8901b2da7..a8901b2da7 100644 --- a/contrib/restricted/boost/boost/python/detail/force_instantiate.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/force_instantiate.hpp diff --git a/contrib/restricted/boost/boost/python/detail/indirect_traits.hpp b/contrib/restricted/boost/python/include/boost/python/detail/indirect_traits.hpp index ce8ba310a2..ce8ba310a2 100644 --- a/contrib/restricted/boost/boost/python/detail/indirect_traits.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/indirect_traits.hpp diff --git a/contrib/restricted/boost/boost/python/detail/invoke.hpp b/contrib/restricted/boost/python/include/boost/python/detail/invoke.hpp index 4c5296ff12..4c5296ff12 100644 --- a/contrib/restricted/boost/boost/python/detail/invoke.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/invoke.hpp diff --git a/contrib/restricted/boost/boost/python/detail/is_auto_ptr.hpp b/contrib/restricted/boost/python/include/boost/python/detail/is_auto_ptr.hpp index 3b8198b8dd..3b8198b8dd 100644 --- a/contrib/restricted/boost/boost/python/detail/is_auto_ptr.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/is_auto_ptr.hpp diff --git a/contrib/restricted/boost/boost/python/detail/is_shared_ptr.hpp b/contrib/restricted/boost/python/include/boost/python/detail/is_shared_ptr.hpp index 383383bc12..383383bc12 100644 --- a/contrib/restricted/boost/boost/python/detail/is_shared_ptr.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/is_shared_ptr.hpp diff --git a/contrib/restricted/boost/boost/python/detail/is_wrapper.hpp b/contrib/restricted/boost/python/include/boost/python/detail/is_wrapper.hpp index d7bce7b627..d7bce7b627 100644 --- a/contrib/restricted/boost/boost/python/detail/is_wrapper.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/is_wrapper.hpp diff --git a/contrib/restricted/boost/boost/python/detail/is_xxx.hpp b/contrib/restricted/boost/python/include/boost/python/detail/is_xxx.hpp index 9ddfafd3c0..9ddfafd3c0 100644 --- a/contrib/restricted/boost/boost/python/detail/is_xxx.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/is_xxx.hpp diff --git a/contrib/restricted/boost/boost/python/detail/make_keyword_range_fn.hpp b/contrib/restricted/boost/python/include/boost/python/detail/make_keyword_range_fn.hpp index c4795cf887..c4795cf887 100644 --- a/contrib/restricted/boost/boost/python/detail/make_keyword_range_fn.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/make_keyword_range_fn.hpp diff --git a/contrib/restricted/boost/boost/python/detail/map_entry.hpp b/contrib/restricted/boost/python/include/boost/python/detail/map_entry.hpp index 8bf1759f9f..8bf1759f9f 100644 --- a/contrib/restricted/boost/boost/python/detail/map_entry.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/map_entry.hpp diff --git a/contrib/restricted/boost/boost/python/detail/mpl_lambda.hpp b/contrib/restricted/boost/python/include/boost/python/detail/mpl_lambda.hpp index a20608e710..a20608e710 100644 --- a/contrib/restricted/boost/boost/python/detail/mpl_lambda.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/mpl_lambda.hpp diff --git a/contrib/restricted/boost/boost/python/detail/msvc_typeinfo.hpp b/contrib/restricted/boost/python/include/boost/python/detail/msvc_typeinfo.hpp index bfc84164f0..bfc84164f0 100644 --- a/contrib/restricted/boost/boost/python/detail/msvc_typeinfo.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/msvc_typeinfo.hpp diff --git a/contrib/restricted/boost/boost/python/detail/none.hpp b/contrib/restricted/boost/python/include/boost/python/detail/none.hpp index bc3337a234..bc3337a234 100644 --- a/contrib/restricted/boost/boost/python/detail/none.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/none.hpp diff --git a/contrib/restricted/boost/boost/python/detail/not_specified.hpp b/contrib/restricted/boost/python/include/boost/python/detail/not_specified.hpp index 2f7c7ad997..2f7c7ad997 100644 --- a/contrib/restricted/boost/boost/python/detail/not_specified.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/not_specified.hpp diff --git a/contrib/restricted/boost/boost/python/detail/nullary_function_adaptor.hpp b/contrib/restricted/boost/python/include/boost/python/detail/nullary_function_adaptor.hpp index 9dcc434f8e..9dcc434f8e 100644 --- a/contrib/restricted/boost/boost/python/detail/nullary_function_adaptor.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/nullary_function_adaptor.hpp diff --git a/contrib/restricted/boost/boost/python/detail/operator_id.hpp b/contrib/restricted/boost/python/include/boost/python/detail/operator_id.hpp index ecfc70f108..ecfc70f108 100644 --- a/contrib/restricted/boost/boost/python/detail/operator_id.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/operator_id.hpp diff --git a/contrib/restricted/boost/boost/python/detail/overloads_fwd.hpp b/contrib/restricted/boost/python/include/boost/python/detail/overloads_fwd.hpp index 4c7fdf292b..4c7fdf292b 100644 --- a/contrib/restricted/boost/boost/python/detail/overloads_fwd.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/overloads_fwd.hpp diff --git a/contrib/restricted/boost/boost/python/detail/prefix.hpp b/contrib/restricted/boost/python/include/boost/python/detail/prefix.hpp index 8b34ed7701..8b34ed7701 100644 --- a/contrib/restricted/boost/boost/python/detail/prefix.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/prefix.hpp diff --git a/contrib/restricted/boost/boost/python/detail/preprocessor.hpp b/contrib/restricted/boost/python/include/boost/python/detail/preprocessor.hpp index 2c1b2e84ea..2c1b2e84ea 100644 --- a/contrib/restricted/boost/boost/python/detail/preprocessor.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/preprocessor.hpp diff --git a/contrib/restricted/boost/boost/python/detail/python22_fixed.h b/contrib/restricted/boost/python/include/boost/python/detail/python22_fixed.h index 32bf941fef..32bf941fef 100644 --- a/contrib/restricted/boost/boost/python/detail/python22_fixed.h +++ b/contrib/restricted/boost/python/include/boost/python/detail/python22_fixed.h diff --git a/contrib/restricted/boost/boost/python/detail/python_type.hpp b/contrib/restricted/boost/python/include/boost/python/detail/python_type.hpp index f7630c175a..f7630c175a 100644 --- a/contrib/restricted/boost/boost/python/detail/python_type.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/python_type.hpp diff --git a/contrib/restricted/boost/boost/python/detail/raw_pyobject.hpp b/contrib/restricted/boost/python/include/boost/python/detail/raw_pyobject.hpp index 194409eda4..194409eda4 100644 --- a/contrib/restricted/boost/boost/python/detail/raw_pyobject.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/raw_pyobject.hpp diff --git a/contrib/restricted/boost/boost/python/detail/referent_storage.hpp b/contrib/restricted/boost/python/include/boost/python/detail/referent_storage.hpp index 2cddf696d5..2cddf696d5 100644 --- a/contrib/restricted/boost/boost/python/detail/referent_storage.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/referent_storage.hpp diff --git a/contrib/restricted/boost/boost/python/detail/scope.hpp b/contrib/restricted/boost/python/include/boost/python/detail/scope.hpp index 5367bbd35c..5367bbd35c 100644 --- a/contrib/restricted/boost/boost/python/detail/scope.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/scope.hpp diff --git a/contrib/restricted/boost/boost/python/detail/sfinae.hpp b/contrib/restricted/boost/python/include/boost/python/detail/sfinae.hpp index 6281875111..6281875111 100644 --- a/contrib/restricted/boost/boost/python/detail/sfinae.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/sfinae.hpp diff --git a/contrib/restricted/boost/boost/python/detail/signature.hpp b/contrib/restricted/boost/python/include/boost/python/detail/signature.hpp index 11268b92cf..11268b92cf 100644 --- a/contrib/restricted/boost/boost/python/detail/signature.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/signature.hpp diff --git a/contrib/restricted/boost/boost/python/detail/string_literal.hpp b/contrib/restricted/boost/python/include/boost/python/detail/string_literal.hpp index 0961ec7c4e..0961ec7c4e 100644 --- a/contrib/restricted/boost/boost/python/detail/string_literal.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/string_literal.hpp diff --git a/contrib/restricted/boost/boost/python/detail/target.hpp b/contrib/restricted/boost/python/include/boost/python/detail/target.hpp index 137801bb2b..137801bb2b 100644 --- a/contrib/restricted/boost/boost/python/detail/target.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/target.hpp diff --git a/contrib/restricted/boost/boost/python/detail/translate_exception.hpp b/contrib/restricted/boost/python/include/boost/python/detail/translate_exception.hpp index 877db2b2c6..877db2b2c6 100644 --- a/contrib/restricted/boost/boost/python/detail/translate_exception.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/translate_exception.hpp diff --git a/contrib/restricted/boost/boost/python/detail/type_list.hpp b/contrib/restricted/boost/python/include/boost/python/detail/type_list.hpp index 0ad3f63d84..0ad3f63d84 100644 --- a/contrib/restricted/boost/boost/python/detail/type_list.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/type_list.hpp diff --git a/contrib/restricted/boost/boost/python/detail/type_list_impl.hpp b/contrib/restricted/boost/python/include/boost/python/detail/type_list_impl.hpp index fdcfa85030..fdcfa85030 100644 --- a/contrib/restricted/boost/boost/python/detail/type_list_impl.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/type_list_impl.hpp diff --git a/contrib/restricted/boost/boost/python/detail/type_traits.hpp b/contrib/restricted/boost/python/include/boost/python/detail/type_traits.hpp index fda54c80f2..fda54c80f2 100644 --- a/contrib/restricted/boost/boost/python/detail/type_traits.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/type_traits.hpp diff --git a/contrib/restricted/boost/boost/python/detail/unwind_type.hpp b/contrib/restricted/boost/python/include/boost/python/detail/unwind_type.hpp index b81bf7c898..b81bf7c898 100644 --- a/contrib/restricted/boost/boost/python/detail/unwind_type.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/unwind_type.hpp diff --git a/contrib/restricted/boost/boost/python/detail/unwrap_type_id.hpp b/contrib/restricted/boost/python/include/boost/python/detail/unwrap_type_id.hpp index 96c1f53013..96c1f53013 100644 --- a/contrib/restricted/boost/boost/python/detail/unwrap_type_id.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/unwrap_type_id.hpp diff --git a/contrib/restricted/boost/boost/python/detail/unwrap_wrapper.hpp b/contrib/restricted/boost/python/include/boost/python/detail/unwrap_wrapper.hpp index 95bc233a72..95bc233a72 100644 --- a/contrib/restricted/boost/boost/python/detail/unwrap_wrapper.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/unwrap_wrapper.hpp diff --git a/contrib/restricted/boost/boost/python/detail/value_arg.hpp b/contrib/restricted/boost/python/include/boost/python/detail/value_arg.hpp index 2c938dacca..2c938dacca 100644 --- a/contrib/restricted/boost/boost/python/detail/value_arg.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/value_arg.hpp diff --git a/contrib/restricted/boost/boost/python/detail/value_is_shared_ptr.hpp b/contrib/restricted/boost/python/include/boost/python/detail/value_is_shared_ptr.hpp index 53e687f016..53e687f016 100644 --- a/contrib/restricted/boost/boost/python/detail/value_is_shared_ptr.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/value_is_shared_ptr.hpp diff --git a/contrib/restricted/boost/boost/python/detail/value_is_xxx.hpp b/contrib/restricted/boost/python/include/boost/python/detail/value_is_xxx.hpp index e270f89ca3..e270f89ca3 100644 --- a/contrib/restricted/boost/boost/python/detail/value_is_xxx.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/value_is_xxx.hpp diff --git a/contrib/restricted/boost/boost/python/detail/void_ptr.hpp b/contrib/restricted/boost/python/include/boost/python/detail/void_ptr.hpp index 5543b23a4a..5543b23a4a 100644 --- a/contrib/restricted/boost/boost/python/detail/void_ptr.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/void_ptr.hpp diff --git a/contrib/restricted/boost/boost/python/detail/void_return.hpp b/contrib/restricted/boost/python/include/boost/python/detail/void_return.hpp index 30db825177..30db825177 100644 --- a/contrib/restricted/boost/boost/python/detail/void_return.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/void_return.hpp diff --git a/contrib/restricted/boost/boost/python/detail/wrap_python.hpp b/contrib/restricted/boost/python/include/boost/python/detail/wrap_python.hpp index 9fdb222c68..9fdb222c68 100644 --- a/contrib/restricted/boost/boost/python/detail/wrap_python.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/wrap_python.hpp diff --git a/contrib/restricted/boost/boost/python/detail/wrapper_base.hpp b/contrib/restricted/boost/python/include/boost/python/detail/wrapper_base.hpp index 60ac99436e..60ac99436e 100644 --- a/contrib/restricted/boost/boost/python/detail/wrapper_base.hpp +++ b/contrib/restricted/boost/python/include/boost/python/detail/wrapper_base.hpp diff --git a/contrib/restricted/boost/boost/python/dict.hpp b/contrib/restricted/boost/python/include/boost/python/dict.hpp index 6fcaf14382..6fcaf14382 100644 --- a/contrib/restricted/boost/boost/python/dict.hpp +++ b/contrib/restricted/boost/python/include/boost/python/dict.hpp diff --git a/contrib/restricted/boost/boost/python/docstring_options.hpp b/contrib/restricted/boost/python/include/boost/python/docstring_options.hpp index 1914bd51a5..1914bd51a5 100644 --- a/contrib/restricted/boost/boost/python/docstring_options.hpp +++ b/contrib/restricted/boost/python/include/boost/python/docstring_options.hpp diff --git a/contrib/restricted/boost/boost/python/enum.hpp b/contrib/restricted/boost/python/include/boost/python/enum.hpp index 9631a0edc8..9631a0edc8 100644 --- a/contrib/restricted/boost/boost/python/enum.hpp +++ b/contrib/restricted/boost/python/include/boost/python/enum.hpp diff --git a/contrib/restricted/boost/boost/python/errors.hpp b/contrib/restricted/boost/python/include/boost/python/errors.hpp index 1eec6c2fe6..1eec6c2fe6 100644 --- a/contrib/restricted/boost/boost/python/errors.hpp +++ b/contrib/restricted/boost/python/include/boost/python/errors.hpp diff --git a/contrib/restricted/boost/boost/python/exception_translator.hpp b/contrib/restricted/boost/python/include/boost/python/exception_translator.hpp index 75ed0e1eec..75ed0e1eec 100644 --- a/contrib/restricted/boost/boost/python/exception_translator.hpp +++ b/contrib/restricted/boost/python/include/boost/python/exception_translator.hpp diff --git a/contrib/restricted/boost/boost/python/exec.hpp b/contrib/restricted/boost/python/include/boost/python/exec.hpp index 32a74991a7..32a74991a7 100644 --- a/contrib/restricted/boost/boost/python/exec.hpp +++ b/contrib/restricted/boost/python/include/boost/python/exec.hpp diff --git a/contrib/restricted/boost/boost/python/extract.hpp b/contrib/restricted/boost/python/include/boost/python/extract.hpp index bfdeb83ce7..bfdeb83ce7 100644 --- a/contrib/restricted/boost/boost/python/extract.hpp +++ b/contrib/restricted/boost/python/include/boost/python/extract.hpp diff --git a/contrib/restricted/boost/boost/python/handle.hpp b/contrib/restricted/boost/python/include/boost/python/handle.hpp index ee9a7cd09d..ee9a7cd09d 100644 --- a/contrib/restricted/boost/boost/python/handle.hpp +++ b/contrib/restricted/boost/python/include/boost/python/handle.hpp diff --git a/contrib/restricted/boost/boost/python/handle_fwd.hpp b/contrib/restricted/boost/python/include/boost/python/handle_fwd.hpp index 5987ec4fdb..5987ec4fdb 100644 --- a/contrib/restricted/boost/boost/python/handle_fwd.hpp +++ b/contrib/restricted/boost/python/include/boost/python/handle_fwd.hpp diff --git a/contrib/restricted/boost/boost/python/has_back_reference.hpp b/contrib/restricted/boost/python/include/boost/python/has_back_reference.hpp index 67fe24c5cf..67fe24c5cf 100644 --- a/contrib/restricted/boost/boost/python/has_back_reference.hpp +++ b/contrib/restricted/boost/python/include/boost/python/has_back_reference.hpp diff --git a/contrib/restricted/boost/boost/python/implicit.hpp b/contrib/restricted/boost/python/include/boost/python/implicit.hpp index 4d01b2fb22..4d01b2fb22 100644 --- a/contrib/restricted/boost/boost/python/implicit.hpp +++ b/contrib/restricted/boost/python/include/boost/python/implicit.hpp diff --git a/contrib/restricted/boost/boost/python/import.hpp b/contrib/restricted/boost/python/include/boost/python/import.hpp index 45c02a9366..45c02a9366 100644 --- a/contrib/restricted/boost/boost/python/import.hpp +++ b/contrib/restricted/boost/python/include/boost/python/import.hpp diff --git a/contrib/restricted/boost/boost/python/init.hpp b/contrib/restricted/boost/python/include/boost/python/init.hpp index f96b56e1d4..0ee763cc26 100644 --- a/contrib/restricted/boost/boost/python/init.hpp +++ b/contrib/restricted/boost/python/include/boost/python/init.hpp @@ -9,10 +9,6 @@ #ifndef INIT_JDG20020820_HPP #define INIT_JDG20020820_HPP -#if defined(__GNUC__) - #pragma GCC system_header -#endif - # include <boost/python/detail/prefix.hpp> #include <boost/python/detail/type_list.hpp> diff --git a/contrib/restricted/boost/boost/python/instance_holder.hpp b/contrib/restricted/boost/python/include/boost/python/instance_holder.hpp index 2ffb4bf956..2ffb4bf956 100644 --- a/contrib/restricted/boost/boost/python/instance_holder.hpp +++ b/contrib/restricted/boost/python/include/boost/python/instance_holder.hpp diff --git a/contrib/restricted/boost/boost/python/iterator.hpp b/contrib/restricted/boost/python/include/boost/python/iterator.hpp index 7c06ca2320..7c06ca2320 100644 --- a/contrib/restricted/boost/boost/python/iterator.hpp +++ b/contrib/restricted/boost/python/include/boost/python/iterator.hpp diff --git a/contrib/restricted/boost/boost/python/list.hpp b/contrib/restricted/boost/python/include/boost/python/list.hpp index 10fd40fda5..10fd40fda5 100644 --- a/contrib/restricted/boost/boost/python/list.hpp +++ b/contrib/restricted/boost/python/include/boost/python/list.hpp diff --git a/contrib/restricted/boost/boost/python/long.hpp b/contrib/restricted/boost/python/include/boost/python/long.hpp index 129c61f9e4..129c61f9e4 100644 --- a/contrib/restricted/boost/boost/python/long.hpp +++ b/contrib/restricted/boost/python/include/boost/python/long.hpp diff --git a/contrib/restricted/boost/boost/python/lvalue_from_pytype.hpp b/contrib/restricted/boost/python/include/boost/python/lvalue_from_pytype.hpp index 59d31b89cf..59d31b89cf 100644 --- a/contrib/restricted/boost/boost/python/lvalue_from_pytype.hpp +++ b/contrib/restricted/boost/python/include/boost/python/lvalue_from_pytype.hpp diff --git a/contrib/restricted/boost/boost/python/make_constructor.hpp b/contrib/restricted/boost/python/include/boost/python/make_constructor.hpp index 090da45bf4..3ec9ad5f86 100644 --- a/contrib/restricted/boost/boost/python/make_constructor.hpp +++ b/contrib/restricted/boost/python/include/boost/python/make_constructor.hpp @@ -5,10 +5,6 @@ #ifndef MAKE_CONSTRUCTOR_DWA20011221_HPP # define MAKE_CONSTRUCTOR_DWA20011221_HPP -#if defined(__GNUC__) - #pragma GCC system_header -#endif - # include <boost/python/detail/prefix.hpp> # include <boost/python/default_call_policies.hpp> diff --git a/contrib/restricted/boost/boost/python/make_function.hpp b/contrib/restricted/boost/python/include/boost/python/make_function.hpp index 7dd7c316b3..7dd7c316b3 100644 --- a/contrib/restricted/boost/boost/python/make_function.hpp +++ b/contrib/restricted/boost/python/include/boost/python/make_function.hpp diff --git a/contrib/restricted/boost/boost/python/manage_new_object.hpp b/contrib/restricted/boost/python/include/boost/python/manage_new_object.hpp index 9ff341c1ac..9ff341c1ac 100644 --- a/contrib/restricted/boost/boost/python/manage_new_object.hpp +++ b/contrib/restricted/boost/python/include/boost/python/manage_new_object.hpp diff --git a/contrib/restricted/boost/boost/python/module.hpp b/contrib/restricted/boost/python/include/boost/python/module.hpp index 8ad69f5a34..8ad69f5a34 100644 --- a/contrib/restricted/boost/boost/python/module.hpp +++ b/contrib/restricted/boost/python/include/boost/python/module.hpp diff --git a/contrib/restricted/boost/boost/python/module_init.hpp b/contrib/restricted/boost/python/include/boost/python/module_init.hpp index 7fe5a1c8a2..7fe5a1c8a2 100644 --- a/contrib/restricted/boost/boost/python/module_init.hpp +++ b/contrib/restricted/boost/python/include/boost/python/module_init.hpp diff --git a/contrib/restricted/boost/boost/python/object.hpp b/contrib/restricted/boost/python/include/boost/python/object.hpp index 9adec90f64..9adec90f64 100644 --- a/contrib/restricted/boost/boost/python/object.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object.hpp diff --git a/contrib/restricted/boost/boost/python/object/add_to_namespace.hpp b/contrib/restricted/boost/python/include/boost/python/object/add_to_namespace.hpp index 9f4167d6d2..9f4167d6d2 100644 --- a/contrib/restricted/boost/boost/python/object/add_to_namespace.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/add_to_namespace.hpp diff --git a/contrib/restricted/boost/boost/python/object/class.hpp b/contrib/restricted/boost/python/include/boost/python/object/class.hpp index f57ceda7bd..f57ceda7bd 100644 --- a/contrib/restricted/boost/boost/python/object/class.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/class.hpp diff --git a/contrib/restricted/boost/boost/python/object/class_detail.hpp b/contrib/restricted/boost/python/include/boost/python/object/class_detail.hpp index a17a4f4330..a17a4f4330 100644 --- a/contrib/restricted/boost/boost/python/object/class_detail.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/class_detail.hpp diff --git a/contrib/restricted/boost/boost/python/object/class_metadata.hpp b/contrib/restricted/boost/python/include/boost/python/object/class_metadata.hpp index 06d3f8efa7..06d3f8efa7 100644 --- a/contrib/restricted/boost/boost/python/object/class_metadata.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/class_metadata.hpp diff --git a/contrib/restricted/boost/boost/python/object/class_wrapper.hpp b/contrib/restricted/boost/python/include/boost/python/object/class_wrapper.hpp index ffee7457ab..ffee7457ab 100644 --- a/contrib/restricted/boost/boost/python/object/class_wrapper.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/class_wrapper.hpp diff --git a/contrib/restricted/boost/boost/python/object/enum_base.hpp b/contrib/restricted/boost/python/include/boost/python/object/enum_base.hpp index be34274226..be34274226 100644 --- a/contrib/restricted/boost/boost/python/object/enum_base.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/enum_base.hpp diff --git a/contrib/restricted/boost/boost/python/object/find_instance.hpp b/contrib/restricted/boost/python/include/boost/python/object/find_instance.hpp index 3202c1cd15..3202c1cd15 100644 --- a/contrib/restricted/boost/boost/python/object/find_instance.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/find_instance.hpp diff --git a/contrib/restricted/boost/boost/python/object/forward.hpp b/contrib/restricted/boost/python/include/boost/python/object/forward.hpp index c6515bb55b..c6515bb55b 100644 --- a/contrib/restricted/boost/boost/python/object/forward.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/forward.hpp diff --git a/contrib/restricted/boost/boost/python/object/function.hpp b/contrib/restricted/boost/python/include/boost/python/object/function.hpp index f29d344820..f29d344820 100644 --- a/contrib/restricted/boost/boost/python/object/function.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/function.hpp diff --git a/contrib/restricted/boost/boost/python/object/function_doc_signature.hpp b/contrib/restricted/boost/python/include/boost/python/object/function_doc_signature.hpp index 4f00cb385a..4f00cb385a 100644 --- a/contrib/restricted/boost/boost/python/object/function_doc_signature.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/function_doc_signature.hpp diff --git a/contrib/restricted/boost/boost/python/object/function_handle.hpp b/contrib/restricted/boost/python/include/boost/python/object/function_handle.hpp index 7edaf2ce3a..7edaf2ce3a 100644 --- a/contrib/restricted/boost/boost/python/object/function_handle.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/function_handle.hpp diff --git a/contrib/restricted/boost/boost/python/object/function_object.hpp b/contrib/restricted/boost/python/include/boost/python/object/function_object.hpp index eaa079fbe0..eaa079fbe0 100644 --- a/contrib/restricted/boost/boost/python/object/function_object.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/function_object.hpp diff --git a/contrib/restricted/boost/boost/python/object/inheritance.hpp b/contrib/restricted/boost/python/include/boost/python/object/inheritance.hpp index 90e56f0c1d..90e56f0c1d 100644 --- a/contrib/restricted/boost/boost/python/object/inheritance.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/inheritance.hpp diff --git a/contrib/restricted/boost/boost/python/object/inheritance_query.hpp b/contrib/restricted/boost/python/include/boost/python/object/inheritance_query.hpp index 916e161f29..916e161f29 100644 --- a/contrib/restricted/boost/boost/python/object/inheritance_query.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/inheritance_query.hpp diff --git a/contrib/restricted/boost/boost/python/object/instance.hpp b/contrib/restricted/boost/python/include/boost/python/object/instance.hpp index 27b91a1e5f..27b91a1e5f 100644 --- a/contrib/restricted/boost/boost/python/object/instance.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/instance.hpp diff --git a/contrib/restricted/boost/boost/python/object/iterator.hpp b/contrib/restricted/boost/python/include/boost/python/object/iterator.hpp index e2f65721fb..e2f65721fb 100644 --- a/contrib/restricted/boost/boost/python/object/iterator.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/iterator.hpp diff --git a/contrib/restricted/boost/boost/python/object/iterator_core.hpp b/contrib/restricted/boost/python/include/boost/python/object/iterator_core.hpp index 064accc5a8..064accc5a8 100644 --- a/contrib/restricted/boost/boost/python/object/iterator_core.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/iterator_core.hpp diff --git a/contrib/restricted/boost/boost/python/object/life_support.hpp b/contrib/restricted/boost/python/include/boost/python/object/life_support.hpp index 9a1b16b689..9a1b16b689 100644 --- a/contrib/restricted/boost/boost/python/object/life_support.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/life_support.hpp diff --git a/contrib/restricted/boost/boost/python/object/make_holder.hpp b/contrib/restricted/boost/python/include/boost/python/object/make_holder.hpp index 0d54dd9f66..0d54dd9f66 100644 --- a/contrib/restricted/boost/boost/python/object/make_holder.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/make_holder.hpp diff --git a/contrib/restricted/boost/boost/python/object/make_instance.hpp b/contrib/restricted/boost/python/include/boost/python/object/make_instance.hpp index 31ec08f7c3..31ec08f7c3 100644 --- a/contrib/restricted/boost/boost/python/object/make_instance.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/make_instance.hpp diff --git a/contrib/restricted/boost/boost/python/object/make_ptr_instance.hpp b/contrib/restricted/boost/python/include/boost/python/object/make_ptr_instance.hpp index 92412b31fe..92412b31fe 100644 --- a/contrib/restricted/boost/boost/python/object/make_ptr_instance.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/make_ptr_instance.hpp diff --git a/contrib/restricted/boost/boost/python/object/pickle_support.hpp b/contrib/restricted/boost/python/include/boost/python/object/pickle_support.hpp index 5b5d8724c5..aa96d655ee 100644 --- a/contrib/restricted/boost/boost/python/object/pickle_support.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/pickle_support.hpp @@ -5,10 +5,6 @@ #ifndef BOOST_PYTHON_OBJECT_PICKLE_SUPPORT_RWGK20020603_HPP # define BOOST_PYTHON_OBJECT_PICKLE_SUPPORT_RWGK20020603_HPP -#if defined(__GNUC__) - #pragma GCC system_header -#endif - # include <boost/python/detail/prefix.hpp> namespace boost { namespace python { diff --git a/contrib/restricted/boost/boost/python/object/pointer_holder.hpp b/contrib/restricted/boost/python/include/boost/python/object/pointer_holder.hpp index c3b57e833a..c3b57e833a 100644 --- a/contrib/restricted/boost/boost/python/object/pointer_holder.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/pointer_holder.hpp diff --git a/contrib/restricted/boost/boost/python/object/py_function.hpp b/contrib/restricted/boost/python/include/boost/python/object/py_function.hpp index df2fb44a4f..df2fb44a4f 100644 --- a/contrib/restricted/boost/boost/python/object/py_function.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/py_function.hpp diff --git a/contrib/restricted/boost/boost/python/object/stl_iterator_core.hpp b/contrib/restricted/boost/python/include/boost/python/object/stl_iterator_core.hpp index 68e0c2441b..68e0c2441b 100644 --- a/contrib/restricted/boost/boost/python/object/stl_iterator_core.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/stl_iterator_core.hpp diff --git a/contrib/restricted/boost/boost/python/object/value_holder.hpp b/contrib/restricted/boost/python/include/boost/python/object/value_holder.hpp index a4e91786d1..a4e91786d1 100644 --- a/contrib/restricted/boost/boost/python/object/value_holder.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/value_holder.hpp diff --git a/contrib/restricted/boost/boost/python/object/value_holder_fwd.hpp b/contrib/restricted/boost/python/include/boost/python/object/value_holder_fwd.hpp index 3454bac426..3454bac426 100644 --- a/contrib/restricted/boost/boost/python/object/value_holder_fwd.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object/value_holder_fwd.hpp diff --git a/contrib/restricted/boost/boost/python/object_attributes.hpp b/contrib/restricted/boost/python/include/boost/python/object_attributes.hpp index 26d599113f..26d599113f 100644 --- a/contrib/restricted/boost/boost/python/object_attributes.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object_attributes.hpp diff --git a/contrib/restricted/boost/boost/python/object_core.hpp b/contrib/restricted/boost/python/include/boost/python/object_core.hpp index 16480d0d89..16480d0d89 100644 --- a/contrib/restricted/boost/boost/python/object_core.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object_core.hpp diff --git a/contrib/restricted/boost/boost/python/object_fwd.hpp b/contrib/restricted/boost/python/include/boost/python/object_fwd.hpp index 11efcc7075..11efcc7075 100644 --- a/contrib/restricted/boost/boost/python/object_fwd.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object_fwd.hpp diff --git a/contrib/restricted/boost/boost/python/object_items.hpp b/contrib/restricted/boost/python/include/boost/python/object_items.hpp index b048689a7c..b048689a7c 100644 --- a/contrib/restricted/boost/boost/python/object_items.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object_items.hpp diff --git a/contrib/restricted/boost/boost/python/object_operators.hpp b/contrib/restricted/boost/python/include/boost/python/object_operators.hpp index d436bb0144..d436bb0144 100644 --- a/contrib/restricted/boost/boost/python/object_operators.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object_operators.hpp diff --git a/contrib/restricted/boost/boost/python/object_protocol.hpp b/contrib/restricted/boost/python/include/boost/python/object_protocol.hpp index 7c1c02830e..7c1c02830e 100644 --- a/contrib/restricted/boost/boost/python/object_protocol.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object_protocol.hpp diff --git a/contrib/restricted/boost/boost/python/object_protocol_core.hpp b/contrib/restricted/boost/python/include/boost/python/object_protocol_core.hpp index a5bd9afcb4..a5bd9afcb4 100644 --- a/contrib/restricted/boost/boost/python/object_protocol_core.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object_protocol_core.hpp diff --git a/contrib/restricted/boost/boost/python/object_slices.hpp b/contrib/restricted/boost/python/include/boost/python/object_slices.hpp index 6cd3dc2974..6cd3dc2974 100644 --- a/contrib/restricted/boost/boost/python/object_slices.hpp +++ b/contrib/restricted/boost/python/include/boost/python/object_slices.hpp diff --git a/contrib/restricted/boost/boost/python/opaque_pointer_converter.hpp b/contrib/restricted/boost/python/include/boost/python/opaque_pointer_converter.hpp index c049a3c646..701b13dc30 100644 --- a/contrib/restricted/boost/boost/python/opaque_pointer_converter.hpp +++ b/contrib/restricted/boost/python/include/boost/python/opaque_pointer_converter.hpp @@ -8,10 +8,6 @@ # ifndef OPAQUE_POINTER_CONVERTER_HPP_ # define OPAQUE_POINTER_CONVERTER_HPP_ -#if defined(__GNUC__) - #pragma GCC system_header -#endif - # include <boost/python/detail/prefix.hpp> # include <boost/python/lvalue_from_pytype.hpp> # include <boost/python/to_python_converter.hpp> @@ -119,6 +115,9 @@ private: template <class Pointee> opaque<Pointee> opaque<Pointee>::instance; +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wmissing-field-initializers" + template <class Pointee> PyTypeObject opaque<Pointee>::type_object = { @@ -171,6 +170,9 @@ PyTypeObject opaque<Pointee>::type_object = 0 /* tp_del */ #endif }; + +#pragma GCC diagnostic pop + }} // namespace boost::python // If you change the below, don't forget to alter the end of type_id.hpp diff --git a/contrib/restricted/boost/boost/python/operators.hpp b/contrib/restricted/boost/python/include/boost/python/operators.hpp index ea2be7b98f..ea2be7b98f 100644 --- a/contrib/restricted/boost/boost/python/operators.hpp +++ b/contrib/restricted/boost/python/include/boost/python/operators.hpp diff --git a/contrib/restricted/boost/boost/python/other.hpp b/contrib/restricted/boost/python/include/boost/python/other.hpp index 24a24ad8d1..24a24ad8d1 100644 --- a/contrib/restricted/boost/boost/python/other.hpp +++ b/contrib/restricted/boost/python/include/boost/python/other.hpp diff --git a/contrib/restricted/boost/boost/python/overloads.hpp b/contrib/restricted/boost/python/include/boost/python/overloads.hpp index e60dc1798e..e60dc1798e 100644 --- a/contrib/restricted/boost/boost/python/overloads.hpp +++ b/contrib/restricted/boost/python/include/boost/python/overloads.hpp diff --git a/contrib/restricted/boost/boost/python/override.hpp b/contrib/restricted/boost/python/include/boost/python/override.hpp index 39714257f9..39714257f9 100644 --- a/contrib/restricted/boost/boost/python/override.hpp +++ b/contrib/restricted/boost/python/include/boost/python/override.hpp diff --git a/contrib/restricted/boost/boost/python/pointee.hpp b/contrib/restricted/boost/python/include/boost/python/pointee.hpp index 7ec01e0824..7ec01e0824 100644 --- a/contrib/restricted/boost/boost/python/pointee.hpp +++ b/contrib/restricted/boost/python/include/boost/python/pointee.hpp diff --git a/contrib/restricted/boost/boost/python/proxy.hpp b/contrib/restricted/boost/python/include/boost/python/proxy.hpp index d3331d5676..d3331d5676 100644 --- a/contrib/restricted/boost/boost/python/proxy.hpp +++ b/contrib/restricted/boost/python/include/boost/python/proxy.hpp diff --git a/contrib/restricted/boost/boost/python/ptr.hpp b/contrib/restricted/boost/python/include/boost/python/ptr.hpp index 287daba458..287daba458 100644 --- a/contrib/restricted/boost/boost/python/ptr.hpp +++ b/contrib/restricted/boost/python/include/boost/python/ptr.hpp diff --git a/contrib/restricted/boost/boost/python/pure_virtual.hpp b/contrib/restricted/boost/python/include/boost/python/pure_virtual.hpp index 58e9aedef1..58e9aedef1 100644 --- a/contrib/restricted/boost/boost/python/pure_virtual.hpp +++ b/contrib/restricted/boost/python/include/boost/python/pure_virtual.hpp diff --git a/contrib/restricted/boost/boost/python/raw_function.hpp b/contrib/restricted/boost/python/include/boost/python/raw_function.hpp index 9d9f6b8b1b..9d9f6b8b1b 100644 --- a/contrib/restricted/boost/boost/python/raw_function.hpp +++ b/contrib/restricted/boost/python/include/boost/python/raw_function.hpp diff --git a/contrib/restricted/boost/boost/python/refcount.hpp b/contrib/restricted/boost/python/include/boost/python/refcount.hpp index aa6aa5dbb6..aa6aa5dbb6 100644 --- a/contrib/restricted/boost/boost/python/refcount.hpp +++ b/contrib/restricted/boost/python/include/boost/python/refcount.hpp diff --git a/contrib/restricted/boost/boost/python/reference_existing_object.hpp b/contrib/restricted/boost/python/include/boost/python/reference_existing_object.hpp index 4c8344070b..4c8344070b 100644 --- a/contrib/restricted/boost/boost/python/reference_existing_object.hpp +++ b/contrib/restricted/boost/python/include/boost/python/reference_existing_object.hpp diff --git a/contrib/restricted/boost/boost/python/register_ptr_to_python.hpp b/contrib/restricted/boost/python/include/boost/python/register_ptr_to_python.hpp index d39bd0cf71..d39bd0cf71 100644 --- a/contrib/restricted/boost/boost/python/register_ptr_to_python.hpp +++ b/contrib/restricted/boost/python/include/boost/python/register_ptr_to_python.hpp diff --git a/contrib/restricted/boost/boost/python/return_arg.hpp b/contrib/restricted/boost/python/include/boost/python/return_arg.hpp index de23993987..de23993987 100644 --- a/contrib/restricted/boost/boost/python/return_arg.hpp +++ b/contrib/restricted/boost/python/include/boost/python/return_arg.hpp diff --git a/contrib/restricted/boost/boost/python/return_by_value.hpp b/contrib/restricted/boost/python/include/boost/python/return_by_value.hpp index 42d7076d17..42d7076d17 100644 --- a/contrib/restricted/boost/boost/python/return_by_value.hpp +++ b/contrib/restricted/boost/python/include/boost/python/return_by_value.hpp diff --git a/contrib/restricted/boost/boost/python/return_internal_reference.hpp b/contrib/restricted/boost/python/include/boost/python/return_internal_reference.hpp index cc60f4422a..cc60f4422a 100644 --- a/contrib/restricted/boost/boost/python/return_internal_reference.hpp +++ b/contrib/restricted/boost/python/include/boost/python/return_internal_reference.hpp diff --git a/contrib/restricted/boost/boost/python/return_opaque_pointer.hpp b/contrib/restricted/boost/python/include/boost/python/return_opaque_pointer.hpp index 4654e3bd51..4654e3bd51 100644 --- a/contrib/restricted/boost/boost/python/return_opaque_pointer.hpp +++ b/contrib/restricted/boost/python/include/boost/python/return_opaque_pointer.hpp diff --git a/contrib/restricted/boost/boost/python/return_value_policy.hpp b/contrib/restricted/boost/python/include/boost/python/return_value_policy.hpp index 9a5fba380b..9a5fba380b 100644 --- a/contrib/restricted/boost/boost/python/return_value_policy.hpp +++ b/contrib/restricted/boost/python/include/boost/python/return_value_policy.hpp diff --git a/contrib/restricted/boost/boost/python/scope.hpp b/contrib/restricted/boost/python/include/boost/python/scope.hpp index 8be3e054e0..8be3e054e0 100644 --- a/contrib/restricted/boost/boost/python/scope.hpp +++ b/contrib/restricted/boost/python/include/boost/python/scope.hpp diff --git a/contrib/restricted/boost/boost/python/self.hpp b/contrib/restricted/boost/python/include/boost/python/self.hpp index 99ec5b8fbe..99ec5b8fbe 100644 --- a/contrib/restricted/boost/boost/python/self.hpp +++ b/contrib/restricted/boost/python/include/boost/python/self.hpp diff --git a/contrib/restricted/boost/boost/python/signature.hpp b/contrib/restricted/boost/python/include/boost/python/signature.hpp index ab4bca390a..ab4bca390a 100644 --- a/contrib/restricted/boost/boost/python/signature.hpp +++ b/contrib/restricted/boost/python/include/boost/python/signature.hpp diff --git a/contrib/restricted/boost/boost/python/slice.hpp b/contrib/restricted/boost/python/include/boost/python/slice.hpp index 80660fab77..80660fab77 100644 --- a/contrib/restricted/boost/boost/python/slice.hpp +++ b/contrib/restricted/boost/python/include/boost/python/slice.hpp diff --git a/contrib/restricted/boost/boost/python/slice_nil.hpp b/contrib/restricted/boost/python/include/boost/python/slice_nil.hpp index e911f06801..e911f06801 100644 --- a/contrib/restricted/boost/boost/python/slice_nil.hpp +++ b/contrib/restricted/boost/python/include/boost/python/slice_nil.hpp diff --git a/contrib/restricted/boost/boost/python/ssize_t.hpp b/contrib/restricted/boost/python/include/boost/python/ssize_t.hpp index e8a2d92f63..e8a2d92f63 100644 --- a/contrib/restricted/boost/boost/python/ssize_t.hpp +++ b/contrib/restricted/boost/python/include/boost/python/ssize_t.hpp diff --git a/contrib/restricted/boost/boost/python/stl_iterator.hpp b/contrib/restricted/boost/python/include/boost/python/stl_iterator.hpp index 838954879a..838954879a 100644 --- a/contrib/restricted/boost/boost/python/stl_iterator.hpp +++ b/contrib/restricted/boost/python/include/boost/python/stl_iterator.hpp diff --git a/contrib/restricted/boost/boost/python/str.hpp b/contrib/restricted/boost/python/include/boost/python/str.hpp index 4f255aa78a..434c8c986c 100644 --- a/contrib/restricted/boost/boost/python/str.hpp +++ b/contrib/restricted/boost/python/include/boost/python/str.hpp @@ -5,10 +5,6 @@ #ifndef STR_20020703_HPP #define STR_20020703_HPP -#if defined(__GNUC__) - #pragma GCC system_header -#endif - # include <boost/python/detail/prefix.hpp> #include <boost/python/object.hpp> diff --git a/contrib/restricted/boost/boost/python/tag.hpp b/contrib/restricted/boost/python/include/boost/python/tag.hpp index ccff9f1a17..ccff9f1a17 100644 --- a/contrib/restricted/boost/boost/python/tag.hpp +++ b/contrib/restricted/boost/python/include/boost/python/tag.hpp diff --git a/contrib/restricted/boost/boost/python/to_python_converter.hpp b/contrib/restricted/boost/python/include/boost/python/to_python_converter.hpp index 4391b6dce9..4391b6dce9 100644 --- a/contrib/restricted/boost/boost/python/to_python_converter.hpp +++ b/contrib/restricted/boost/python/include/boost/python/to_python_converter.hpp diff --git a/contrib/restricted/boost/boost/python/to_python_indirect.hpp b/contrib/restricted/boost/python/include/boost/python/to_python_indirect.hpp index 0a19aca5ff..0a19aca5ff 100644 --- a/contrib/restricted/boost/boost/python/to_python_indirect.hpp +++ b/contrib/restricted/boost/python/include/boost/python/to_python_indirect.hpp diff --git a/contrib/restricted/boost/boost/python/to_python_value.hpp b/contrib/restricted/boost/python/include/boost/python/to_python_value.hpp index b6ec0135ba..b6ec0135ba 100644 --- a/contrib/restricted/boost/boost/python/to_python_value.hpp +++ b/contrib/restricted/boost/python/include/boost/python/to_python_value.hpp diff --git a/contrib/restricted/boost/boost/python/tuple.hpp b/contrib/restricted/boost/python/include/boost/python/tuple.hpp index babfb63f1e..babfb63f1e 100644 --- a/contrib/restricted/boost/boost/python/tuple.hpp +++ b/contrib/restricted/boost/python/include/boost/python/tuple.hpp diff --git a/contrib/restricted/boost/boost/python/type_id.hpp b/contrib/restricted/boost/python/include/boost/python/type_id.hpp index 601601c311..601601c311 100644 --- a/contrib/restricted/boost/boost/python/type_id.hpp +++ b/contrib/restricted/boost/python/include/boost/python/type_id.hpp diff --git a/contrib/restricted/boost/boost/python/with_custodian_and_ward.hpp b/contrib/restricted/boost/python/include/boost/python/with_custodian_and_ward.hpp index 3431c6f22c..3431c6f22c 100644 --- a/contrib/restricted/boost/boost/python/with_custodian_and_ward.hpp +++ b/contrib/restricted/boost/python/include/boost/python/with_custodian_and_ward.hpp diff --git a/contrib/restricted/boost/boost/python/wrapper.hpp b/contrib/restricted/boost/python/include/boost/python/wrapper.hpp index 166c8e2327..166c8e2327 100644 --- a/contrib/restricted/boost/boost/python/wrapper.hpp +++ b/contrib/restricted/boost/python/include/boost/python/wrapper.hpp diff --git a/contrib/restricted/boost/libs/python/src/converter/arg_to_python_base.cpp b/contrib/restricted/boost/python/src/converter/arg_to_python_base.cpp index d872314a74..d872314a74 100644 --- a/contrib/restricted/boost/libs/python/src/converter/arg_to_python_base.cpp +++ b/contrib/restricted/boost/python/src/converter/arg_to_python_base.cpp diff --git a/contrib/restricted/boost/libs/python/src/converter/builtin_converters.cpp b/contrib/restricted/boost/python/src/converter/builtin_converters.cpp index ee2d5b4794..ee2d5b4794 100644 --- a/contrib/restricted/boost/libs/python/src/converter/builtin_converters.cpp +++ b/contrib/restricted/boost/python/src/converter/builtin_converters.cpp diff --git a/contrib/restricted/boost/libs/python/src/converter/from_python.cpp b/contrib/restricted/boost/python/src/converter/from_python.cpp index 9678be1cb6..9678be1cb6 100644 --- a/contrib/restricted/boost/libs/python/src/converter/from_python.cpp +++ b/contrib/restricted/boost/python/src/converter/from_python.cpp diff --git a/contrib/restricted/boost/libs/python/src/converter/registry.cpp b/contrib/restricted/boost/python/src/converter/registry.cpp index aa20c3f685..aa20c3f685 100644 --- a/contrib/restricted/boost/libs/python/src/converter/registry.cpp +++ b/contrib/restricted/boost/python/src/converter/registry.cpp diff --git a/contrib/restricted/boost/libs/python/src/converter/type_id.cpp b/contrib/restricted/boost/python/src/converter/type_id.cpp index c6a8bf7a04..c6a8bf7a04 100644 --- a/contrib/restricted/boost/libs/python/src/converter/type_id.cpp +++ b/contrib/restricted/boost/python/src/converter/type_id.cpp diff --git a/contrib/restricted/boost/libs/python/src/dict.cpp b/contrib/restricted/boost/python/src/dict.cpp index 77d840d455..77d840d455 100644 --- a/contrib/restricted/boost/libs/python/src/dict.cpp +++ b/contrib/restricted/boost/python/src/dict.cpp diff --git a/contrib/restricted/boost/libs/python/src/errors.cpp b/contrib/restricted/boost/python/src/errors.cpp index 34ea22f43e..34ea22f43e 100644 --- a/contrib/restricted/boost/libs/python/src/errors.cpp +++ b/contrib/restricted/boost/python/src/errors.cpp diff --git a/contrib/restricted/boost/libs/python/src/exec.cpp b/contrib/restricted/boost/python/src/exec.cpp index 43e860d992..5193b04745 100644 --- a/contrib/restricted/boost/libs/python/src/exec.cpp +++ b/contrib/restricted/boost/python/src/exec.cpp @@ -104,14 +104,22 @@ object BOOST_PYTHON_DECL exec_file(char const *filename, object global, object l if (local.is_none()) local = global; // should be 'char const *' but older python versions don't use 'const' yet. char *f = const_cast<char *>(filename); - // Let python open the file to avoid potential binary incompatibilities. -#if PY_VERSION_HEX >= 0x03040000 - FILE *fs = fopen(f, "r"); +#if PY_VERSION_HEX >= 0x03010000 + // Let python manage any UTF bits to avoid potential incompatibilities. + PyObject *fo = Py_BuildValue("s", f); + PyObject *fb = Py_None; + PyUnicode_FSConverter(fo, &fb); + char *f_as_uft = PyBytes_AsString(fb); + FILE *fs = fopen(f_as_uft, "r"); + Py_DECREF(fo); + Py_DECREF(fb); #elif PY_VERSION_HEX >= 0x03000000 + // Let python open the file to avoid potential binary incompatibilities. PyObject *fo = Py_BuildValue("s", f); - FILE *fs = _Py_fopen(fo, "r"); + FILE *fs = _Py_fopen(fo, "r"); // Private CPython API Py_DECREF(fo); #else + // Let python open the file to avoid potential binary incompatibilities. PyObject *pyfile = PyFile_FromString(f, const_cast<char*>("r")); if (!pyfile) throw std::invalid_argument(std::string(f) + " : no such file"); python::handle<> file(pyfile); diff --git a/contrib/restricted/boost/libs/python/src/import.cpp b/contrib/restricted/boost/python/src/import.cpp index 0add79eea2..0add79eea2 100644 --- a/contrib/restricted/boost/libs/python/src/import.cpp +++ b/contrib/restricted/boost/python/src/import.cpp diff --git a/contrib/restricted/boost/libs/python/src/list.cpp b/contrib/restricted/boost/python/src/list.cpp index 77e616881a..77e616881a 100644 --- a/contrib/restricted/boost/libs/python/src/list.cpp +++ b/contrib/restricted/boost/python/src/list.cpp diff --git a/contrib/restricted/boost/libs/python/src/long.cpp b/contrib/restricted/boost/python/src/long.cpp index 1ec8ebc011..1ec8ebc011 100644 --- a/contrib/restricted/boost/libs/python/src/long.cpp +++ b/contrib/restricted/boost/python/src/long.cpp diff --git a/contrib/restricted/boost/libs/python/src/module.cpp b/contrib/restricted/boost/python/src/module.cpp index 9628481996..9628481996 100644 --- a/contrib/restricted/boost/libs/python/src/module.cpp +++ b/contrib/restricted/boost/python/src/module.cpp diff --git a/contrib/restricted/boost/libs/python/src/object/class.cpp b/contrib/restricted/boost/python/src/object/class.cpp index 8d0daf63d7..8d0daf63d7 100644 --- a/contrib/restricted/boost/libs/python/src/object/class.cpp +++ b/contrib/restricted/boost/python/src/object/class.cpp diff --git a/contrib/restricted/boost/libs/python/src/object/enum.cpp b/contrib/restricted/boost/python/src/object/enum.cpp index 10122ad1da..10122ad1da 100644 --- a/contrib/restricted/boost/libs/python/src/object/enum.cpp +++ b/contrib/restricted/boost/python/src/object/enum.cpp diff --git a/contrib/restricted/boost/libs/python/src/object/function.cpp b/contrib/restricted/boost/python/src/object/function.cpp index e15eb3ffc0..e15eb3ffc0 100644 --- a/contrib/restricted/boost/libs/python/src/object/function.cpp +++ b/contrib/restricted/boost/python/src/object/function.cpp diff --git a/contrib/restricted/boost/libs/python/src/object/function_doc_signature.cpp b/contrib/restricted/boost/python/src/object/function_doc_signature.cpp index 41695285ac..41695285ac 100644 --- a/contrib/restricted/boost/libs/python/src/object/function_doc_signature.cpp +++ b/contrib/restricted/boost/python/src/object/function_doc_signature.cpp diff --git a/contrib/restricted/boost/libs/python/src/object/inheritance.cpp b/contrib/restricted/boost/python/src/object/inheritance.cpp index 7dc9db1cd7..7dc9db1cd7 100644 --- a/contrib/restricted/boost/libs/python/src/object/inheritance.cpp +++ b/contrib/restricted/boost/python/src/object/inheritance.cpp diff --git a/contrib/restricted/boost/libs/python/src/object/iterator.cpp b/contrib/restricted/boost/python/src/object/iterator.cpp index 3f6c4adacd..3f6c4adacd 100644 --- a/contrib/restricted/boost/libs/python/src/object/iterator.cpp +++ b/contrib/restricted/boost/python/src/object/iterator.cpp diff --git a/contrib/restricted/boost/libs/python/src/object/life_support.cpp b/contrib/restricted/boost/python/src/object/life_support.cpp index b7e9aa861e..b7e9aa861e 100644 --- a/contrib/restricted/boost/libs/python/src/object/life_support.cpp +++ b/contrib/restricted/boost/python/src/object/life_support.cpp diff --git a/contrib/restricted/boost/libs/python/src/object/pickle_support.cpp b/contrib/restricted/boost/python/src/object/pickle_support.cpp index 428c07b6ca..428c07b6ca 100644 --- a/contrib/restricted/boost/libs/python/src/object/pickle_support.cpp +++ b/contrib/restricted/boost/python/src/object/pickle_support.cpp diff --git a/contrib/restricted/boost/libs/python/src/object/stl_iterator.cpp b/contrib/restricted/boost/python/src/object/stl_iterator.cpp index e32d321452..e32d321452 100644 --- a/contrib/restricted/boost/libs/python/src/object/stl_iterator.cpp +++ b/contrib/restricted/boost/python/src/object/stl_iterator.cpp diff --git a/contrib/restricted/boost/libs/python/src/object_operators.cpp b/contrib/restricted/boost/python/src/object_operators.cpp index b993245fe9..b993245fe9 100644 --- a/contrib/restricted/boost/libs/python/src/object_operators.cpp +++ b/contrib/restricted/boost/python/src/object_operators.cpp diff --git a/contrib/restricted/boost/libs/python/src/object_protocol.cpp b/contrib/restricted/boost/python/src/object_protocol.cpp index 95c8c73ee6..95c8c73ee6 100644 --- a/contrib/restricted/boost/libs/python/src/object_protocol.cpp +++ b/contrib/restricted/boost/python/src/object_protocol.cpp diff --git a/contrib/restricted/boost/libs/python/src/slice.cpp b/contrib/restricted/boost/python/src/slice.cpp index ee55f94846..ee55f94846 100644 --- a/contrib/restricted/boost/libs/python/src/slice.cpp +++ b/contrib/restricted/boost/python/src/slice.cpp diff --git a/contrib/restricted/boost/libs/python/src/str.cpp b/contrib/restricted/boost/python/src/str.cpp index 5122f7f57f..5122f7f57f 100644 --- a/contrib/restricted/boost/libs/python/src/str.cpp +++ b/contrib/restricted/boost/python/src/str.cpp diff --git a/contrib/restricted/boost/libs/python/src/tuple.cpp b/contrib/restricted/boost/python/src/tuple.cpp index 6719713b73..6719713b73 100644 --- a/contrib/restricted/boost/libs/python/src/tuple.cpp +++ b/contrib/restricted/boost/python/src/tuple.cpp diff --git a/contrib/restricted/boost/libs/python/src/wrapper.cpp b/contrib/restricted/boost/python/src/wrapper.cpp index f8feaef947..f8feaef947 100644 --- a/contrib/restricted/boost/libs/python/src/wrapper.cpp +++ b/contrib/restricted/boost/python/src/wrapper.cpp |