passenger 5.3.7 → 6.0.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/CHANGELOG +651 -19
- data/CONTRIBUTING.md +1 -1
- data/CONTRIBUTORS +26 -0
- data/LICENSE +1 -1
- data/README.md +5 -12
- data/Rakefile +15 -4
- data/bin/passenger +2 -2
- data/bin/passenger-config +2 -2
- data/bin/passenger-install-apache2-module +7 -2
- data/bin/passenger-install-nginx-module +25 -8
- data/bin/passenger-memory-stats +67 -14
- data/bin/passenger-status +46 -6
- data/build/agent.rb +5 -3
- data/build/apache2.rb +3 -3
- data/build/basics.rb +12 -6
- data/build/common_library.rb +8 -7
- data/build/cxx_tests.rb +20 -9
- data/build/integration_tests.rb +10 -9
- data/build/misc.rb +5 -3
- data/build/nginx.rb +2 -2
- data/build/node_tests.rb +2 -2
- data/build/oxt_tests.rb +2 -2
- data/build/packaging.rb +6 -4
- data/build/ruby_extension.rb +2 -2
- data/build/ruby_tests.rb +3 -3
- data/build/schema_printer.rb +2 -2
- data/build/support/cplusplus.rb +2 -2
- data/build/support/cxx_dependency_map.rb +329 -59
- data/build/support/general.rb +2 -2
- data/build/support/vendor/cxx_hinted_parser/LICENSE.md +1 -1
- data/build/support/vendor/cxx_hinted_parser/lib/cxx_hinted_parser/parser.rb +2 -2
- data/build/support/vendor/cxx_hinted_parser/lib/cxx_hinted_parser.rb +2 -2
- data/build/support/vendor/cxxcodebuilder/LICENSE.md +1 -1
- data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/builder.rb +57 -4
- data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/initializer_builder.rb +2 -2
- data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder.rb +2 -2
- data/build/test_basics.rb +29 -15
- data/dev/copy_boost_headers +142 -79
- data/dev/index_cxx_dependencies.rb +1 -1
- data/dev/nginx_version_sha256 +72 -0
- data/dev/websocketpp.patch +39 -0
- data/doc/DesignAspects/LimitedGemDependencies.md +39 -0
- data/doc/DesignAspects/NoGemActivationDuringRubyLoaderInitialization.md +27 -0
- data/doc/templates/markdown.html.erb +2 -6
- data/package.json +20 -18
- data/passenger.gemspec +17 -3
- data/resources/mime.types +1 -0
- data/resources/release.txt +1 -0
- data/resources/templates/apache2/deployment_example.txt.erb +1 -1
- data/resources/templates/config/installation_utils/user_support_binaries_dir_not_writable.txt.erb +1 -0
- data/resources/templates/error_renderer/with_details/dist/bundle.js +2 -33
- data/resources/templates/error_renderer/with_details/dist/styles.css +2 -2
- data/resources/templates/error_renderer/with_details/src/GetHelpView.jsx +1 -1
- data/resources/templates/error_renderer/with_details/src/bootstrap/bootstrap.css +0 -0
- data/resources/templates/error_renderer/with_details/src/bootstrap/bootstrap.js +0 -0
- data/resources/templates/error_renderer/with_details/src/bootstrap/config.json +0 -0
- data/resources/templates/error_renderer/with_details/src/index.html.template +0 -2
- data/resources/templates/error_renderer/with_details/webpack.config.js +13 -16
- data/resources/templates/error_renderer/without_details/dist/bundle.js +0 -1
- data/resources/templates/error_renderer/without_details/dist/styles.css +1 -1
- data/resources/templates/error_renderer/without_details/webpack.config.js +13 -16
- data/resources/templates/nginx/deployment_example.txt.erb +1 -1
- data/resources/templates/standalone/global.erb +4 -0
- data/resources/templates/standalone/http.erb +3 -0
- data/resources/templates/standalone/rails_asset_pipeline.erb +1 -1
- data/resources/templates/standalone/server.erb +4 -0
- data/src/agent/AgentMain.cpp +7 -9
- data/src/agent/Core/AdminPanelConnector.h +5 -6
- data/src/agent/Core/ApiServer.h +38 -3
- data/src/agent/Core/ApplicationPool/AbstractSession.h +2 -2
- data/src/agent/Core/ApplicationPool/BasicGroupInfo.h +2 -2
- data/src/agent/Core/ApplicationPool/BasicProcessInfo.h +2 -2
- data/src/agent/Core/ApplicationPool/Common.h +2 -2
- data/src/agent/Core/ApplicationPool/Context.h +7 -4
- data/src/agent/Core/ApplicationPool/Group/InitializationAndShutdown.cpp +10 -2
- data/src/agent/Core/ApplicationPool/Group/InternalUtils.cpp +14 -6
- data/src/agent/Core/ApplicationPool/Group/LifetimeAndBasics.cpp +10 -2
- data/src/agent/Core/ApplicationPool/Group/Miscellaneous.cpp +11 -2
- data/src/agent/Core/ApplicationPool/Group/OutOfBandWork.cpp +12 -3
- data/src/agent/Core/ApplicationPool/Group/ProcessListManagement.cpp +86 -6
- data/src/agent/Core/ApplicationPool/Group/SessionManagement.cpp +42 -12
- data/src/agent/Core/ApplicationPool/Group/SpawningAndRestarting.cpp +10 -2
- data/src/agent/Core/ApplicationPool/Group/StateInspection.cpp +15 -4
- data/src/agent/Core/ApplicationPool/Group/Verification.cpp +10 -2
- data/src/agent/Core/ApplicationPool/Group.h +19 -8
- data/src/agent/Core/ApplicationPool/Implementation.cpp +2 -3
- data/src/agent/Core/ApplicationPool/Options.h +36 -13
- data/src/agent/Core/ApplicationPool/Pool/AnalyticsCollection.cpp +7 -2
- data/src/agent/Core/ApplicationPool/Pool/GarbageCollection.cpp +8 -3
- data/src/agent/Core/ApplicationPool/Pool/GeneralUtils.cpp +7 -2
- data/src/agent/Core/ApplicationPool/Pool/GroupUtils.cpp +7 -2
- data/src/agent/Core/ApplicationPool/Pool/InitializationAndShutdown.cpp +7 -2
- data/src/agent/Core/ApplicationPool/Pool/Miscellaneous.cpp +7 -2
- data/src/agent/Core/ApplicationPool/Pool/ProcessUtils.cpp +8 -3
- data/src/agent/Core/ApplicationPool/Pool/StateInspection.cpp +18 -4
- data/src/agent/Core/ApplicationPool/Pool.h +12 -6
- data/src/agent/Core/ApplicationPool/Process.cpp +2 -2
- data/src/agent/Core/ApplicationPool/Process.h +27 -8
- data/src/agent/Core/ApplicationPool/Session.h +8 -3
- data/src/agent/Core/ApplicationPool/Socket.h +2 -2
- data/src/agent/Core/ApplicationPool/TestSession.h +2 -2
- data/src/agent/Core/Config.h +39 -8
- data/src/agent/Core/ConfigChange.cpp +2 -2
- data/src/agent/Core/ConfigChange.h +2 -2
- data/src/agent/Core/Controller/AppResponse.h +2 -3
- data/src/agent/Core/Controller/BufferBody.cpp +2 -2
- data/src/agent/Core/Controller/CheckoutSession.cpp +50 -16
- data/src/agent/Core/Controller/Client.h +2 -2
- data/src/agent/Core/Controller/Config.cpp +2 -2
- data/src/agent/Core/Controller/Config.h +55 -13
- data/src/agent/Core/Controller/ForwardResponse.cpp +15 -2
- data/src/agent/Core/Controller/Hooks.cpp +2 -2
- data/src/agent/Core/Controller/Implementation.cpp +2 -2
- data/src/agent/Core/Controller/InitRequest.cpp +21 -10
- data/src/agent/Core/Controller/InitializationAndShutdown.cpp +5 -2
- data/src/agent/Core/Controller/InternalUtils.cpp +34 -8
- data/src/agent/Core/Controller/Miscellaneous.cpp +2 -2
- data/src/agent/Core/Controller/Request.h +2 -2
- data/src/agent/Core/Controller/SendRequest.cpp +4 -4
- data/src/agent/Core/Controller/StateInspection.cpp +2 -2
- data/src/agent/Core/Controller/TurboCaching.h +2 -2
- data/src/agent/Core/Controller.h +8 -3
- data/src/agent/Core/CoreMain.cpp +78 -54
- data/src/agent/Core/OptionParser.h +23 -2
- data/src/agent/Core/ResponseCache.h +5 -4
- data/src/agent/Core/SecurityUpdateChecker.h +7 -7
- data/src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h +22 -2
- data/src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h.cxxcodebuilder +2 -2
- data/src/agent/Core/SpawningKit/Config.h +26 -2
- data/src/agent/Core/SpawningKit/Context.h +3 -2
- data/src/agent/Core/SpawningKit/DirectSpawner.h +2 -2
- data/src/agent/Core/SpawningKit/DummySpawner.h +2 -2
- data/src/agent/Core/SpawningKit/ErrorRenderer.h +7 -2
- data/src/agent/Core/SpawningKit/Exceptions.h +2 -2
- data/src/agent/Core/SpawningKit/Factory.h +2 -2
- data/src/agent/Core/SpawningKit/Handshake/BackgroundIOCapturer.h +3 -3
- data/src/agent/Core/SpawningKit/Handshake/Perform.h +8 -7
- data/src/agent/Core/SpawningKit/Handshake/Prepare.h +8 -56
- data/src/agent/Core/SpawningKit/Handshake/Session.h +5 -2
- data/src/agent/Core/SpawningKit/Handshake/WorkDir.h +12 -6
- data/src/agent/Core/SpawningKit/Journey.h +2 -2
- data/src/agent/Core/SpawningKit/PipeWatcher.h +21 -6
- data/src/agent/Core/SpawningKit/Result/AutoGeneratedCode.h +2 -2
- data/src/agent/Core/SpawningKit/Result/AutoGeneratedCode.h.cxxcodebuilder +2 -2
- data/src/agent/Core/SpawningKit/Result.h +2 -2
- data/src/agent/Core/SpawningKit/SmartSpawner.h +9 -5
- data/src/agent/Core/SpawningKit/Spawner.h +29 -7
- data/src/agent/Core/SpawningKit/UserSwitchingRules.h +17 -10
- data/src/agent/Core/TelemetryCollector.h +4 -3
- data/src/agent/ExecHelper/ExecHelperMain.cpp +12 -14
- data/src/agent/FileReadHelper/FileReadHelperMain.cpp +195 -0
- data/src/agent/MainFunctions.h +38 -0
- data/src/agent/Shared/ApiAccountUtils.h +2 -2
- data/src/agent/Shared/ApiServerUtils.h +6 -5
- data/src/agent/Shared/ApplicationPoolApiKey.h +4 -2
- data/src/agent/Shared/Fundamentals/AbortHandler.cpp +90 -11
- data/src/agent/Shared/Fundamentals/AbortHandler.h +4 -2
- data/src/agent/Shared/Fundamentals/Initialization.cpp +12 -6
- data/src/agent/Shared/Fundamentals/Initialization.h +5 -5
- data/src/agent/Shared/Fundamentals/Utils.cpp +2 -2
- data/src/agent/Shared/Fundamentals/Utils.h +2 -2
- data/src/agent/SpawnEnvSetupper/SpawnEnvSetupperMain.cpp +36 -12
- data/src/agent/SystemMetrics/SystemMetricsMain.cpp +3 -2
- data/src/agent/TempDirToucher/TempDirToucherMain.cpp +10 -6
- data/src/agent/Watchdog/AgentWatcher.cpp +2 -2
- data/src/agent/Watchdog/ApiServer.h +3 -3
- data/src/agent/Watchdog/Config.h +22 -3
- data/src/agent/Watchdog/CoreWatcher.cpp +2 -2
- data/src/agent/Watchdog/InstanceDirToucher.cpp +3 -3
- data/src/agent/Watchdog/WatchdogMain.cpp +23 -22
- data/src/apache2_module/Bucket.cpp +2 -2
- data/src/apache2_module/Bucket.h +2 -2
- data/src/apache2_module/CBindings.cpp +2 -2
- data/src/apache2_module/Config.cpp +3 -3
- data/src/apache2_module/Config.h +2 -2
- data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp +68 -28
- data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp +32 -2
- data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp +121 -3
- data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/ConfigGeneral/Common.h +2 -2
- data/src/apache2_module/ConfigGeneral/ManifestGeneration.h +7 -5
- data/src/apache2_module/ConfigGeneral/SetterFuncs.h +2 -2
- data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp +25 -2
- data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp +14 -2
- data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp +65 -2
- data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp +37 -2
- data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/DirConfig/AutoGeneratedStruct.h +84 -4
- data/src/apache2_module/DirConfig/AutoGeneratedStruct.h.cxxcodebuilder +5 -2
- data/src/apache2_module/DirectoryMapper.h +16 -5
- data/src/apache2_module/Hooks.cpp +51 -7
- data/src/apache2_module/Hooks.h +2 -2
- data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp +31 -2
- data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h +57 -21
- data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h.cxxcodebuilder +4 -3
- data/src/apache2_module/Utils.h +2 -2
- data/src/apache2_module/mod_passenger.c +2 -2
- data/src/cxx_supportlib/Algorithms/Hasher.cpp +2 -2
- data/src/cxx_supportlib/Algorithms/Hasher.h +2 -2
- data/src/cxx_supportlib/Algorithms/MovingAverage.h +2 -8
- data/src/cxx_supportlib/AppLocalConfigFileUtils.h +148 -0
- data/src/cxx_supportlib/AppTypeDetector/CBindings.cpp +14 -3
- data/src/cxx_supportlib/AppTypeDetector/CBindings.h +4 -2
- data/src/cxx_supportlib/AppTypeDetector/Detector.h +40 -6
- data/src/cxx_supportlib/BackgroundEventLoop.cpp +7 -3
- data/src/cxx_supportlib/BackgroundEventLoop.h +2 -2
- data/src/cxx_supportlib/ConfigKit/AsyncUtils.h +2 -2
- data/src/cxx_supportlib/ConfigKit/Common.h +3 -3
- data/src/cxx_supportlib/ConfigKit/ConfigKit.h +2 -2
- data/src/cxx_supportlib/ConfigKit/DummyTranslator.h +2 -2
- data/src/cxx_supportlib/ConfigKit/PrefixTranslator.h +2 -2
- data/src/cxx_supportlib/ConfigKit/Schema.h +3 -3
- data/src/cxx_supportlib/ConfigKit/SchemaUtils.h +2 -2
- data/src/cxx_supportlib/ConfigKit/Store.h +2 -2
- data/src/cxx_supportlib/ConfigKit/SubComponentUtils.h +2 -2
- data/src/cxx_supportlib/ConfigKit/TableTranslator.h +2 -2
- data/src/cxx_supportlib/ConfigKit/Translator.h +3 -3
- data/src/cxx_supportlib/ConfigKit/Utils.h +2 -2
- data/src/cxx_supportlib/Constants.h +7 -5
- data/src/cxx_supportlib/Constants.h.cxxcodebuilder +2 -2
- data/src/cxx_supportlib/DataStructures/HashMap.h +2 -2
- data/src/cxx_supportlib/DataStructures/HashedStaticString.h +4 -2
- data/src/cxx_supportlib/DataStructures/LString.cpp +2 -2
- data/src/cxx_supportlib/DataStructures/LString.h +6 -2
- data/src/cxx_supportlib/DataStructures/StringKeyTable.h +3 -3
- data/src/cxx_supportlib/DataStructures/StringMap.h +2 -3
- data/src/cxx_supportlib/Exceptions.cpp +2 -2
- data/src/cxx_supportlib/Exceptions.h +2 -2
- data/src/cxx_supportlib/FileDescriptor.h +10 -2
- data/src/cxx_supportlib/FileTools/FileManip.cpp +12 -3
- data/src/cxx_supportlib/FileTools/FileManip.h +18 -2
- data/src/cxx_supportlib/FileTools/LargeFiles.h +2 -2
- data/src/cxx_supportlib/FileTools/PathManip.cpp +13 -4
- data/src/cxx_supportlib/FileTools/PathManip.h +2 -2
- data/src/cxx_supportlib/FileTools/PathManipCBindings.cpp +2 -2
- data/src/cxx_supportlib/FileTools/PathManipCBindings.h +2 -2
- data/src/cxx_supportlib/FileTools/PathSecurityCheck.cpp +2 -2
- data/src/cxx_supportlib/FileTools/PathSecurityCheck.h +2 -2
- data/src/cxx_supportlib/Hooks.h +3 -2
- data/src/cxx_supportlib/IOTools/BufferedIO.h +3 -3
- data/src/cxx_supportlib/IOTools/IOUtils.cpp +8 -12
- data/src/cxx_supportlib/IOTools/IOUtils.h +2 -2
- data/src/cxx_supportlib/IOTools/MessageIO.h +3 -3
- data/src/cxx_supportlib/IOTools/MessageSerialization.h +2 -2
- data/src/cxx_supportlib/InstanceDirectory.h +2 -2
- data/src/cxx_supportlib/Integrations/LibevJsonUtils.h +5 -5
- data/src/cxx_supportlib/JsonTools/Autocast.h +2 -2
- data/src/cxx_supportlib/JsonTools/CBindings.cpp +2 -4
- data/src/cxx_supportlib/JsonTools/CBindings.h +2 -2
- data/src/cxx_supportlib/JsonTools/JsonUtils.h +6 -6
- data/src/cxx_supportlib/LoggingKit/Assert.h +2 -2
- data/src/cxx_supportlib/LoggingKit/Config.h +4 -2
- data/src/cxx_supportlib/LoggingKit/Context.h +18 -23
- data/src/cxx_supportlib/LoggingKit/Forward.h +2 -4
- data/src/cxx_supportlib/LoggingKit/Implementation.cpp +53 -83
- data/src/cxx_supportlib/LoggingKit/Logging.h +2 -2
- data/src/cxx_supportlib/LoggingKit/LoggingKit.h +2 -2
- data/src/cxx_supportlib/LveLoggingDecorator.h +2 -2
- data/src/cxx_supportlib/MemoryKit/mbuf.cpp +14 -6
- data/src/cxx_supportlib/MemoryKit/mbuf.h +3 -3
- data/src/cxx_supportlib/MemoryKit/palloc.cpp +1 -1
- data/src/cxx_supportlib/MemoryKit/palloc.h +1 -1
- data/src/cxx_supportlib/ProcessManagement/Ruby.cpp +2 -2
- data/src/cxx_supportlib/ProcessManagement/Ruby.h +2 -2
- data/src/cxx_supportlib/ProcessManagement/Spawn.cpp +2 -2
- data/src/cxx_supportlib/ProcessManagement/Spawn.h +2 -2
- data/src/cxx_supportlib/ProcessManagement/Utils.cpp +3 -3
- data/src/cxx_supportlib/ProcessManagement/Utils.h +2 -2
- data/src/cxx_supportlib/RandomGenerator.h +2 -2
- data/src/cxx_supportlib/ResourceLocator.h +3 -3
- data/src/cxx_supportlib/SafeLibev.h +6 -6
- data/src/cxx_supportlib/SecurityKit/Crypto.cpp +5 -96
- data/src/cxx_supportlib/SecurityKit/Crypto.h +2 -10
- data/src/cxx_supportlib/SecurityKit/MemZeroGuard.h +2 -2
- data/src/cxx_supportlib/ServerKit/AcceptLoadBalancer.h +3 -3
- data/src/cxx_supportlib/ServerKit/Channel.h +2 -2
- data/src/cxx_supportlib/ServerKit/Client.h +2 -2
- data/src/cxx_supportlib/ServerKit/ClientRef.h +2 -2
- data/src/cxx_supportlib/ServerKit/Config.h +2 -2
- data/src/cxx_supportlib/ServerKit/Context.h +8 -2
- data/src/cxx_supportlib/ServerKit/CookieUtils.h +2 -2
- data/src/cxx_supportlib/ServerKit/Errors.h +5 -4
- data/src/cxx_supportlib/ServerKit/FdSinkChannel.h +2 -2
- data/src/cxx_supportlib/ServerKit/FdSourceChannel.h +2 -2
- data/src/cxx_supportlib/ServerKit/FileBufferedChannel.h +2 -2
- data/src/cxx_supportlib/ServerKit/FileBufferedFdSinkChannel.h +2 -2
- data/src/cxx_supportlib/ServerKit/HeaderTable.h +2 -2
- data/src/cxx_supportlib/ServerKit/Hooks.h +4 -4
- data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParser.h +3 -3
- data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParserState.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpClient.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +103 -71
- data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +6 -3
- data/src/cxx_supportlib/ServerKit/HttpRequest.h +4 -4
- data/src/cxx_supportlib/ServerKit/HttpRequestRef.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpServer.h +20 -14
- data/src/cxx_supportlib/ServerKit/Implementation.cpp +2 -2
- data/src/cxx_supportlib/ServerKit/Server.h +2 -8
- data/src/cxx_supportlib/ServerKit/llerrors.h +84 -0
- data/src/cxx_supportlib/ServerKit/llhttp.c +10168 -0
- data/src/cxx_supportlib/ServerKit/llhttp.h +903 -0
- data/src/cxx_supportlib/ServerKit/llhttp_api.c +510 -0
- data/src/cxx_supportlib/ServerKit/llhttp_http.c +170 -0
- data/src/cxx_supportlib/ServerKit/llversion.h +12 -0
- data/src/cxx_supportlib/ServerKit/url_parser.c +574 -0
- data/src/cxx_supportlib/ServerKit/url_parser.h +74 -0
- data/src/cxx_supportlib/StaticString.h +7 -3
- data/src/cxx_supportlib/StrIntTools/DateParsing.h +3 -3
- data/src/cxx_supportlib/StrIntTools/StrIntUtils.cpp +14 -5
- data/src/cxx_supportlib/StrIntTools/StrIntUtils.h +7 -2
- data/src/cxx_supportlib/StrIntTools/StrIntUtilsNoStrictAliasing.cpp +2 -2
- data/src/cxx_supportlib/StrIntTools/StringScanning.h +2 -2
- data/src/cxx_supportlib/StrIntTools/Template.h +2 -2
- data/src/cxx_supportlib/SystemTools/ContainerHelpers.h +59 -4
- data/src/cxx_supportlib/SystemTools/ProcessMetricsCollector.h +3 -3
- data/src/cxx_supportlib/SystemTools/SystemMetricsCollector.h +4 -4
- data/src/cxx_supportlib/SystemTools/SystemTime.cpp +2 -2
- data/src/cxx_supportlib/SystemTools/SystemTime.h +2 -2
- data/src/cxx_supportlib/SystemTools/UserDatabase.cpp +16 -16
- data/src/cxx_supportlib/SystemTools/UserDatabase.h +8 -12
- data/src/cxx_supportlib/Utils/AnsiColorConstants.h +13 -11
- data/src/cxx_supportlib/Utils/AsyncSignalSafeUtils.h +4 -2
- data/src/cxx_supportlib/Utils/BlockingQueue.h +2 -2
- data/src/cxx_supportlib/Utils/CachedFileStat.cpp +2 -2
- data/src/cxx_supportlib/Utils/CachedFileStat.h +2 -2
- data/src/cxx_supportlib/Utils/CachedFileStat.hpp +2 -2
- data/src/cxx_supportlib/Utils/ClassUtils.h +2 -2
- data/src/cxx_supportlib/Utils/Curl.h +2 -2
- data/src/cxx_supportlib/Utils/FastStringStream.h +2 -2
- data/src/cxx_supportlib/Utils/FileChangeChecker.h +2 -2
- data/src/cxx_supportlib/Utils/HttpConstants.h +3 -3
- data/src/cxx_supportlib/Utils/IniFile.h +2 -2
- data/src/cxx_supportlib/Utils/MessagePassing.h +2 -2
- data/src/cxx_supportlib/Utils/OptionParsing.h +2 -2
- data/src/cxx_supportlib/Utils/ReleaseableScopedPointer.h +2 -2
- data/src/cxx_supportlib/Utils/ScopeGuard.h +2 -2
- data/src/cxx_supportlib/Utils/SpeedMeter.h +2 -5
- data/src/cxx_supportlib/Utils/Timer.h +2 -2
- data/src/cxx_supportlib/Utils/VariantMap.h +2 -2
- data/src/cxx_supportlib/Utils.cpp +3 -3
- data/src/cxx_supportlib/Utils.h +2 -2
- data/src/cxx_supportlib/WatchdogLauncher.cpp +2 -2
- data/src/cxx_supportlib/WatchdogLauncher.h +3 -5
- data/src/cxx_supportlib/WebSocketCommandReverseServer.h +22 -21
- data/src/cxx_supportlib/WrapperRegistry/CBindings.cpp +2 -2
- data/src/cxx_supportlib/WrapperRegistry/CBindings.h +2 -2
- data/src/cxx_supportlib/WrapperRegistry/Entry.h +2 -2
- data/src/cxx_supportlib/WrapperRegistry/Registry.h +2 -2
- data/src/cxx_supportlib/oxt/backtrace.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/backtrace_disabled.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/backtrace_enabled.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/context.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/spin_lock_darwin.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/spin_lock_gcc_x86.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/spin_lock_portable.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/spin_lock_pthreads.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/tracable_exception_disabled.hpp +1 -1
- data/src/cxx_supportlib/oxt/detail/tracable_exception_enabled.hpp +1 -1
- data/src/cxx_supportlib/oxt/dynamic_thread_group.hpp +6 -2
- data/src/cxx_supportlib/oxt/implementation.cpp +13 -3
- data/src/cxx_supportlib/oxt/initialize.hpp +1 -1
- data/src/cxx_supportlib/oxt/macros.hpp +1 -1
- data/src/cxx_supportlib/oxt/spin_lock.hpp +1 -1
- data/src/cxx_supportlib/oxt/system_calls.cpp +22 -15
- data/src/cxx_supportlib/oxt/system_calls.hpp +1 -1
- data/src/cxx_supportlib/oxt/thread.hpp +3 -3
- data/src/cxx_supportlib/oxt/tracable_exception.hpp +1 -1
- data/src/cxx_supportlib/vendor-copy/adhoc_lve.h +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/compare.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/case_conv.hpp +5 -2
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/classification.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/find_format_all.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/find_iterator.hpp +11 -3
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/finder.hpp +15 -15
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/formatter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/detail/trim.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/find_format.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/find_iterator.hpp +27 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/finder.hpp +0 -4
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/formatter.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/iter_find.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/predicate.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/split.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/aligned_alloc.hpp +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/aligned_alloc_posix.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/aligned_alloc_sunos.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/align/detail/is_alignment.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/any_completion_executor.hpp +338 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/any_completion_handler.hpp +824 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/any_io_executor.hpp +353 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/append.hpp +67 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/as_tuple.hpp +154 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_allocator.hpp +115 -32
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_cancellation_slot.hpp +223 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_executor.hpp +119 -33
- data/src/cxx_supportlib/vendor-modified/boost/asio/associated_immediate_executor.hpp +283 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/associator.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/async_result.hpp +834 -107
- data/src/cxx_supportlib/vendor-modified/boost/asio/awaitable.hpp +144 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_datagram_socket.hpp +651 -329
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_deadline_timer.hpp +206 -124
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_file.hpp +826 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_io_object.hpp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_random_access_file.hpp +691 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_raw_socket.hpp +657 -331
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_readable_pipe.hpp +628 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_seq_packet_socket.hpp +376 -171
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_serial_port.hpp +413 -114
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_signal_set.hpp +325 -68
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket.hpp +427 -248
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_acceptor.hpp +1239 -517
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_iostream.hpp +22 -121
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_socket_streambuf.hpp +16 -81
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_file.hpp +746 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_stream_socket.hpp +494 -252
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_streambuf.hpp +13 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_streambuf_fwd.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_waitable_timer.hpp +251 -132
- data/src/cxx_supportlib/vendor-modified/boost/asio/basic_writable_pipe.hpp +624 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_allocator.hpp +598 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_cancellation_slot.hpp +615 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_executor.hpp +235 -182
- data/src/cxx_supportlib/vendor-modified/boost/asio/bind_immediate_executor.hpp +618 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffer.hpp +961 -370
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffer_registration.hpp +320 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_read_stream.hpp +55 -39
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_read_stream_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_stream.hpp +61 -47
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_stream_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_write_stream.hpp +55 -39
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffered_write_stream_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/buffers_iterator.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancel_after.hpp +303 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancel_at.hpp +296 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_signal.hpp +247 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_state.hpp +237 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/cancellation_type.hpp +159 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/co_composed.hpp +1323 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/co_spawn.hpp +525 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/completion_condition.hpp +50 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/compose.hpp +130 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/composed.hpp +415 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/connect.hpp +468 -181
- data/src/cxx_supportlib/vendor-modified/boost/asio/connect_pipe.hpp +85 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/consign.hpp +77 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/coroutine.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/deadline_timer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/default_completion_token.hpp +91 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/defer.hpp +154 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/deferred.hpp +721 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detached.hpp +107 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/array.hpp +2 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/array_fwd.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/assert.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/atomic_count.hpp +24 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/base_from_cancellation_state.hpp +166 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/base_from_completion_cond.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/bind_handler.hpp +265 -370
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/blocking_executor_op.hpp +109 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffer_resize_guard.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffer_sequence_adapter.hpp +300 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/buffered_stream_storage.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/call_stack.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/chrono.hpp +2 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/chrono_time_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/completion_handler.hpp +12 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/completion_message.hpp +129 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/completion_payload.hpp +222 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/completion_payload_handler.hpp +81 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/composed_work.hpp +254 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/concurrency_hint.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/conditionally_enabled_event.hpp +9 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/conditionally_enabled_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/config.hpp +700 -722
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/consuming_buffers.hpp +40 -11
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/cstddef.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/cstdint.hpp +3 -23
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/date_time_fwd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/deadline_timer_service.hpp +74 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/dependent_type.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_ops.hpp +65 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_read_op.hpp +76 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/descriptor_write_op.hpp +75 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/dev_poll_reactor.hpp +36 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/epoll_reactor.hpp +36 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/event.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/eventfd_select_interrupter.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/exception.hpp +31 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/executor_function.hpp +154 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/executor_op.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/fd_set_adapter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/fenced_block.hpp +3 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/functional.hpp +5 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/future.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/global.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_alloc_helpers.hpp +31 -145
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_cont_helpers.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_tracking.hpp +27 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_type_requirements.hpp +24 -27
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_work.hpp +452 -36
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/hash_map.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/buffer_sequence_adapter.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/descriptor_ops.ipp +605 -85
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.hpp +21 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/dev_poll_reactor.ipp +28 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.hpp +21 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/epoll_reactor.ipp +47 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/eventfd_select_interrupter.ipp +20 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/handler_tracking.ipp +47 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_descriptor_service.ipp +207 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_file_service.ipp +142 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_service.hpp +114 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_service.ipp +916 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/io_uring_socket_service_base.ipp +251 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.hpp +21 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/kqueue_reactor.ipp +49 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/null_event.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/pipe_select_interrupter.ipp +11 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_event.ipp +8 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_mutex.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_serial_port_service.ipp +170 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_thread.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/posix_tss_ptr.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_descriptor_service.ipp +23 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_socket_service_base.ipp +32 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/resolver_service_base.ipp +39 -35
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/scheduler.ipp +110 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.hpp +25 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/select_reactor.ipp +74 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/service_registry.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/service_registry.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/signal_set_service.ipp +185 -28
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_ops.ipp +828 -355
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/socket_select_interrupter.ipp +19 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_executor_service.hpp +209 -42
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_executor_service.ipp +25 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_service.hpp +8 -40
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/strand_service.ipp +34 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/thread_context.ipp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/throw_error.ipp +10 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/timer_queue_ptime.ipp +17 -11
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/timer_queue_set.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_defer.hpp +209 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_dispatch.hpp +195 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiate_post.hpp +209 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/initiation_base.hpp +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_control.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_object_impl.hpp +179 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_read_at_op.hpp +197 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_read_op.hpp +192 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_service.hpp +689 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_write_at_op.hpp +191 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_descriptor_write_op.hpp +187 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_file_service.hpp +263 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_null_buffers_op.hpp +116 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_operation.hpp +86 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_service.hpp +321 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_accept_op.hpp +282 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_connect_op.hpp +142 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recv_op.hpp +207 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recvfrom_op.hpp +208 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_recvmsg_op.hpp +194 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_send_op.hpp +193 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_sendto_op.hpp +196 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_service.hpp +631 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_socket_service_base.hpp +665 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/io_uring_wait_op.hpp +114 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/is_buffer_sequence.hpp +89 -32
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/is_executor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/keyword_tss_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/kqueue_reactor.hpp +37 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/limits.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/local_free_on_block_exit.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/memory.hpp +83 -27
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/mutex.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/non_const_lvalue.hpp +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/noncopyable.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_event.hpp +7 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_fenced_block.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_global.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_mutex.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_reactor.hpp +19 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_signal_blocker.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_socket_service.hpp +63 -52
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_static_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_thread.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/null_tss_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/object_pool.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/op_queue.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/operation.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/pipe_select_interrupter.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/pop_options.hpp +30 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_event.hpp +15 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_fd_set_adapter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_global.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_serial_port_service.hpp +251 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_signal_blocker.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_static_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_thread.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/posix_tss_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/push_options.hpp +60 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_descriptor_service.hpp +237 -55
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_null_buffers_op.hpp +49 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_accept_op.hpp +139 -33
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_connect_op.hpp +59 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recv_op.hpp +81 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recvfrom_op.hpp +81 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_recvmsg_op.hpp +65 -13
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_send_op.hpp +86 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_sendto_op.hpp +81 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service.hpp +198 -91
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_socket_service_base.hpp +319 -75
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_wait_op.hpp +49 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor.hpp +29 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_op.hpp +8 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_op_queue.hpp +45 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/recycling_allocator.hpp +26 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/regex_fwd.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_endpoint_op.hpp +35 -17
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_op.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolve_query_op.hpp +35 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolver_service.hpp +24 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/resolver_service_base.hpp +37 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler.hpp +36 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_operation.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_task.hpp +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scheduler_thread_info.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scoped_lock.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/scoped_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/select_interrupter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/select_reactor.hpp +59 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/service_registry.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_blocker.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_handler.hpp +11 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_init.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_op.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/signal_set_service.hpp +90 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_holder.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_ops.hpp +71 -33
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_option.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_select_interrupter.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/socket_types.hpp +12 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/source_location.hpp +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/static_mutex.hpp +3 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_event.hpp +13 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_fenced_block.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_global.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_mutex.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_static_mutex.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/std_thread.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/strand_executor_service.hpp +36 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/strand_service.hpp +8 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/string_view.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread.hpp +7 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_context.hpp +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_group.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/thread_info_base.hpp +164 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/throw_error.hpp +18 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/throw_exception.hpp +7 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timed_cancel_op.hpp +363 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue.hpp +33 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_ptime.hpp +6 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_queue_set.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_scheduler.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/timer_scheduler_fwd.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/tss_ptr.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/type_traits.hpp +132 -40
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/utility.hpp +85 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wait_handler.hpp +13 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wait_op.hpp +6 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/winsock_init.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/work_dispatcher.hpp +85 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/wrapped_handler.hpp +33 -129
- data/src/cxx_supportlib/vendor-modified/boost/asio/dispatch.hpp +136 -47
- data/src/cxx_supportlib/vendor-modified/boost/asio/error.hpp +30 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/allocator.hpp +280 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/any_executor.hpp +1935 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/bad_executor.hpp +48 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking.hpp +1362 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/blocking_adaptation.hpp +1082 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context.hpp +193 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/context_as.hpp +192 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/executor.hpp +118 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/impl/bad_executor.ipp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/invocable_archetype.hpp +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/mapping.hpp +1004 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/occupancy.hpp +186 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/outstanding_work.hpp +755 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/prefer_only.hpp +330 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution/relationship.hpp +753 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution.hpp +33 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/execution_context.hpp +3 -26
- data/src/cxx_supportlib/vendor-modified/boost/asio/executor.hpp +66 -44
- data/src/cxx_supportlib/vendor-modified/boost/asio/executor_work_guard.hpp +239 -47
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/append.hpp +38 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/as_single.hpp +134 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/as_tuple.hpp +38 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/awaitable_operators.hpp +538 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_channel.hpp +516 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/basic_concurrent_channel.hpp +516 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/cancellation_condition.hpp +154 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel.hpp +72 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel_error.hpp +88 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/channel_traits.hpp +303 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/co_composed.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/co_spawn.hpp +138 -177
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/concurrent_channel.hpp +72 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/coro.hpp +295 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/coro_traits.hpp +230 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/deferred.hpp +38 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_operation.hpp +363 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_receive_op.hpp +128 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_functions.hpp +202 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_send_op.hpp +149 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/channel_service.hpp +681 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_completion_handler.hpp +171 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/coro_promise_allocator.hpp +142 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/has_signature.hpp +56 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/impl/channel_service.hpp +625 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail/partial_promise.hpp +199 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/as_single.hpp +183 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/channel_error.ipp +63 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/coro.hpp +1224 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/parallel_group.hpp +790 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/promise.hpp +257 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/use_coro.hpp +216 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/use_promise.hpp +68 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/parallel_group.hpp +457 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/prepend.hpp +38 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/promise.hpp +226 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_coro.hpp +191 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/use_promise.hpp +113 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/file_base.hpp +168 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/basic_endpoint.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/datagram_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/detail/endpoint.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/detail/impl/endpoint.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/raw_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/seq_packet_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/generic/stream_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/handler_continuation_hook.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/high_resolution_timer.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/immediate.hpp +144 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/any_completion_executor.ipp +128 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/any_io_executor.ipp +136 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/append.hpp +171 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/as_tuple.hpp +278 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/awaitable.hpp +1198 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_read_stream.hpp +160 -185
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/buffered_write_stream.hpp +154 -181
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/cancel_after.hpp +270 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/cancel_at.hpp +270 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/cancellation_signal.ipp +98 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/co_spawn.hpp +459 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect.hpp +281 -438
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect_pipe.hpp +75 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/connect_pipe.ipp +151 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/consign.hpp +146 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/deferred.hpp +149 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/detached.hpp +79 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/error.ipp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/execution_context.hpp +7 -37
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/execution_context.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/executor.hpp +72 -141
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/executor.ipp +8 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_context.hpp +220 -132
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/io_context.ipp +5 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/multiple_exceptions.ipp +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/prepend.hpp +172 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read.hpp +529 -342
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_at.hpp +202 -280
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/read_until.hpp +1840 -672
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/redirect_error.hpp +289 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/serial_port_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/serial_port_base.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/spawn.hpp +1183 -318
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/src.hpp +15 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_context.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_context.ipp +26 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/system_executor.hpp +115 -21
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/thread_pool.hpp +198 -48
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/thread_pool.ipp +74 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_awaitable.hpp +303 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/use_future.hpp +186 -417
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write.hpp +446 -340
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/write_at.hpp +171 -263
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_context.hpp +699 -70
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_context_strand.hpp +87 -75
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_service.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/io_service_strand.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address.hpp +52 -31
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4.hpp +124 -32
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4_iterator.hpp +13 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v4_range.hpp +16 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6.hpp +114 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6_iterator.hpp +13 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/address_v6_range.hpp +15 -20
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/bad_address_cast.hpp +19 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_endpoint.hpp +46 -27
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver.hpp +337 -243
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_entry.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_iterator.hpp +4 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_query.hpp +17 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/basic_resolver_results.hpp +12 -16
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/endpoint.hpp +21 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/impl/endpoint.ipp +10 -14
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail/socket_option.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/host_name.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/icmp.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address.ipp +23 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v4.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v4.ipp +11 -15
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v6.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/address_v6.ipp +28 -36
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/basic_endpoint.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/host_name.ipp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v4.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v4.ipp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v6.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/impl/network_v6.ipp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/multicast.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/network_v4.hpp +17 -21
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/network_v6.hpp +14 -18
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/resolver_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/resolver_query_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/tcp.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/udp.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/unicast.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/v6_only.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_applicable_property.hpp +63 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_contiguous_iterator.hpp +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_executor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_read_buffered.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/is_write_buffered.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/basic_endpoint.hpp +10 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/connect_pair.hpp +14 -19
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/datagram_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/detail/endpoint.hpp +7 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/detail/impl/endpoint.ipp +10 -8
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/seq_packet_protocol.hpp +86 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/local/stream_protocol.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/asio/multiple_exceptions.hpp +54 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/packaged_task.hpp +4 -64
- data/src/cxx_supportlib/vendor-modified/boost/asio/placeholders.hpp +35 -105
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_descriptor.hpp +273 -82
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/basic_stream_descriptor.hpp +283 -86
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/descriptor.hpp +5 -612
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/descriptor_base.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/stream_descriptor.hpp +3 -326
- data/src/cxx_supportlib/vendor-modified/boost/asio/post.hpp +149 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/prefer.hpp +581 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/prepend.hpp +68 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/query.hpp +315 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/random_access_file.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/read.hpp +777 -177
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_at.hpp +231 -74
- data/src/cxx_supportlib/vendor-modified/boost/asio/read_until.hpp +1849 -471
- data/src/cxx_supportlib/vendor-modified/boost/asio/readable_pipe.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/recycling_allocator.hpp +140 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/redirect_error.hpp +106 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/registered_buffer.hpp +346 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/require.hpp +437 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/require_concept.hpp +347 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/serial_port.hpp +3 -736
- data/src/cxx_supportlib/vendor-modified/boost/asio/serial_port_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/signal_set.hpp +3 -422
- data/src/cxx_supportlib/vendor-modified/boost/asio/signal_set_base.hpp +173 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/socket_base.hpp +26 -26
- data/src/cxx_supportlib/vendor-modified/boost/asio/spawn.hpp +640 -105
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/context.hpp +7 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/context_base.hpp +38 -21
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/buffered_handshake_op.hpp +7 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/engine.hpp +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/handshake_op.hpp +7 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/engine.ipp +65 -10
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/impl/openssl_init.ipp +9 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/io.hpp +75 -71
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/openssl_init.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/openssl_types.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/password_callback.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/read_op.hpp +7 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/shutdown_op.hpp +17 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/stream_core.hpp +89 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/verify_callback.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail/write_op.hpp +12 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/error.hpp +21 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/host_name_verification.hpp +92 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/context.ipp +242 -79
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/error.ipp +29 -5
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/host_name_verification.ipp +75 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/rfc2818_verification.ipp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/impl/src.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/rfc2818_verification.hpp +7 -3
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream.hpp +423 -142
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/stream_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/verify_context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl/verify_mode.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ssl.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/static_thread_pool.hpp +33 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/steady_timer.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/strand.hpp +311 -40
- data/src/cxx_supportlib/vendor-modified/boost/asio/stream_file.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/streambuf.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/system_context.hpp +18 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/system_executor.hpp +570 -28
- data/src/cxx_supportlib/vendor-modified/boost/asio/system_timer.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/asio/this_coro.hpp +269 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/thread_pool.hpp +773 -42
- data/src/cxx_supportlib/vendor-modified/boost/asio/time_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/equality_comparable.hpp +102 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/execute_member.hpp +106 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/prefer_free.hpp +106 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/prefer_member.hpp +106 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_free.hpp +106 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_member.hpp +106 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/query_static_constexpr_member.hpp +103 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_concept_free.hpp +106 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_concept_member.hpp +106 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_free.hpp +106 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/require_member.hpp +106 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_query.hpp +104 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_require.hpp +117 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/traits/static_require_concept.hpp +118 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/buffer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/executor.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/internet.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/io_context.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/net.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/netfwd.hpp +82 -43
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/socket.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/ts/timer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/unyield.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/use_awaitable.hpp +163 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/use_future.hpp +21 -21
- data/src/cxx_supportlib/vendor-modified/boost/asio/uses_executor.hpp +3 -7
- data/src/cxx_supportlib/vendor-modified/boost/asio/version.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/asio/wait_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio/writable_pipe.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/asio/write.hpp +772 -173
- data/src/cxx_supportlib/vendor-modified/boost/asio/write_at.hpp +237 -73
- data/src/cxx_supportlib/vendor-modified/boost/asio/yield.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/asio.hpp +72 -28
- data/src/cxx_supportlib/vendor-modified/boost/assert/source_location.hpp +197 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic.hpp +170 -11
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic_flag.hpp +12 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/atomic_ref.hpp +97 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/capabilities.hpp +2 -191
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/addressof.hpp +8 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/aligned_variable.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_flag_impl.hpp +129 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_impl.hpp +1265 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_ref_impl.hpp +1228 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/bitwise_cast.hpp +102 -12
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/bitwise_fp_cast.hpp +43 -11
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/capabilities.hpp +217 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_arch_gcc_aarch32.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_arch_gcc_aarch64.hpp +65 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_arch_gcc_alpha.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_arch_gcc_arm.hpp +103 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_arch_gcc_ppc.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_arch_gcc_sparc.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_arch_gcc_x86.hpp +74 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_arch_msvc_arm.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_arch_msvc_x86.hpp +61 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_atomic.hpp +100 -75
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_sync.hpp +0 -7
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/cas_based_exchange.hpp +50 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/classify.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/config.hpp +57 -64
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_operations.hpp +50 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_operations_fwd.hpp +38 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_aarch32.hpp +1121 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_aarch64.hpp +1909 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_alpha.hpp +867 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_arm.hpp +1417 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_ppc.hpp +1218 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_sparc.hpp +215 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_x86.hpp +1110 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_msvc_arm.hpp +828 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_msvc_x86.hpp +903 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_operations.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_operations_emulated.hpp +194 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_operations_emulated_fwd.hpp +38 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_operations_fwd.hpp +38 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_cas_based.hpp +94 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_gcc_atomic.hpp +306 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_gcc_sync.hpp +263 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_ops_linux_arm.hpp +169 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extending_cas_based_arithmetic.hpp +72 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_fp_operations_fwd.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_fp_ops_emulated.hpp +22 -12
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_fp_ops_generic.hpp +13 -10
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_operations_fwd.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_emulated.hpp +59 -40
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_aarch32.hpp +1060 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_aarch64.hpp +1330 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_arm.hpp +363 -355
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_ppc.hpp +167 -163
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_gcc_x86.hpp +232 -102
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_generic.hpp +9 -17
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_msvc_arm.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/extra_ops_msvc_x86.hpp +119 -92
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_operations.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_aarch32.hpp +60 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_aarch64.hpp +58 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_alpha.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_arm.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_ppc.hpp +68 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_sparc.hpp +70 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_gcc_x86.hpp +69 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_msvc_arm.hpp +66 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_arch_ops_msvc_x86.hpp +66 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_operations.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_operations_emulated.hpp +50 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_ops_gcc_atomic.hpp +75 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_ops_gcc_sync.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fence_ops_linux_arm.hpp +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/float_sizes.hpp +122 -35
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/footer.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fp_operations_fwd.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fp_ops_emulated.hpp +13 -8
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/fp_ops_generic.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/futex.hpp +185 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/gcc_arm_asm_common.hpp +79 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/gcc_atomic_memory_order_utils.hpp +66 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/gcc_ppc_asm_common.hpp +33 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/header.hpp +72 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/int_sizes.hpp +25 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/integral_conversions.hpp +108 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/interlocked.hpp +35 -11
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/intptr.hpp +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/lock_pool.hpp +151 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/memory_order_utils.hpp +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/once_flag.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_aarch32_common.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_aarch64_common.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_arm_common.hpp +8 -79
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_ppc_common.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_msvc_common.hpp +7 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/pause.hpp +30 -5
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/platform.hpp +80 -34
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/storage_traits.hpp +187 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/alignment_of.hpp +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/has_unique_object_representations.hpp +143 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_enum.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_floating_point.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_nothrow_default_constructible.hpp +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/is_trivially_copyable.hpp +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/type_traits/remove_cv.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_capabilities.hpp +363 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_caps_darwin_ulock.hpp +58 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_caps_dragonfly_umtx.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_caps_freebsd_umtx.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_caps_futex.hpp +31 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_on_address.hpp +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_operations.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_operations_fwd.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_darwin_ulock.hpp +158 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_dragonfly_umtx.hpp +75 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_emulated.hpp +96 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_freebsd_umtx.hpp +119 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_futex.hpp +111 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/wait_ops_generic.hpp +143 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/fences.hpp +7 -18
- data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic_flag.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic/ipc_atomic_ref.hpp +97 -0
- data/src/cxx_supportlib/vendor-modified/boost/atomic.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/apply.hpp +4 -49
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind.hpp +263 -1815
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/bind_cc.hpp +117 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/bind_mf2_cc.hpp +210 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/bind_mf_cc.hpp +405 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/integer_sequence.hpp +111 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/result_traits.hpp +165 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/detail/tuple_for_each.hpp +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn.hpp +143 -279
- data/src/cxx_supportlib/vendor-modified/boost/bind/placeholders.hpp +13 -14
- data/src/cxx_supportlib/vendor-modified/boost/bind/protect.hpp +24 -259
- data/src/cxx_supportlib/vendor-modified/boost/bind/std_placeholders.hpp +33 -0
- data/src/cxx_supportlib/vendor-modified/boost/cerrno.hpp +4 -320
- data/src/cxx_supportlib/vendor-modified/boost/chrono/config.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/mac/chrono.hpp +14 -14
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/mac/process_cpu_clocks.hpp +34 -34
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/mac/thread_clock.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/posix/chrono.hpp +34 -14
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/posix/process_cpu_clocks.hpp +27 -27
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined/posix/thread_clock.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/is_evenly_divisible_by.hpp +1 -7
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/requires_cxx11.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/scan_keyword.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/chrono/detail/system.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/chrono/duration.hpp +10 -6
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_get.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_io.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_put.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_style.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/duration_units.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/time_point_io.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/timezone.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io/utility/ios_base_state_ptr.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/chrono/io_v1/chrono_io.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/chrono/system_clocks.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/chrono/time_point.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/base.hpp +178 -167
- data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/details.hpp +39 -47
- data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/space_optimized.hpp +32 -38
- data/src/cxx_supportlib/vendor-modified/boost/circular_buffer.hpp +12 -9
- data/src/cxx_supportlib/vendor-modified/boost/concept/assert.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/concept/detail/general.hpp +24 -3
- data/src/cxx_supportlib/vendor-modified/boost/concept/detail/has_constraints.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/concept/usage.hpp +8 -1
- data/src/cxx_supportlib/vendor-modified/boost/concept_check.hpp +20 -20
- data/src/cxx_supportlib/vendor-modified/boost/config/abi_prefix.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/abi_suffix.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx03.hpp +211 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx11.hpp +212 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx14.hpp +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx17.hpp +65 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx20.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx23.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx98.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/auto_link.hpp +78 -19
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/borland.hpp +13 -3
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang.hpp +38 -4
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang_version.hpp +89 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/codegear.hpp +164 -10
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/comeau.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/common_edg.hpp +40 -11
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/cray.hpp +374 -52
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/digitalmars.hpp +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc.hpp +41 -11
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/gcc_xml.hpp +9 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/greenhills.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/hp_acc.hpp +7 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/intel.hpp +14 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/kai.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/metrowerks.hpp +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/mpw.hpp +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/nvcc.hpp +9 -3
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/pathscale.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/sunpro_cc.hpp +15 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/vacpp.hpp +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +54 -10
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/xlcpp_zos.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/cxx_composite.hpp +218 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/select_compiler_config.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/select_platform_config.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/select_stdlib_config.hpp +13 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/suffix.hpp +303 -5
- data/src/cxx_supportlib/vendor-modified/boost/config/header_deprecated.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/bsd.hpp +5 -8
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/vxworks.hpp +63 -74
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/wasm.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/requires_threads.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/dinkumware.hpp +76 -10
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcomo.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libcpp.hpp +51 -4
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/libstdcpp3.hpp +144 -11
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/modena.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/msl.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/roguewave.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/sgi.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/stlport.hpp +6 -5
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/vacpp.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/stdlib/xlcpp_zos.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/user.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/config/workaround.hpp +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +291 -18
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +43 -35
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +205 -41
- data/src/cxx_supportlib/vendor-modified/boost/container/container_fwd.hpp +132 -38
- data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +981 -361
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool.hpp +25 -22
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool_impl.hpp +838 -463
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/addressof.hpp +2 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/advanced_insert_int.hpp +199 -133
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/algorithm.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_lib.h +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/allocation_type.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/allocator_version_traits.hpp +16 -16
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/block_list.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/block_slist.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +73 -13
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_begin.hpp +11 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_end.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/construct_in_place.hpp +52 -16
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/container_or_allocator_rebind.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/container_rebind.hpp +21 -116
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +991 -148
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/destroyers.hpp +181 -57
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/dispatch_uses_allocator.hpp +68 -68
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +443 -239
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/function_detector.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/guards_dended.hpp +198 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_container.hpp +18 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_contiguous_container.hpp +36 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_pair.hpp +91 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterator.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterators.hpp +228 -194
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/math_functions.hpp +55 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mpl.hpp +60 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/multiallocation_chain.hpp +135 -40
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mutex.hpp +48 -23
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/next_capacity.hpp +28 -9
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_alloc_holder.hpp +352 -152
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool_impl.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +152 -105
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/placement_new.hpp +1 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common_alloc.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_resource.hpp +7 -11
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/std_fwd.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/thread_mutex.hpp +181 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/transform_iterator.hpp +28 -28
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +464 -351
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/type_traits.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/value_functors.hpp +9 -13
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/value_init.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/variadic_templates_tools.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/version_type.hpp +6 -15
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +138 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +3041 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +874 -314
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +391 -126
- data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +150 -120
- data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +634 -254
- data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +33 -13
- data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +30 -24
- data/src/cxx_supportlib/vendor-modified/boost/container/node_handle.hpp +35 -22
- data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +433 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/devector.hpp +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/flat_set.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/global_resource.hpp +1 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/memory_resource.hpp +37 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/monotonic_buffer_resource.hpp +10 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/polymorphic_allocator.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp +92 -8
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/synchronized_pool_resource.hpp +7 -6
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/unsynchronized_pool_resource.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/scoped_allocator.hpp +79 -81
- data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +445 -180
- data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +142 -113
- data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +325 -263
- data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +386 -228
- data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +243 -161
- data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +601 -455
- data/src/cxx_supportlib/vendor-modified/boost/container/throw_exception.hpp +155 -41
- data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +977 -1017
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_integral.hpp +146 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_mix.hpp +113 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_range.hpp +408 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_tuple_like.hpp +62 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/mulx.hpp +79 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash.hpp +395 -580
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash_fwd.hpp +25 -24
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_contiguous_range.hpp +98 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_described_class.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_range.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_tuple_like.hpp +36 -0
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/is_unordered_range.hpp +38 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/addressof.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/core/alignof.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/alloc_construct.hpp +95 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/allocator_access.hpp +834 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/allocator_traits.hpp +112 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/bit.hpp +954 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/checked_delete.hpp +35 -7
- data/src/cxx_supportlib/vendor-modified/boost/core/cmath.hpp +298 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/data.hpp +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/default_allocator.hpp +158 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/is_same.hpp +39 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/lwt_unattended.hpp +66 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/minstd_rand.hpp +58 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/sp_thread_pause.hpp +71 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/sp_thread_sleep.hpp +122 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/sp_thread_yield.hpp +100 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/splitmix64.hpp +54 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/detail/string_view.hpp +1272 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/empty_value.hpp +203 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/exchange.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/explicit_operator_bool.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/fclose_deleter.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/first_scalar.hpp +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/functor.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/identity.hpp +61 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/ignore_unused.hpp +32 -2
- data/src/cxx_supportlib/vendor-modified/boost/core/invoke_swap.hpp +93 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/is_same.hpp +10 -15
- data/src/cxx_supportlib/vendor-modified/boost/core/launder.hpp +69 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +269 -145
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test_trait.hpp +43 -8
- data/src/cxx_supportlib/vendor-modified/boost/core/make_span.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/max_align.hpp +82 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/memory_resource.hpp +108 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/no_exceptions_support.hpp +14 -2
- data/src/cxx_supportlib/vendor-modified/boost/core/noinit_adaptor.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/noncopyable.hpp +16 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/null_deleter.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/nvp.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/pointer_in_range.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/pointer_traits.hpp +112 -60
- data/src/cxx_supportlib/vendor-modified/boost/core/quick_exit.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/ref.hpp +61 -17
- data/src/cxx_supportlib/vendor-modified/boost/core/serialization.hpp +131 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/size.hpp +31 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/snprintf.hpp +173 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/span.hpp +401 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/swap.hpp +12 -32
- data/src/cxx_supportlib/vendor-modified/boost/core/type_name.hpp +1186 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/typeinfo.hpp +26 -10
- data/src/cxx_supportlib/vendor-modified/boost/core/uncaught_exceptions.hpp +155 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/use_default.hpp +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/verbose_terminate_handler.hpp +88 -0
- data/src/cxx_supportlib/vendor-modified/boost/core/yield_primitives.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/cregex.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/cstdint.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/current_function.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/c_time.hpp +9 -4
- data/src/cxx_supportlib/vendor-modified/boost/date_time/compiler_config.hpp +9 -41
- data/src/cxx_supportlib/vendor-modified/boost/date_time/constrained_value.hpp +19 -11
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_duration.hpp +17 -22
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_duration_types.hpp +44 -49
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_facet.hpp +5 -6
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_generators.hpp +24 -19
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_iterator.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/date_time/date_parsing.hpp +51 -25
- data/src/cxx_supportlib/vendor-modified/boost/date_time/dst_rules.hpp +56 -56
- data/src/cxx_supportlib/vendor-modified/boost/date_time/dst_transition_generators.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/date_time/find_match.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/format_date_parser.hpp +98 -98
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/formatters.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/formatters_limited.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_date.hpp +34 -27
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_day.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_duration.hpp +44 -32
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_duration_types.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_month.hpp +51 -23
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_serialize.hpp +29 -27
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_weekday.hpp +43 -9
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/greg_year.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian/parsers.hpp +34 -15
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian_calendar.hpp +15 -17
- data/src/cxx_supportlib/vendor-modified/boost/date_time/gregorian_calendar.ipp +30 -25
- data/src/cxx_supportlib/vendor-modified/boost/date_time/int_adapter.hpp +57 -37
- data/src/cxx_supportlib/vendor-modified/boost/date_time/iso_format.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time/local_date_time.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/date_time/local_time/local_time_io.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/locale_config.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/period.hpp +44 -47
- data/src/cxx_supportlib/vendor-modified/boost/date_time/period_formatter.hpp +34 -31
- data/src/cxx_supportlib/vendor-modified/boost/date_time/period_parser.hpp +27 -28
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/conversion.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/date_duration_operators.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/posix_time_config.hpp +13 -26
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/posix_time_duration.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/posix_time_io.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/ptime.hpp +22 -4
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/time_formatters.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/time_formatters_limited.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/time_parsers.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/posix_time/time_serialize.hpp +28 -12
- data/src/cxx_supportlib/vendor-modified/boost/date_time/special_values_formatter.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/date_time/special_values_parser.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/date_time/string_parse_tree.hpp +5 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/strings_from_facet.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time.hpp +24 -3
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_duration.hpp +56 -44
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_facet.hpp +9 -12
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_iterator.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_parsing.hpp +5 -10
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_resolution_traits.hpp +18 -18
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_system_counted.hpp +65 -50
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_system_split.hpp +43 -30
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_zone_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/time_zone_names.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/tz_db_base.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/date_time/wrapping_int.hpp +16 -15
- data/src/cxx_supportlib/vendor-modified/boost/date_time/year_month_day.hpp +7 -5
- data/src/cxx_supportlib/vendor-modified/boost/describe/bases.hpp +50 -0
- data/src/cxx_supportlib/vendor-modified/boost/describe/detail/config.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/describe/detail/cx_streq.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/describe/detail/void_t.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/describe/members.hpp +161 -0
- data/src/cxx_supportlib/vendor-modified/boost/describe/modifiers.hpp +33 -0
- data/src/cxx_supportlib/vendor-modified/boost/detail/basic_pointerbuf.hpp +7 -11
- data/src/cxx_supportlib/vendor-modified/boost/detail/indirect_traits.hpp +38 -47
- data/src/cxx_supportlib/vendor-modified/boost/detail/lcast_precision.hpp +6 -97
- data/src/cxx_supportlib/vendor-modified/boost/detail/reference_content.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/detail/workaround.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/exception/current_exception_cast.hpp +10 -4
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/clone_current_exception.hpp +10 -4
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/error_info_impl.hpp +12 -7
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/exception_ptr.hpp +135 -34
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/is_output_streamable.hpp +9 -4
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/object_hex_dump.hpp +9 -4
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/requires_cxx11.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/shared_ptr.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/type_info.hpp +11 -5
- data/src/cxx_supportlib/vendor-modified/boost/exception/diagnostic_information.hpp +18 -9
- data/src/cxx_supportlib/vendor-modified/boost/exception/exception.hpp +118 -70
- data/src/cxx_supportlib/vendor-modified/boost/exception/get_error_info.hpp +9 -4
- data/src/cxx_supportlib/vendor-modified/boost/exception/info.hpp +12 -10
- data/src/cxx_supportlib/vendor-modified/boost/exception/to_string.hpp +10 -5
- data/src/cxx_supportlib/vendor-modified/boost/exception/to_string_stub.hpp +9 -4
- data/src/cxx_supportlib/vendor-modified/boost/exception_ptr.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/foreach.hpp +16 -9
- data/src/cxx_supportlib/vendor-modified/boost/function/function0.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function1.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function10.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function2.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function3.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function4.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function5.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function6.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function7.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function8.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function9.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/function/function_base.hpp +77 -237
- data/src/cxx_supportlib/vendor-modified/boost/function/function_fwd.hpp +36 -41
- data/src/cxx_supportlib/vendor-modified/boost/function/function_template.hpp +456 -464
- data/src/cxx_supportlib/vendor-modified/boost/function/function_typeof.hpp +1 -31
- data/src/cxx_supportlib/vendor-modified/boost/function.hpp +5 -61
- data/src/cxx_supportlib/vendor-modified/boost/integer/common_factor.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/integer/common_factor_ct.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/integer/common_factor_rt.hpp +35 -33
- data/src/cxx_supportlib/vendor-modified/boost/integer/extended_euclidean.hpp +83 -0
- data/src/cxx_supportlib/vendor-modified/boost/integer/integer_log2.hpp +86 -81
- data/src/cxx_supportlib/vendor-modified/boost/integer/integer_mask.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/integer/mod_inverse.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/integer/static_log2.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/integer/static_min_max.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/integer.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/integer_fwd.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/integer_traits.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/any_hook.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avl_set.hpp +99 -100
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree.hpp +51 -52
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree_algorithms.hpp +83 -83
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bs_set.hpp +101 -102
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree.hpp +155 -164
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree_algorithms.hpp +164 -158
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_list_algorithms.hpp +36 -28
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/circular_slist_algorithms.hpp +88 -19
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/derivation_value_traits.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/algorithm.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/any_node_and_algorithms.hpp +44 -44
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/array_initializer.hpp +10 -8
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/avltree_node.hpp +23 -23
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/bstree_algorithms_base.hpp +38 -40
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/common_slist_algorithms.hpp +85 -16
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/config_begin.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/default_header_holder.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/ebo_functor_holder.hpp +27 -27
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/empty_node_checker.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/equal_to_value.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/exception_disposer.hpp +1 -32
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/generic_hook.hpp +14 -15
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash.hpp +277 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash_combine.hpp +54 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash_integral.hpp +119 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hash_mix.hpp +130 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hashtable_node.hpp +204 -115
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/hook_traits.hpp +26 -22
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/iiterator.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/iterator.hpp +126 -80
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/key_nodeptr_comp.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/list_iterator.hpp +30 -18
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/list_node.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/math.hpp +11 -64
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/mpl.hpp +8 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/node_cloner_disposer.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/node_to_value.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/parent_from_member.hpp +6 -17
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/rbtree_node.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/reverse_iterator.hpp +3 -140
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/simple_disposers.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/size_holder.hpp +14 -14
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/slist_iterator.hpp +36 -17
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/slist_node.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/transform_iterator.hpp +22 -22
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_iterator.hpp +38 -26
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_node.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/tree_value_compare.hpp +45 -26
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/twin.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/value_functors.hpp +52 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/workaround.hpp +66 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +1763 -1039
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/intrusive_fwd.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/linear_slist_algorithms.hpp +98 -18
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +113 -111
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/list_hook.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/member_value_traits.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/options.hpp +26 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pack_options.hpp +21 -11
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/parent_from_member.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_plus_bits.hpp +7 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/pointer_traits.hpp +31 -23
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/priority_compare.hpp +13 -6
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree.hpp +51 -52
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/rbtree_algorithms.hpp +74 -74
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/set.hpp +101 -102
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/set_hook.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sg_set.hpp +109 -110
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree.hpp +68 -77
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/sgtree_algorithms.hpp +81 -81
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +178 -186
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist_hook.hpp +8 -6
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splay_set.hpp +107 -108
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree.hpp +54 -55
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/splaytree_algorithms.hpp +99 -97
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap.hpp +141 -115
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_algorithms.hpp +88 -83
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/treap_set.hpp +158 -152
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/trivial_value_traits.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set.hpp +128 -114
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set_hook.hpp +17 -17
- data/src/cxx_supportlib/vendor-modified/boost/io/ios_state.hpp +361 -315
- data/src/cxx_supportlib/vendor-modified/boost/io_fwd.hpp +45 -49
- data/src/cxx_supportlib/vendor-modified/boost/iterator/advance.hpp +12 -1
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/config_def.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/config_undef.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/enable_if.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/iterator/detail/facade_iterator_category.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/iterator/distance.hpp +65 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/is_iterator.hpp +148 -0
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_adaptor.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_concepts.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/iterator/iterator_facade.hpp +107 -26
- data/src/cxx_supportlib/vendor-modified/boost/iterator/transform_iterator.hpp +8 -4
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/bad_lexical_cast.hpp +24 -25
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/buffer_view.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical.hpp +154 -172
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +619 -647
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +89 -77
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/inf_nan.hpp +35 -45
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/is_character.hpp +23 -29
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_basic_unlockedbuf.hpp +73 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_char_constants.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +33 -28
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/widest_char.hpp +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/try_lexical_convert.hpp +23 -157
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp +10 -13
- data/src/cxx_supportlib/vendor-modified/boost/libs/chrono/src/chrono.cpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/libs/chrono/src/process_cpu_clocks.cpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/chrono/src/thread_clock.cpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/random/src/random_device.cpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/posix_api.cpp +20 -25
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/regex.cpp +13 -122
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/static_mutex.cpp +8 -2
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/wide_posix_api.cpp +24 -22
- data/src/cxx_supportlib/vendor-modified/boost/libs/system/src/error_code.cpp +16 -5
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/future.cpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/once.cpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/once_atomic.cpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/thread.cpp +50 -29
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/tss_null.cpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/limits.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/memory_order.hpp +6 -12
- data/src/cxx_supportlib/vendor-modified/boost/move/adl_move_swap.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_merge.hpp +107 -62
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/adaptive_sort.hpp +119 -86
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/adaptive_sort_merge.hpp +322 -489
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/basic_op.hpp +11 -10
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/heap_sort.hpp +22 -11
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/insertion_sort.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/merge.hpp +463 -120
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/merge_sort.hpp +87 -10
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/pdqsort.hpp +16 -5
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/search.hpp +79 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/detail/set_difference.hpp +9 -3
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/move.hpp +8 -5
- data/src/cxx_supportlib/vendor-modified/boost/move/algo/predicate.hpp +24 -9
- data/src/cxx_supportlib/vendor-modified/boost/move/algorithm.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/core.hpp +32 -11
- data/src/cxx_supportlib/vendor-modified/boost/move/default_delete.hpp +32 -6
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/addressof.hpp +61 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/config_begin.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/force_ptr.hpp +36 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/fwd_macros.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/iterator_traits.hpp +109 -9
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/launder.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils.hpp +10 -32
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils_core.hpp +11 -6
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/move_helpers.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/nsec_clock.hpp +268 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/reverse_iterator.hpp +40 -33
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/std_ns_begin.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/std_ns_end.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/to_raw_pointer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +341 -70
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/unique_ptr_meta_utils.hpp +1 -27
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/workaround.hpp +90 -3
- data/src/cxx_supportlib/vendor-modified/boost/move/iterator.hpp +21 -21
- data/src/cxx_supportlib/vendor-modified/boost/move/make_unique.hpp +10 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/unique_ptr.hpp +65 -66
- data/src/cxx_supportlib/vendor-modified/boost/move/utility.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/move/utility_core.hpp +38 -33
- data/src/cxx_supportlib/vendor-modified/boost/mp11/algorithm.hpp +1386 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/bind.hpp +120 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/config.hpp +149 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_append.hpp +321 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_copy_if.hpp +48 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_count.hpp +147 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_defer.hpp +119 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_fold.hpp +166 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_front.hpp +50 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_is_list.hpp +39 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_is_value_list.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_list.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_list_v.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_map_find.hpp +87 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_min_element.hpp +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_plus.hpp +84 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_remove_if.hpp +48 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_rename.hpp +54 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_value.hpp +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_void.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_with_index.hpp +385 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/function.hpp +222 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/integer_sequence.hpp +121 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/integral.hpp +51 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/list.hpp +481 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/set.hpp +188 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/utility.hpp +169 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/mpl/and.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/assert.hpp +31 -11
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/common_name_wknd.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/adl.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/arrays.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/bcc.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/bind.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/compiler.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/ctps.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/dtp.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/forwarding.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/integral.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/operators.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/overload_resolution.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/preprocessor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/config/ttp.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/count_impl.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/fold_impl_body.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/has_rebind.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/integral_wrapper.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/lambda_support.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/nested_type_wknd.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessed/gcc/template_arity.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessor/enum.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessor/params.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/size_impl.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/static_cast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/template_arity.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/yes_no.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/bitand.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/bitor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/has_xxx.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/mpl/if.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/integral_c.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/lower_bound.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/numeric_cast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/or.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/string.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/mpl/upper_bound.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/at.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/next_prior.hpp +3 -44
- data/src/cxx_supportlib/vendor-modified/boost/nondet_random.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/none.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/none_t.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/numeric/conversion/cast.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/numeric/conversion/converter_policies.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/numeric/conversion/detail/converter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/numeric/conversion/detail/int_float_mixture.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/numeric/conversion/detail/meta.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/numeric/conversion/detail/sign_mixture.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/numeric/conversion/detail/udt_builtin_mixture.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/operators.hpp +33 -24
- data/src/cxx_supportlib/vendor-modified/boost/optional/bad_optional_access.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/experimental_traits.hpp +9 -3
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/old_optional_implementation.hpp +17 -17
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_aligned_storage.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_config.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_hash.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_reference_spec.hpp +30 -4
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_relops.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_swap.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_trivially_copyable_base.hpp +41 -30
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp +304 -128
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional_io.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/parameter/are_tagged_arguments.hpp +125 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/always_true_predicate.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/arg_list.hpp +1253 -359
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/as_lvalue.hpp +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/augment_predicate.hpp +198 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/cast.hpp +7 -136
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/default.hpp +101 -59
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/has_nested_template_fn.hpp +111 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/is_maybe.hpp +42 -16
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/is_placeholder.hpp +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/is_tagged_argument.hpp +95 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/lambda_tag.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/maybe.hpp +128 -97
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/name.hpp +93 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/as_parameter_requirements.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/deduce_tag.hpp +217 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/deduced_item.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/insert_tagged.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/is_named_argument.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/item.hpp +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/make_arg_list.hpp +438 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/make_deduced_items.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/make_items.hpp +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/make_parameter_spec_items.hpp +244 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/parameter_requirements.hpp +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/predicate.hpp +87 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/satisfies.hpp +142 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/tag_deduced.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/tag_keyword_arg.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/tag_keyword_arg_ref.hpp +67 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/tag_template_keyword_arg.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/tag_type.hpp +89 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pack/unmatched_argument.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/parameter_requirements.hpp +7 -20
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/parenthesized_type.hpp +8 -31
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pp_impl/argument_pack.hpp +91 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pp_impl/match.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/pp_impl/unwrap_predicate.hpp +97 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/binary_seq_for_each.hpp +1638 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/binary_seq_for_each_inc.hpp +1796 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/binary_seq_to_args.hpp +65 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/convert_binary_seq.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/flatten.hpp +7 -110
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/for_each.hpp +7 -98
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/for_each_pred.hpp +1029 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/impl/argument_specs.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/impl/arity_range.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/impl/flatten.hpp +143 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/impl/for_each.hpp +152 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/impl/forwarding_overloads.hpp +509 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/impl/function_cast.hpp +730 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/impl/function_dispatch_layer.hpp +474 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/impl/function_dispatch_tuple.hpp +33 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/impl/function_forward_match.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/impl/function_name.hpp +152 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/impl/no_spec_overloads.hpp +331 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/impl/parenthesized_return_type.hpp +122 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/impl/parenthesized_type.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/impl/specification.hpp +109 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/impl/split_args.hpp +71 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/inc_binary_seq.hpp +78 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/is_binary.hpp +31 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/is_nullary.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/no_perfect_forwarding_begin.hpp +165 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/no_perfect_forwarding_end.hpp +24 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/nullptr.hpp +18 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/overloads.hpp +92 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/qualifier.hpp +88 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/seq_enum.hpp +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor/seq_merge.hpp +1807 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/result_of0.hpp +46 -29
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/set.hpp +94 -42
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/tag.hpp +156 -34
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/tagged_argument.hpp +874 -159
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/tagged_argument_fwd.hpp +38 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/template_keyword.hpp +76 -34
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/unwrap_cv_reference.hpp +161 -78
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/use_default.hpp +17 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/use_default_tag.hpp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/void.hpp +26 -17
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/yesno.hpp +30 -14
- data/src/cxx_supportlib/vendor-modified/boost/parameter/binding.hpp +158 -74
- data/src/cxx_supportlib/vendor-modified/boost/parameter/compose.hpp +210 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/config.hpp +75 -6
- data/src/cxx_supportlib/vendor-modified/boost/parameter/deduced.hpp +132 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/is_argument_pack.hpp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/keyword.hpp +724 -102
- data/src/cxx_supportlib/vendor-modified/boost/parameter/keyword_fwd.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/macros.hpp +205 -72
- data/src/cxx_supportlib/vendor-modified/boost/parameter/match.hpp +37 -44
- data/src/cxx_supportlib/vendor-modified/boost/parameter/name.hpp +100 -126
- data/src/cxx_supportlib/vendor-modified/boost/parameter/nested_keyword.hpp +111 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/optional.hpp +67 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/parameters.hpp +556 -887
- data/src/cxx_supportlib/vendor-modified/boost/parameter/preprocessor.hpp +156 -1016
- data/src/cxx_supportlib/vendor-modified/boost/parameter/preprocessor_no_spec.hpp +74 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/python.hpp +5 -6
- data/src/cxx_supportlib/vendor-modified/boost/parameter/required.hpp +66 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/template_keyword.hpp +87 -0
- data/src/cxx_supportlib/vendor-modified/boost/parameter/value_type.hpp +156 -74
- data/src/cxx_supportlib/vendor-modified/boost/pool/detail/mutex.hpp +119 -25
- data/src/cxx_supportlib/vendor-modified/boost/pool/object_pool.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/pool/pool.hpp +22 -9
- data/src/cxx_supportlib/vendor-modified/boost/pool/pool_alloc.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/pool/simple_segregated_storage.hpp +13 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/alpha.h +19 -13
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/arm.h +97 -28
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/blackfin.h +16 -10
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/convex.h +19 -13
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/e2k.h +54 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/ia64.h +19 -13
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/loongarch.h +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/m68k.h +33 -27
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/mips.h +31 -20
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/parisc.h +24 -18
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/ppc.h +82 -30
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/ptx.h +50 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/pyramid.h +13 -7
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/riscv.h +48 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/rs6k.h +23 -12
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/sparc.h +26 -13
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/superh.h +29 -15
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/sys370.h +15 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/sys390.h +15 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/x86/32.h +31 -25
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/x86/64.h +19 -13
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/x86.h +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture/z.h +14 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/architecture.h +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/borland.h +12 -11
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/clang.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/comeau.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/compaq.h +13 -12
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/diab.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/digitalmars.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/dignus.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/edg.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/ekopath.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/gcc.h +11 -10
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/gcc_xml.h +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/greenhills.h +12 -11
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/hp_acc.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/iar.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/ibm.h +15 -14
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/intel.h +18 -17
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/kai.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/llvm.h +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/metaware.h +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/metrowerks.h +14 -13
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/microtec.h +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/mpw.h +12 -11
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/nvcc.h +74 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/palm.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/pgi.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/sgi_mipspro.h +12 -11
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/sunpro.h +14 -13
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/tendra.h +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/visualc.h +13 -12
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler/watcom.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/compiler.h +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/arm/versions.h +16 -10
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/arm.h +21 -19
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/ppc/versions.h +27 -21
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/ppc.h +21 -19
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/x86/versions.h +73 -67
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/x86.h +39 -37
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/x86_amd/versions.h +24 -19
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd/x86_amd.h +25 -23
- data/src/cxx_supportlib/vendor-modified/boost/predef/hardware/simd.h +95 -46
- data/src/cxx_supportlib/vendor-modified/boost/predef/language/cuda.h +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/language/objc.h +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/language/stdc.h +11 -10
- data/src/cxx_supportlib/vendor-modified/boost/predef/language/stdcpp.h +41 -34
- data/src/cxx_supportlib/vendor-modified/boost/predef/language.h +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/c/cloudabi.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/c/gnu.h +12 -11
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/c/uc.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/c/vms.h +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/c/zos.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/cxx.h +11 -10
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/dinkumware.h +11 -10
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/libcomo.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/modena.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/msl.h +12 -11
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/msvc.h +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/roguewave.h +11 -10
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/sgi.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/stdcpp3.h +12 -11
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/stlport.h +13 -12
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std/vacpp.h +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/library/std.h +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/make.h +107 -33
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/aix.h +14 -13
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/amigaos.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/beos.h +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/bsd/bsdi.h +10 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/bsd/dragonfly.h +10 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/bsd/free.h +11 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/bsd/net.h +17 -15
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/bsd/open.h +60 -58
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/bsd.h +22 -23
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/cygwin.h +15 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/haiku.h +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/hpux.h +11 -10
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/ios.h +12 -11
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/irix.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/linux.h +14 -10
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/macos.h +14 -13
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/os400.h +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/qnxnto.h +12 -11
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/solaris.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/unix.h +24 -22
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/vms.h +11 -10
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/windows.h +16 -15
- data/src/cxx_supportlib/vendor-modified/boost/predef/os.h +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/other/endian.h +19 -21
- data/src/cxx_supportlib/vendor-modified/boost/predef/other/wordsize.h +73 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/other/workaround.h +22 -14
- data/src/cxx_supportlib/vendor-modified/boost/predef/other.h +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/android.h +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/cloudabi.h +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/ios.h +14 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/mingw.h +12 -11
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/mingw32.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/mingw64.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_desktop.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_phone.h +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_runtime.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_server.h +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_store.h +10 -9
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_system.h +9 -8
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform/windows_uwp.h +12 -11
- data/src/cxx_supportlib/vendor-modified/boost/predef/platform.h +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/version.h +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/predef/version_number.h +16 -14
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/add.hpp +54 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/dec.hpp +33 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/detail/is_1_number.hpp +21 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/detail/is_maximum_number.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/detail/is_minimum_number.hpp +21 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/detail/maximum_number.hpp +19 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/div.hpp +37 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/inc.hpp +33 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/limits/dec_1024.hpp +531 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/limits/dec_256.hpp +276 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/limits/dec_512.hpp +275 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/limits/inc_1024.hpp +536 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/limits/inc_256.hpp +275 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/limits/inc_512.hpp +280 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/mod.hpp +37 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/mul.hpp +60 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic/sub.hpp +51 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/array/detail/get_data.hpp +21 -21
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/array/enum.hpp +17 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/array/insert.hpp +71 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/array/remove.hpp +66 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/array/replace.hpp +58 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/array/to_list.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/array/to_seq.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/array/to_tuple.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/comparison/limits/not_equal_1024.hpp +1044 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/comparison/limits/not_equal_256.hpp +793 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/comparison/limits/not_equal_512.hpp +532 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/comparison/not_equal.hpp +44 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/config/config.hpp +26 -34
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/config/limits.hpp +136 -3
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/control/deduce_d.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/control/detail/dmc/while.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/control/detail/edg/limits/while_1024.hpp +1044 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/control/detail/edg/limits/while_256.hpp +533 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/control/detail/edg/limits/while_512.hpp +532 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/control/detail/edg/while.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/control/detail/limits/while_1024.hpp +1044 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/control/detail/limits/while_256.hpp +533 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/control/detail/limits/while_512.hpp +532 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/control/detail/while.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/control/limits/while_1024.hpp +531 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/control/limits/while_256.hpp +275 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/control/limits/while_512.hpp +275 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/control/while.hpp +75 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/detail/auto_rec.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/detail/dmc/auto_rec.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/detail/limits/auto_rec_1024.hpp +532 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/detail/limits/auto_rec_256.hpp +280 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/detail/limits/auto_rec_512.hpp +276 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities/check_empty.hpp +19 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities/detail/is_empty.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities/intercept.hpp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities/is_empty.hpp +0 -37
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities/is_empty_variadic.hpp +28 -5
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities/limits/intercept_1024.hpp +530 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities/limits/intercept_256.hpp +273 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities/limits/intercept_512.hpp +274 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities/overload.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities/va_opt.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/forward1.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/forward2.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/forward3.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/forward4.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/forward5.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/forward1_1024.hpp +2573 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/forward1_256.hpp +1296 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/forward1_512.hpp +1293 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/forward2_1024.hpp +2573 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/forward2_256.hpp +1296 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/forward2_512.hpp +1293 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/forward3_1024.hpp +2573 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/forward3_256.hpp +1296 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/forward3_512.hpp +1293 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/forward4_1024.hpp +2573 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/forward4_256.hpp +1296 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/forward4_512.hpp +1293 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/forward5_1024.hpp +2573 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/forward5_256.hpp +1296 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/forward5_512.hpp +1293 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/reverse1_1024.hpp +2571 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/reverse1_256.hpp +1296 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/reverse1_512.hpp +1291 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/reverse2_1024.hpp +2571 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/reverse2_256.hpp +1296 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/reverse2_512.hpp +1293 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/reverse3_1024.hpp +2571 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/reverse3_256.hpp +1296 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/reverse3_512.hpp +1293 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/reverse4_1024.hpp +2571 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/reverse4_256.hpp +1296 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/reverse4_512.hpp +1293 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/reverse5_1024.hpp +2571 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/reverse5_256.hpp +1296 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/limits/reverse5_512.hpp +1293 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/reverse1.hpp +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/reverse2.hpp +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/reverse3.hpp +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/reverse4.hpp +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter/reverse5.hpp +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/limits/local_1024.hpp +1549 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/limits/local_256.hpp +782 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/limits/local_512.hpp +781 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/limits/rlocal_1024.hpp +1549 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/limits/rlocal_256.hpp +782 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/limits/rlocal_512.hpp +781 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/local.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/rlocal.hpp +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/dmc/fold_left.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/edg/fold_left.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/edg/fold_right.hpp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/edg/limits/fold_left_1024.hpp +1044 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/edg/limits/fold_left_256.hpp +533 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/edg/limits/fold_left_512.hpp +532 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/edg/limits/fold_right_1024.hpp +1557 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/edg/limits/fold_right_256.hpp +791 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/edg/limits/fold_right_512.hpp +789 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/fold_left.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/fold_right.hpp +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/limits/fold_left_1024.hpp +532 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/limits/fold_left_256.hpp +275 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/limits/fold_left_512.hpp +276 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/limits/fold_right_1024.hpp +532 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/limits/fold_right_256.hpp +275 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/limits/fold_right_512.hpp +276 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/enum.hpp +13 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/fold_left.hpp +60 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/fold_right.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/for_each_product.hpp +25 -6
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/limits/fold_left_1024.hpp +531 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/limits/fold_left_256.hpp +275 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/limits/fold_left_512.hpp +275 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/reverse.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/size.hpp +56 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/to_array.hpp +21 -88
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/to_tuple.hpp +14 -14
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/logical/bool.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/logical/limits/bool_1024.hpp +531 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/logical/limits/bool_256.hpp +275 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/logical/limits/bool_512.hpp +275 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/punctuation/is_begin_parens.hpp +1 -5
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/punctuation/remove_parens.hpp +0 -4
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/deduce_r.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/detail/dmc/for.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/detail/edg/for.hpp +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/detail/edg/limits/for_1024.hpp +1044 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/detail/edg/limits/for_256.hpp +533 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/detail/edg/limits/for_512.hpp +532 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/detail/for.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/detail/limits/for_1024.hpp +1044 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/detail/limits/for_256.hpp +533 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/detail/limits/for_512.hpp +532 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/detail/msvc/for.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/for.hpp +121 -7
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/limits/for_1024.hpp +531 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/limits/for_256.hpp +275 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/limits/for_512.hpp +275 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/limits/repeat_1024.hpp +1557 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/limits/repeat_256.hpp +791 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/limits/repeat_512.hpp +789 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/repeat.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/repeat_from_to.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/detail/binary_transform.hpp +6 -11
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/detail/is_empty.hpp +11 -11
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/detail/limits/split_1024.hpp +530 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/detail/limits/split_256.hpp +272 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/detail/limits/split_512.hpp +274 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/detail/split.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/elem.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/enum.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/fold_left.hpp +52 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/fold_right.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/for_each.hpp +27 -27
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/for_each_i.hpp +28 -28
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/limits/elem_1024.hpp +530 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/limits/elem_256.hpp +272 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/limits/elem_512.hpp +274 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/limits/enum_1024.hpp +530 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/limits/enum_256.hpp +272 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/limits/enum_512.hpp +274 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/limits/fold_left_1024.hpp +1556 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/limits/fold_left_256.hpp +1053 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/limits/fold_left_512.hpp +788 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/limits/fold_right_1024.hpp +530 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/limits/fold_right_256.hpp +273 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/limits/fold_right_512.hpp +274 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/limits/size_1024.hpp +1043 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/limits/size_256.hpp +532 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/limits/size_512.hpp +531 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/replace.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/rest_n.hpp +16 -10
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/size.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/variadic_seq_to_seq.hpp +0 -2
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/stringize.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/detail/is_single_return.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/eat.hpp +4 -18
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/elem.hpp +11 -157
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/insert.hpp +2 -7
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/limits/reverse_128.hpp +403 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/limits/reverse_256.hpp +1171 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/limits/reverse_64.hpp +83 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/limits/to_list_128.hpp +595 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/limits/to_list_256.hpp +1747 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/limits/to_list_64.hpp +83 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/limits/to_seq_128.hpp +403 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/limits/to_seq_256.hpp +1171 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/limits/to_seq_64.hpp +84 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/pop_back.hpp +16 -21
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/pop_front.hpp +16 -21
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/push_back.hpp +1 -6
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/push_front.hpp +1 -7
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/rem.hpp +21 -43
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/remove.hpp +16 -21
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/replace.hpp +2 -7
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/reverse.hpp +38 -25
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/size.hpp +13 -6
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/to_array.hpp +15 -12
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/to_list.hpp +37 -25
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple/to_seq.hpp +38 -24
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/detail/has_opt.hpp +39 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/detail/is_single_return.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/elem.hpp +93 -71
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/has_opt.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/limits/elem_128.hpp +275 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/limits/elem_256.hpp +723 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/limits/elem_64.hpp +81 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/limits/size_128.hpp +47 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/limits/size_256.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/limits/size_64.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/size.hpp +39 -4
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/to_array.hpp +15 -9
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/to_list.hpp +9 -2
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/to_seq.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic/to_tuple.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/preprocessor/wstringize.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/random/additive_combine.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/gray_coded_qrng.hpp +190 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/int_float_pair.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/integer_log2.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/mixmax_skip_N17.ipp +287 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/niederreiter_base2_table.hpp +514 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/operators.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/qrng_base.hpp +291 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/seed.hpp +9 -11
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/seed_impl.hpp +13 -14
- data/src/cxx_supportlib/vendor-modified/boost/random/detail/sobol_table.hpp +4107 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/discard_block.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/random/discrete_distribution.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/faure.hpp +367 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/generate_canonical.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/random/hyperexponential_distribution.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/random/independent_bits.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/random/inversive_congruential.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/random/lagged_fibonacci.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/random/linear_congruential.hpp +5 -7
- data/src/cxx_supportlib/vendor-modified/boost/random/linear_feedback_shift.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/random/mersenne_twister.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/random/mixmax.hpp +313 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/niederreiter_base2.hpp +360 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/random_device.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/random/shuffle_order.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/random/sobol.hpp +238 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/splitmix64.hpp +203 -0
- data/src/cxx_supportlib/vendor-modified/boost/random/subtract_with_carry.hpp +18 -18
- data/src/cxx_supportlib/vendor-modified/boost/random/traits.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/random/uniform_int_distribution.hpp +7 -7
- data/src/cxx_supportlib/vendor-modified/boost/random/uniform_real_distribution.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/random/uniform_smallint.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/random/xor_combine.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/random.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/range/as_literal.hpp +43 -6
- data/src/cxx_supportlib/vendor-modified/boost/range/begin.hpp +17 -15
- data/src/cxx_supportlib/vendor-modified/boost/range/concepts.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/range/config.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/range/detail/common.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/range/detail/implementation_help.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/range/distance.hpp +11 -5
- data/src/cxx_supportlib/vendor-modified/boost/range/end.hpp +18 -16
- data/src/cxx_supportlib/vendor-modified/boost/range/has_range_iterator.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/range/iterator_range_core.hpp +0 -32
- data/src/cxx_supportlib/vendor-modified/boost/range/rbegin.hpp +0 -13
- data/src/cxx_supportlib/vendor-modified/boost/range/rend.hpp +0 -13
- data/src/cxx_supportlib/vendor-modified/boost/range/size.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/ratio/config.hpp +4 -78
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/gcd_lcm.hpp +53 -0
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/is_evenly_divisible_by.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/is_ratio.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/ratio/include.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/ratio/ratio.hpp +5 -249
- data/src/cxx_supportlib/vendor-modified/boost/ratio/ratio_fwd.hpp +30 -56
- data/src/cxx_supportlib/vendor-modified/boost/ratio/ratio_io.hpp +0 -533
- data/src/cxx_supportlib/vendor-modified/boost/rational.hpp +95 -51
- data/src/cxx_supportlib/vendor-modified/boost/regex/concepts.hpp +82 -76
- data/src/cxx_supportlib/vendor-modified/boost/regex/config/borland.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/config.hpp +104 -101
- data/src/cxx_supportlib/vendor-modified/boost/regex/pattern_except.hpp +4 -72
- data/src/cxx_supportlib/vendor-modified/boost/regex/pending/object_cache.hpp +4 -140
- data/src/cxx_supportlib/vendor-modified/boost/regex/pending/unicode_iterator.hpp +8 -761
- data/src/cxx_supportlib/vendor-modified/boost/regex/regex_traits.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/user.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex.hpp +32 -16
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_creator.hpp +50 -25
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/basic_regex_parser.hpp +64 -30
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/c_regex_traits.hpp +342 -42
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/cpp_regex_traits.hpp +111 -28
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/cregex.hpp +0 -117
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/icu.hpp +1516 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/indexed_bit_flag.hpp +54 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/match_flags.hpp +18 -7
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/match_results.hpp +21 -12
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/mem_block_cache.hpp +39 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/object_cache.hpp +171 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/pattern_except.hpp +128 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher.hpp +42 -18
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_common.hpp +24 -10
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_non_recursive.hpp +57 -54
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/perl_matcher_recursive.hpp +12 -12
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/primary_transform.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/protected_call.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex.hpp +0 -36
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_format.hpp +10 -8
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_iterator.hpp +2 -8
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_raw_buffer.hpp +38 -7
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_split.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_token_iterator.hpp +9 -15
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_traits_defaults.hpp +653 -36
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/regex_workaround.hpp +7 -4
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/states.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/sub_match.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/u32regex_iterator.hpp +1 -9
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/u32regex_token_iterator.hpp +3 -11
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/unicode_iterator.hpp +871 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/w32_regex_traits.hpp +526 -40
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/basic_regex.hpp +734 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/basic_regex_creator.hpp +1576 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/basic_regex_parser.hpp +3130 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/c_regex_traits.hpp +474 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/char_regex_traits.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/cpp_regex_traits.hpp +1040 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/cregex.hpp +195 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/error_type.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/icu.hpp +1402 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/iterator_category.hpp +84 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/iterator_traits.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/match_flags.hpp +156 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/match_results.hpp +667 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/mem_block_cache.hpp +173 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/object_cache.hpp +160 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/pattern_except.hpp +106 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/perl_matcher.hpp +576 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/perl_matcher_common.hpp +921 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/perl_matcher_non_recursive.hpp +1874 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/primary_transform.hpp +120 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regbase.hpp +158 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex.hpp +106 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_format.hpp +1124 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_fwd.hpp +73 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_grep.hpp +98 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_iterator.hpp +173 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_match.hpp +92 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_merge.hpp +71 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_raw_buffer.hpp +213 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_replace.hpp +77 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_search.hpp +103 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_split.hpp +152 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_token_iterator.hpp +255 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_traits.hpp +130 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_traits_defaults.hpp +996 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/regex_workaround.hpp +159 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/states.hpp +299 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/sub_match.hpp +382 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/syntax_type.hpp +105 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/u32regex_iterator.hpp +177 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/u32regex_token_iterator.hpp +312 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/unicode_iterator.hpp +862 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex/v5/w32_regex_traits.hpp +1311 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/regex_fwd.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/allocate_shared_array.hpp +94 -444
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/bad_weak_ptr.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count.hpp +8 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_gcc.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_gcc_atomic.hpp +63 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_gcc_x86.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_nt.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_pt.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_spin.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_std_atomic.hpp +8 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_sync.hpp +13 -2
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/local_counted_base.hpp +9 -9
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/local_sp_deleter.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/requires_cxx11.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/shared_count.hpp +88 -48
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_convertible.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base.hpp +12 -16
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_acc_ia64.hpp +15 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_aix.hpp +12 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_cw_ppc.hpp +17 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_atomic.hpp +148 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_ia64.hpp +15 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_mips.hpp +15 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_ppc.hpp +15 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_sparc.hpp +15 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp +15 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_nt.hpp +27 -17
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_pt.hpp +18 -9
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_snc_ps3.hpp +16 -5
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_spin.hpp +12 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_std_atomic.hpp +27 -18
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_sync.hpp +12 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_vacpp_ppc.hpp +15 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_impl.hpp +48 -31
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_has_gcc_intrinsics.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_has_sync_intrinsics.hpp +69 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_typeinfo_.hpp +58 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock.hpp +7 -9
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_gcc_arm.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp +94 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_nt.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_pt.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_std_atomic.hpp +13 -5
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/spinlock_sync.hpp +8 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/yield_k.hpp +13 -141
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/enable_shared_from_this.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/intrusive_ptr.hpp +49 -12
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared_array.hpp +23 -22
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_shared_object.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/make_unique.hpp +70 -0
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_array.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/scoped_ptr.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_array.hpp +6 -4
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/shared_ptr.hpp +120 -40
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/weak_ptr.hpp +80 -8
- data/src/cxx_supportlib/vendor-modified/boost/static_assert.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/system/config.hpp +4 -24
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/append_int.hpp +32 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/cerrno.hpp +329 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/config.hpp +83 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/enable_if.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/errc.hpp +126 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category.hpp +183 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category_impl.hpp +166 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_code.hpp +659 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_condition.hpp +326 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/generic_category.hpp +123 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/generic_category_message.hpp +120 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/interop_category.hpp +107 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/is_same.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/mutex.hpp +128 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/snprintf.hpp +28 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/std_category.hpp +84 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/std_category_impl.hpp +97 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category.hpp +110 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category_impl.hpp +61 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/system_category_message.hpp +71 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/throws.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/errc.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/error_category.hpp +13 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/error_code.hpp +12 -760
- data/src/cxx_supportlib/vendor-modified/boost/system/error_condition.hpp +13 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/generic_category.hpp +13 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/is_error_code_enum.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/is_error_condition_enum.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/system_category.hpp +14 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/system_error.hpp +30 -59
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/deque_adaptor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/deque_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/detail/sync_deque_base.hpp +9 -21
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/detail/sync_queue_base.hpp +9 -21
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/queue_adaptor.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/queue_base.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/queue_op_status.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/sync_bounded_queue.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/sync_deque.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/sync_priority_queue.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/sync_queue.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/sync_timed_queue.hpp +80 -14
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/deque.hpp +1 -24
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/functional.hpp +1 -14
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/list.hpp +1 -14
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/allocator_arg.hpp +2 -12
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/allocator_traits.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/config.hpp +0 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/default_delete.hpp +0 -16
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/pointer_traits.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/scoped_allocator.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/shared_ptr.hpp +0 -19
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/memory/unique_ptr.hpp +4 -6
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/queue.hpp +1 -24
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/tuple.hpp +1 -18
- data/src/cxx_supportlib/vendor-modified/boost/thread/csbl/vector.hpp +1 -14
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/config.hpp +18 -3
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/invoke.hpp +27 -21
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/move.hpp +13 -6
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/nullary_function.hpp +8 -3
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/platform_time.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/string_to_unsigned.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/string_trim.hpp +29 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/thread.hpp +33 -12
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/thread_safety.hpp +160 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/tss_hooks.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/exceptions.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/basic_thread_pool.hpp +27 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/executor.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/executor_adaptor.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/generic_executor_ref.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/inline_executor.hpp +8 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/loop_executor.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/scheduled_thread_pool.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/scheduler.hpp +2 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/scheduling_adaptor.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/serial_executor.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/serial_executor_cont.hpp +9 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/thread_executor.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/executors/work.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/experimental/parallel/v2/task_region.hpp +6 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/externally_locked.hpp +6 -5
- data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +12 -3
- data/src/cxx_supportlib/vendor-modified/boost/thread/futures/wait_for_any.hpp +4 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/interruption.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/lock_guard.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/lockable_traits.hpp +31 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/poly_lockable.hpp +7 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/poly_shared_lockable.hpp +16 -12
- data/src/cxx_supportlib/vendor-modified/boost/thread/poly_shared_lockable_adapter.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/condition_variable.hpp +20 -26
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/condition_variable_fwd.hpp +8 -15
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/mutex.hpp +17 -88
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/once.hpp +29 -28
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/once_atomic.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/pthread_helpers.hpp +163 -18
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/pthread_mutex_scoped_lock.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/recursive_mutex.hpp +25 -25
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/shared_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/thread_data.hpp +21 -13
- data/src/cxx_supportlib/vendor-modified/boost/thread/scoped_thread.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/synchronized_value.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/thread/thread_guard.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/tss.hpp +23 -41
- data/src/cxx_supportlib/vendor-modified/boost/thread/user_scheduler.hpp +3 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/v2/shared_mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/xtime.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/throw_exception.hpp +232 -56
- data/src/cxx_supportlib/vendor-modified/boost/token_functions.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/tuple/detail/tuple_basic.hpp +35 -30
- data/src/cxx_supportlib/vendor-modified/boost/tuple/tuple.hpp +52 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/add_pointer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/aligned_storage.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/alignment_of.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/conjunction.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/copy_cv_ref.hpp +31 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/copy_reference.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/common_arithmetic_type.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/config.hpp +36 -3
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/detector.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/has_binary_operator.hpp +6 -6
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/has_postfix_operator.hpp +55 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/has_prefix_operator.hpp +72 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_cxx_03.hpp +108 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_cxx_11.hpp +676 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_msvc10_fix.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_ptr_helper.hpp +27 -27
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_function_ptr_tester.hpp +415 -255
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_likely_lambda.hpp +4 -3
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_mem_fun_pointer_impl.hpp +27 -27
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_mem_fun_pointer_tester.hpp +1345 -1542
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_member_function_pointer_cxx_03.hpp +117 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_member_function_pointer_cxx_11.hpp +697 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_rvalue_reference_msvc10_fix.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detail/is_swappable_cxx_11.hpp +70 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detected.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/detected_or.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/disjunction.hpp +40 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/enable_if.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/extent.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_dereference.hpp +344 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_minus.hpp +11 -6
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_minus_assign.hpp +11 -6
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_nothrow_copy.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_plus_assign.hpp +11 -6
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_post_decrement.hpp +21 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_post_increment.hpp +21 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_pre_decrement.hpp +21 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_pre_increment.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_move_assign.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/has_trivial_move_constructor.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/integral_constant.hpp +6 -16
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/integral_promotion.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/intrinsics.hpp +39 -15
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_array.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_base_and_derived.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_bounded_array.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_complete.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_compound.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_const.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_constructible.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_convertible.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_copy_assignable.hpp +3 -4
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_copy_constructible.hpp +4 -6
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_default_constructible.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_destructible.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_detected.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_detected_convertible.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_detected_exact.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_empty.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_enum.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_final.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_floating_point.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_function.hpp +4 -79
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_fundamental.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_integral.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_lvalue_reference.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_member_function_pointer.hpp +3 -97
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_member_pointer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_noncopyable.hpp +39 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_move_assignable.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_move_constructible.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_nothrow_swappable.hpp +4 -24
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_pointer.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_rvalue_reference.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_same.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_scoped_enum.hpp +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_signed.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_swappable.hpp +92 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_trivially_copyable.hpp +31 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_unbounded_array.hpp +41 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_unscoped_enum.hpp +25 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_unsigned.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_virtual_base_of.hpp +105 -64
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/is_volatile.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/make_void.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/negation.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/nonesuch.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/rank.hpp +4 -4
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_all_extents.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_const.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_cv.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_extent.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/remove_volatile.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/type_traits/type_with_alignment.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/typeof/constant.hpp +26 -0
- data/src/cxx_supportlib/vendor-modified/boost/typeof/decltype.hpp +2 -3
- data/src/cxx_supportlib/vendor-modified/boost/typeof/incr_registration_group.hpp +1 -10
- data/src/cxx_supportlib/vendor-modified/boost/typeof/msvc/typeof_impl.hpp +9 -10
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/bitset.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/complex.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/deque.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/fstream.hpp +2 -15
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/functional.hpp +4 -51
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/iostream.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/istream.hpp +2 -9
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/iterator.hpp +2 -46
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/list.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/locale.hpp +2 -29
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/map.hpp +2 -9
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/memory.hpp +4 -9
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/ostream.hpp +2 -6
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/queue.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/set.hpp +2 -9
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/sstream.hpp +2 -19
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/stack.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/streambuf.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/string.hpp +2 -12
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/utility.hpp +2 -4
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/valarray.hpp +2 -10
- data/src/cxx_supportlib/vendor-modified/boost/typeof/std/vector.hpp +2 -5
- data/src/cxx_supportlib/vendor-modified/boost/typeof/typeof.hpp +8 -202
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map.hpp +872 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map_fwd.hpp +66 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set.hpp +728 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set_fwd.hpp +67 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/allocator_constructed.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/archive_constructed.hpp +71 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/bad_archive_exception.hpp +27 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/concurrent_static_asserts.hpp +105 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fca.hpp +900 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/concurrent_table.hpp +1792 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/core.hpp +2380 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/cumulative_stats.hpp +177 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/element_type.hpp +64 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/flat_map_types.hpp +86 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/flat_set_types.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/ignore_wshadow.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_handle.hpp +204 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_map_types.hpp +139 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/node_set_types.hpp +92 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/reentrancy_check.hpp +138 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/restore_wshadow.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/rw_spinlock.hpp +179 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/table.hpp +661 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/tuple_rotate_right.hpp +52 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +1462 -3502
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/map.hpp +10 -14
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/mulx.hpp +129 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/narrow_cast.hpp +44 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/opt_storage.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/prime_fmod.hpp +214 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialization_version.hpp +74 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialize_container.hpp +204 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialize_fca_container.hpp +156 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/serialize_tracked_address.hpp +104 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/set.hpp +8 -13
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/static_assert.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/throw_exception.hpp +30 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/type_traits.hpp +226 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/xmx.hpp +75 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/hash_traits.hpp +70 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +812 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map_fwd.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +622 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set_fwd.hpp +58 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map.hpp +768 -1002
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map_fwd.hpp +35 -13
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map.hpp +907 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map_fwd.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set.hpp +711 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set_fwd.hpp +58 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set.hpp +547 -672
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set_fwd.hpp +35 -15
- data/src/cxx_supportlib/vendor-modified/boost/utility/base_from_member.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/utility/binary.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/utility/detail/minstd_rand.hpp +4 -43
- data/src/cxx_supportlib/vendor-modified/boost/utility/detail/result_of_iterate.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/utility/detail/result_of_variadic.hpp +190 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/in_place_factory.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/utility/result_of.hpp +33 -11
- data/src/cxx_supportlib/vendor-modified/boost/utility/string_ref.hpp +11 -44
- data/src/cxx_supportlib/vendor-modified/boost/utility/string_view.hpp +56 -52
- data/src/cxx_supportlib/vendor-modified/boost/utility/swap.hpp +4 -1
- data/src/cxx_supportlib/vendor-modified/boost/utility/typed_in_place_factory.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/utility/value_init.hpp +41 -75
- data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/jsoncpp/jsoncpp.cpp +2 -9
- data/src/cxx_supportlib/vendor-modified/modp_b64_data.h +0 -4
- data/src/cxx_supportlib/vendor-modified/modp_b64_strict_aliasing.cpp +7 -3
- data/src/cxx_supportlib/vendor-modified/websocketpp/changelog.md +444 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/readme.md +49 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/close.hpp +353 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/asio.hpp +141 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/functional.hpp +100 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/md5.hpp +448 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/memory.hpp +88 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/common/thread.hpp +88 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/config/core.hpp +297 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/connection.hpp +1642 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/endpoint.hpp +700 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/extensions/permessage_deflate/disabled.hpp +129 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/extensions/permessage_deflate/enabled.hpp +817 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/frame.hpp +853 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/http/impl/parser.hpp +200 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/http/parser.hpp +629 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/impl/connection_impl.hpp +2375 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/impl/endpoint_impl.hpp +269 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/processors/base.hpp +299 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/processors/hybi13.hpp +1072 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/roles/client_endpoint.hpp +173 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/roles/server_endpoint.hpp +195 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/sha1/sha1.hpp +189 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/asio/connection.hpp +1197 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/asio/endpoint.hpp +1182 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/asio/security/none.hpp +372 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/asio/security/tls.hpp +474 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/base/endpoint.hpp +77 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/debug/connection.hpp +412 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/debug/endpoint.hpp +140 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/iostream/connection.hpp +714 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/iostream/endpoint.hpp +222 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/stub/connection.hpp +286 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/uri.hpp +356 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/utilities.hpp +180 -0
- data/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/version.hpp +61 -0
- data/src/helper-scripts/backtrace-sanitizer.rb +2 -2
- data/src/helper-scripts/crash-watch.rb +1 -1
- data/src/helper-scripts/download_binaries/extconf.rb +2 -2
- data/src/helper-scripts/meteor-loader.rb +9 -4
- data/src/helper-scripts/node-loader.js +3 -3
- data/src/helper-scripts/prespawn +3 -2
- data/src/helper-scripts/rack-loader.rb +2 -2
- data/src/helper-scripts/rack-preloader.rb +2 -2
- data/src/helper-scripts/wsgi-loader.py +36 -19
- data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c +98 -2
- data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c.cxxcodebuilder +2 -2
- data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c +59 -2
- data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c.cxxcodebuilder +2 -2
- data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c +122 -2
- data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c.cxxcodebuilder +2 -2
- data/src/nginx_module/ConfigGeneral/ManifestGeneration.c +2 -2
- data/src/nginx_module/Configuration.c +40 -11
- data/src/nginx_module/Configuration.h +1 -1
- data/src/nginx_module/ContentHandler.c +306 -24
- data/src/nginx_module/ContentHandler.h +6 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c +49 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c.cxxcodebuilder +2 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c +86 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c.cxxcodebuilder +2 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c +111 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c.cxxcodebuilder +2 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c +23 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c.cxxcodebuilder +2 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h +36 -2
- data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h.cxxcodebuilder +2 -2
- data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c +18 -2
- data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c.cxxcodebuilder +2 -2
- data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c +36 -2
- data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c.cxxcodebuilder +2 -2
- data/src/nginx_module/MainConfig/AutoGeneratedStruct.h +14 -2
- data/src/nginx_module/MainConfig/AutoGeneratedStruct.h.cxxcodebuilder +2 -2
- data/src/nginx_module/StaticContentHandler.c +1 -1
- data/src/nginx_module/StaticContentHandler.h +1 -1
- data/src/nginx_module/config +2 -0
- data/src/nginx_module/ngx_http_passenger_module.c +7 -4
- data/src/nginx_module/ngx_http_passenger_module.h +6 -1
- data/src/nodejs_supportlib/phusion_passenger/line_reader.js +2 -2
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/common.js +50 -29
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/config/cli-config.js +20 -20
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/config/npm-config.js +11 -11
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/config/syslog-config.js +3 -3
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/config.js +8 -2
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/container.js +2 -1
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/logger.js +174 -146
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/transports/console.js +4 -2
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/transports/file.js +15 -5
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/transports/http.js +14 -4
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/transports.js +26 -24
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston.js +5 -5
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/async/package.json +4 -13
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/colors/package.json +19 -33
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/cycle/package.json +11 -29
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/eyes/package.json +12 -40
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/isstream/package.json +3 -12
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/stack-trace/lib/stack-trace.js +49 -24
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/stack-trace/package.json +4 -16
- data/src/nodejs_supportlib/vendor-copy/winston/package.json +11 -55
- data/src/ruby_native_extension/extconf.rb +9 -2
- data/src/ruby_native_extension/passenger_native_support.c +3 -2
- data/src/ruby_supportlib/phusion_passenger/abstract_installer.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/admin_tools/instance.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/admin_tools/instance_registry.rb +15 -3
- data/src/ruby_supportlib/phusion_passenger/admin_tools/memory_stats.rb +3 -3
- data/src/ruby_supportlib/phusion_passenger/admin_tools.rb +3 -3
- data/src/ruby_supportlib/phusion_passenger/apache2/config_options.rb +55 -2
- data/src/ruby_supportlib/phusion_passenger/apache2/config_utils.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/common_library.rb +19 -6
- data/src/ruby_supportlib/phusion_passenger/config/about_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/agent_compiler.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/api_call_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/build_native_support_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/compile_agent_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/compile_nginx_engine_command.rb +8 -4
- data/src/ruby_supportlib/phusion_passenger/config/detach_process_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/download_agent_command.rb +3 -3
- data/src/ruby_supportlib/phusion_passenger/config/download_nginx_engine_command.rb +3 -3
- data/src/ruby_supportlib/phusion_passenger/config/install_agent_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/install_standalone_runtime_command.rb +12 -2
- data/src/ruby_supportlib/phusion_passenger/config/installation_utils.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/list_instances_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/main.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +16 -7
- data/src/ruby_supportlib/phusion_passenger/config/reopen_logs_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/restart_app_command.rb +18 -14
- data/src/ruby_supportlib/phusion_passenger/config/system_metrics_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/system_properties_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/utils.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/config/validate_install_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/console_text_template.rb +9 -4
- data/src/ruby_supportlib/phusion_passenger/constants.rb +6 -4
- data/src/ruby_supportlib/phusion_passenger/debug_logging.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +39 -12
- data/src/ruby_supportlib/phusion_passenger/message_channel.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/message_client.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/native_support.rb +12 -7
- data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +84 -2
- data/src/ruby_supportlib/phusion_passenger/packaging.rb +5 -3
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +12 -15
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache_detector.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/binary_compatibility.rb +25 -21
- data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +49 -8
- data/src/ruby_supportlib/phusion_passenger/platform_info/crypto.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/curl.rb +5 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +10 -4
- data/src/ruby_supportlib/phusion_passenger/platform_info/depcheck_specs/gems.rb +10 -0
- data/src/ruby_supportlib/phusion_passenger/platform_info/depcheck_specs/libs.rb +10 -6
- data/src/ruby_supportlib/phusion_passenger/platform_info/linux.rb +4 -3
- data/src/ruby_supportlib/phusion_passenger/platform_info/networking.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/openssl.rb +7 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info/operating_system.rb +49 -30
- data/src/ruby_supportlib/phusion_passenger/platform_info/pcre.rb +64 -0
- data/src/ruby_supportlib/phusion_passenger/platform_info/ruby.rb +4 -4
- data/src/ruby_supportlib/phusion_passenger/platform_info/zlib.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/plugin.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/preloader_shared_helpers.rb +14 -8
- data/src/ruby_supportlib/phusion_passenger/public_api.rb +5 -2
- data/src/ruby_supportlib/phusion_passenger/rack/handler.rb +73 -0
- data/src/ruby_supportlib/phusion_passenger/rack/out_of_band_gc.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/rack/thread_handler_extension.rb +24 -3
- data/src/ruby_supportlib/phusion_passenger/rack_handler.rb +32 -58
- data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +25 -20
- data/src/ruby_supportlib/phusion_passenger/request_handler.rb +13 -9
- data/src/ruby_supportlib/phusion_passenger/ruby_core_enhancements.rb +7 -2
- data/src/ruby_supportlib/phusion_passenger/ruby_core_io_enhancements.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/simple_benchmarking.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/standalone/app_finder.rb +3 -2
- data/src/ruby_supportlib/phusion_passenger/standalone/command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/standalone/config_options_list.rb +53 -3
- data/src/ruby_supportlib/phusion_passenger/standalone/config_utils.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/standalone/control_utils.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/standalone/main.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +13 -5
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/nginx_engine.rb +32 -21
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command.rb +3 -7
- data/src/ruby_supportlib/phusion_passenger/standalone/status_command.rb +3 -4
- data/src/ruby_supportlib/phusion_passenger/standalone/stop_command.rb +9 -3
- data/src/ruby_supportlib/phusion_passenger/standalone/version_command.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/ansi_colors.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/download.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/file_system_watcher.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/hosts_file_parser.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/json.rb +7 -198
- data/src/ruby_supportlib/phusion_passenger/utils/lock.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/native_support_utils.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/progress_bar.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/strscan.rb +67 -0
- data/src/ruby_supportlib/phusion_passenger/utils/tee_input.rb +6 -0
- data/src/ruby_supportlib/phusion_passenger/utils/terminal_choice_menu.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/utils/unseekable_socket.rb +17 -13
- data/src/ruby_supportlib/phusion_passenger/utils.rb +8 -17
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/app.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/base.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/gdb_controller.rb +5 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/lldb_controller.rb +6 -2
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/version.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/lock_file.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/spawn.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/version.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger.rb +12 -11
- data/src/schema_printer/SchemaPrinterMain.cpp +2 -2
- data/src/schema_printer/SchemaPrinterMain.cpp.cxxcodebuilder +2 -2
- metadata +935 -308
- data/src/cxx_supportlib/ServerKit/http_parser.cpp +0 -2265
- data/src/cxx_supportlib/ServerKit/http_parser.h +0 -330
- data/src/cxx_supportlib/vendor-copy/websocketpp/changelog.md +0 -342
- data/src/cxx_supportlib/vendor-copy/websocketpp/readme.md +0 -49
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/close.hpp +0 -342
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/common/asio.hpp +0 -131
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/common/functional.hpp +0 -105
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/common/md5.hpp +0 -448
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/common/memory.hpp +0 -89
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/common/thread.hpp +0 -84
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/config/core.hpp +0 -285
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/connection.hpp +0 -1651
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/endpoint.hpp +0 -700
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/extensions/permessage_deflate/disabled.hpp +0 -128
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/extensions/permessage_deflate/enabled.hpp +0 -752
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/frame.hpp +0 -861
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/http/impl/parser.hpp +0 -196
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/http/parser.hpp +0 -619
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/impl/connection_impl.hpp +0 -2372
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/impl/endpoint_impl.hpp +0 -269
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/processors/base.hpp +0 -299
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/processors/hybi13.hpp +0 -1056
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/roles/client_endpoint.hpp +0 -173
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/roles/server_endpoint.hpp +0 -190
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/sha1/sha1.hpp +0 -189
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/transport/asio/connection.hpp +0 -1204
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/transport/asio/endpoint.hpp +0 -1147
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/transport/asio/security/none.hpp +0 -370
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/transport/asio/security/tls.hpp +0 -484
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/transport/base/endpoint.hpp +0 -77
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/transport/debug/connection.hpp +0 -412
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/transport/debug/endpoint.hpp +0 -140
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/transport/iostream/connection.hpp +0 -714
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/transport/iostream/endpoint.hpp +0 -222
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/transport/stub/connection.hpp +0 -286
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/uri.hpp +0 -355
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/utilities.hpp +0 -182
- data/src/cxx_supportlib/vendor-copy/websocketpp/websocketpp/version.hpp +0 -61
- data/src/cxx_supportlib/vendor-modified/boost/array.hpp +0 -457
- data/src/cxx_supportlib/vendor-modified/boost/asio/datagram_socket_service.hpp +0 -468
- data/src/cxx_supportlib/vendor-modified/boost/asio/deadline_timer_service.hpp +0 -175
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_arm_fenced_block.hpp +0 -93
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_hppa_fenced_block.hpp +0 -70
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_sync_fenced_block.hpp +0 -67
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/gcc_x86_fenced_block.hpp +0 -101
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/handler_invoke_helpers.hpp +0 -57
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/impl/reactive_serial_port_service.ipp +0 -154
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/macos_fenced_block.hpp +0 -64
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/old_win_sdk_compat.hpp +0 -216
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactive_serial_port_service.hpp +0 -238
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/reactor_fwd.hpp +0 -42
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/solaris_fenced_block.hpp +0 -64
- data/src/cxx_supportlib/vendor-modified/boost/asio/detail/variadic_templates.hpp +0 -119
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detached.hpp +0 -67
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/co_spawn.hpp +0 -878
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/detached.hpp +0 -93
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/impl/redirect_error.hpp +0 -296
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental/redirect_error.hpp +0 -69
- data/src/cxx_supportlib/vendor-modified/boost/asio/experimental.hpp +0 -22
- data/src/cxx_supportlib/vendor-modified/boost/asio/handler_alloc_hook.hpp +0 -83
- data/src/cxx_supportlib/vendor-modified/boost/asio/handler_invoke_hook.hpp +0 -87
- data/src/cxx_supportlib/vendor-modified/boost/asio/handler_type.hpp +0 -52
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/defer.hpp +0 -79
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/dispatch.hpp +0 -80
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/handler_alloc_hook.ipp +0 -54
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/post.hpp +0 -79
- data/src/cxx_supportlib/vendor-modified/boost/asio/impl/src.cpp +0 -25
- data/src/cxx_supportlib/vendor-modified/boost/asio/ip/resolver_service.hpp +0 -202
- data/src/cxx_supportlib/vendor-modified/boost/asio/posix/stream_descriptor_service.hpp +0 -281
- data/src/cxx_supportlib/vendor-modified/boost/asio/raw_socket_service.hpp +0 -468
- data/src/cxx_supportlib/vendor-modified/boost/asio/seq_packet_socket_service.hpp +0 -418
- data/src/cxx_supportlib/vendor-modified/boost/asio/serial_port_service.hpp +0 -251
- data/src/cxx_supportlib/vendor-modified/boost/asio/signal_set_service.hpp +0 -144
- data/src/cxx_supportlib/vendor-modified/boost/asio/socket_acceptor_service.hpp +0 -374
- data/src/cxx_supportlib/vendor-modified/boost/asio/stream_socket_service.hpp +0 -414
- data/src/cxx_supportlib/vendor-modified/boost/asio/waitable_timer_service.hpp +0 -212
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_handle.hpp +0 -275
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_object_handle.hpp +0 -184
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_random_access_handle.hpp +0 -378
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/basic_stream_handle.hpp +0 -361
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/object_handle.hpp +0 -383
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/object_handle_service.hpp +0 -185
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/overlapped_handle.hpp +0 -333
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/overlapped_ptr.hpp +0 -118
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/random_access_handle.hpp +0 -380
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/random_access_handle_service.hpp +0 -216
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/stream_handle.hpp +0 -364
- data/src/cxx_supportlib/vendor-modified/boost/asio/windows/stream_handle_service.hpp +0 -212
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_flag.hpp +0 -71
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/atomic_template.hpp +0 -1248
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_alpha.hpp +0 -34
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_arm.hpp +0 -39
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_ppc.hpp +0 -37
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_sparc.hpp +0 -34
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_gcc_x86.hpp +0 -40
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_msvc_arm.hpp +0 -34
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/caps_msvc_x86.hpp +0 -55
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/hwcaps_gcc_arm.hpp +0 -67
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/hwcaps_gcc_ppc.hpp +0 -42
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/hwcaps_gcc_x86.hpp +0 -58
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/integral_extend.hpp +0 -105
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/lockpool.hpp +0 -51
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/operations.hpp +0 -24
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/operations_fwd.hpp +0 -35
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/operations_lockfree.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_cas_based.hpp +0 -107
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_emulated.hpp +0 -162
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_extending_cas_based.hpp +0 -69
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_alpha.hpp +0 -876
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_arm.hpp +0 -1397
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_atomic.hpp +0 -392
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_ppc.hpp +0 -1232
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_sparc.hpp +0 -240
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_sync.hpp +0 -240
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_x86.hpp +0 -563
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_gcc_x86_dcas.hpp +0 -555
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_linux_arm.hpp +0 -180
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_msvc_arm.hpp +0 -824
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/ops_msvc_x86.hpp +0 -908
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/storage_type.hpp +0 -207
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind_cc.hpp +0 -117
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind_mf2_cc.hpp +0 -228
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind_mf_cc.hpp +0 -441
- data/src/cxx_supportlib/vendor-modified/boost/bind/bind_template.hpp +0 -345
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn_cc.hpp +0 -103
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn_template.hpp +0 -1047
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn_vw.hpp +0 -130
- data/src/cxx_supportlib/vendor-modified/boost/bind/storage.hpp +0 -475
- data/src/cxx_supportlib/vendor-modified/boost/bind.hpp +0 -41
- data/src/cxx_supportlib/vendor-modified/boost/call_traits.hpp +0 -20
- data/src/cxx_supportlib/vendor-modified/boost/checked_delete.hpp +0 -17
- data/src/cxx_supportlib/vendor-modified/boost/config/platform/cygwin.hpp +0 -68
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/float_functions.hpp +0 -336
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/hash_float.hpp +0 -271
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/detail/limits.hpp +0 -62
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/extensions.hpp +0 -414
- data/src/cxx_supportlib/vendor-modified/boost/detail/atomic_count.hpp +0 -21
- data/src/cxx_supportlib/vendor-modified/boost/detail/call_traits.hpp +0 -172
- data/src/cxx_supportlib/vendor-modified/boost/detail/container_fwd.hpp +0 -157
- data/src/cxx_supportlib/vendor-modified/boost/detail/endian.hpp +0 -11
- data/src/cxx_supportlib/vendor-modified/boost/detail/iterator.hpp +0 -39
- data/src/cxx_supportlib/vendor-modified/boost/detail/no_exceptions_support.hpp +0 -17
- data/src/cxx_supportlib/vendor-modified/boost/detail/sp_typeinfo.hpp +0 -36
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/function_iterate.hpp +0 -16
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/gen_maybe_include.pl +0 -39
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/maybe_include.hpp +0 -369
- data/src/cxx_supportlib/vendor-modified/boost/function/detail/prologue.hpp +0 -26
- data/src/cxx_supportlib/vendor-modified/boost/function/gen_function_N.pl +0 -26
- data/src/cxx_supportlib/vendor-modified/boost/functional/hash_fwd.hpp +0 -6
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/c_regex_traits.cpp +0 -206
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/cpp_regex_traits.cpp +0 -117
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/cregex.cpp +0 -660
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/instances.cpp +0 -32
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/regex_raw_buffer.cpp +0 -72
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/regex_traits_defaults.cpp +0 -692
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/wc_regex_traits.cpp +0 -314
- data/src/cxx_supportlib/vendor-modified/boost/libs/regex/src/winstances.cpp +0 -35
- data/src/cxx_supportlib/vendor-modified/boost/math/policies/policy.hpp +0 -1040
- data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/detail/fp_traits.hpp +0 -581
- data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/detail/round_fwd.hpp +0 -93
- data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/fpclassify.hpp +0 -640
- data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/math_fwd.hpp +0 -1651
- data/src/cxx_supportlib/vendor-modified/boost/math/special_functions/sign.hpp +0 -194
- data/src/cxx_supportlib/vendor-modified/boost/math/tools/config.hpp +0 -469
- data/src/cxx_supportlib/vendor-modified/boost/math/tools/promotion.hpp +0 -182
- data/src/cxx_supportlib/vendor-modified/boost/math/tools/real_cast.hpp +0 -31
- data/src/cxx_supportlib/vendor-modified/boost/math/tools/user.hpp +0 -105
- data/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/overloads.hpp +0 -88
- data/src/cxx_supportlib/vendor-modified/boost/pointer_to_other.hpp +0 -55
- data/src/cxx_supportlib/vendor-modified/boost/predef/detail/endian_compat.h +0 -26
- data/src/cxx_supportlib/vendor-modified/boost/predef/os/android.h +0 -45
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/abs.hpp +0 -89
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/gcd.hpp +0 -124
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/lcm.hpp +0 -126
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/mpl/sign.hpp +0 -89
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/overflow_helpers.hpp +0 -367
- data/src/cxx_supportlib/vendor-modified/boost/ratio/detail/ratio_io.hpp +0 -1342
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/abs.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/arithmetic.hpp +0 -22
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/comparison.hpp +0 -19
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/divides.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/equal_to.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/gcd.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/greater.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/greater_equal.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/lcm.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/less.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/less_equal.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/minus.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/negate.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/not_equal_to.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/numeric_cast.hpp +0 -31
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/plus.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/rational_c_tag.hpp +0 -25
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/rational_constant.hpp +0 -15
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/sign.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/ratio/mpl/times.hpp +0 -30
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/fileiter.hpp +0 -455
- data/src/cxx_supportlib/vendor-modified/boost/regex/v4/instances.hpp +0 -225
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/atomic_count_solaris.hpp +0 -59
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_clang.hpp +0 -150
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_cw_x86.hpp +0 -160
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_counted_base_solaris.hpp +0 -115
- data/src/cxx_supportlib/vendor-modified/boost/smart_ptr/detail/sp_has_sync.hpp +0 -69
- data/src/cxx_supportlib/vendor-modified/boost/swap.hpp +0 -17
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_code.ipp +0 -496
- data/src/cxx_supportlib/vendor-modified/boost/type_index/stl_type_index.hpp +0 -276
- data/src/cxx_supportlib/vendor-modified/boost/type_index/type_index_facade.hpp +0 -297
- data/src/cxx_supportlib/vendor-modified/boost/type_index.hpp +0 -265
- data/src/cxx_supportlib/vendor-modified/boost/typeof/dmc/typeof_impl.hpp +0 -100
- data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode.hpp +0 -61
- data/src/cxx_supportlib/vendor-modified/boost/typeof/encode_decode_params.hpp +0 -34
- data/src/cxx_supportlib/vendor-modified/boost/typeof/int_encoding.hpp +0 -118
- data/src/cxx_supportlib/vendor-modified/boost/typeof/integral_template_param.hpp +0 -80
- data/src/cxx_supportlib/vendor-modified/boost/typeof/message.hpp +0 -8
- data/src/cxx_supportlib/vendor-modified/boost/typeof/modifiers.hpp +0 -121
- data/src/cxx_supportlib/vendor-modified/boost/typeof/native.hpp +0 -60
- data/src/cxx_supportlib/vendor-modified/boost/typeof/pointers_data_members.hpp +0 -38
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_functions.hpp +0 -50
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_functions_iterate.hpp +0 -135
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_fundamental.hpp +0 -61
- data/src/cxx_supportlib/vendor-modified/boost/typeof/register_mem_functions.hpp +0 -32
- data/src/cxx_supportlib/vendor-modified/boost/typeof/template_encoding.hpp +0 -160
- data/src/cxx_supportlib/vendor-modified/boost/typeof/template_template_param.hpp +0 -149
- data/src/cxx_supportlib/vendor-modified/boost/typeof/type_encoding.hpp +0 -27
- data/src/cxx_supportlib/vendor-modified/boost/typeof/type_template_param.hpp +0 -37
- data/src/cxx_supportlib/vendor-modified/boost/typeof/typeof_impl.hpp +0 -186
- data/src/cxx_supportlib/vendor-modified/boost/typeof/unsupported.hpp +0 -29
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector.hpp +0 -166
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector100.hpp +0 -321
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector150.hpp +0 -471
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector200.hpp +0 -621
- data/src/cxx_supportlib/vendor-modified/boost/typeof/vector50.hpp +0 -171
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/fwd.hpp +0 -63
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/transports/daily-rotate-file.js +0 -601
- data/src/nodejs_supportlib/vendor-copy/winston/lib/winston/transports/webhook.js +0 -146
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/pkginfo/LICENSE +0 -19
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/pkginfo/lib/pkginfo.js +0 -136
- data/src/nodejs_supportlib/vendor-copy/winston/node_modules/pkginfo/package.json +0 -56
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/COPYING +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/base64/base64.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/client.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/common/asio_ssl.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/common/chrono.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/common/connection_hdl.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/common/cpp11.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/common/network.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/common/platforms.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/common/random.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/common/regex.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/common/stdint.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/common/system_error.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/common/time.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/common/type_traits.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/concurrency/basic.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/concurrency/none.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/config/asio.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/config/asio_client.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/config/asio_no_tls.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/config/asio_no_tls_client.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/config/boost_config.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/config/core_client.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/config/debug.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/config/debug_asio.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/config/debug_asio_no_tls.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/config/minimal_client.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/config/minimal_server.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/connection_base.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/endpoint_base.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/error.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/extensions/extension.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/http/constants.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/http/impl/request.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/http/impl/response.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/http/request.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/http/response.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/impl/utilities_impl.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/logger/basic.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/logger/levels.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/logger/stub.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/logger/syslog.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/message_buffer/alloc.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/message_buffer/message.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/message_buffer/pool.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/processors/hybi00.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/processors/hybi07.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/processors/hybi08.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/processors/processor.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/random/none.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/random/random_device.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/server.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/transport/asio/base.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/transport/asio/security/base.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/transport/base/connection.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/transport/debug/base.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/transport/iostream/base.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/transport/stub/base.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/transport/stub/endpoint.hpp +0 -0
- /data/src/cxx_supportlib/{vendor-copy → vendor-modified}/websocketpp/websocketpp/utf8_validator.hpp +0 -0
@@ -25,6 +25,7 @@
|
|
25
25
|
#include <boost/container/container_fwd.hpp>
|
26
26
|
#include <boost/container/new_allocator.hpp> //new_allocator
|
27
27
|
#include <boost/container/throw_exception.hpp>
|
28
|
+
#include <boost/container/options.hpp>
|
28
29
|
// container/detail
|
29
30
|
#include <boost/container/detail/advanced_insert_int.hpp>
|
30
31
|
#include <boost/container/detail/algorithm.hpp> //algo_equal(), algo_lexicographical_compare
|
@@ -49,7 +50,6 @@
|
|
49
50
|
#include <boost/move/detail/move_helpers.hpp>
|
50
51
|
// other
|
51
52
|
#include <boost/assert.hpp>
|
52
|
-
#include <boost/core/no_exceptions_support.hpp>
|
53
53
|
// std
|
54
54
|
#include <cstddef>
|
55
55
|
|
@@ -61,25 +61,23 @@ namespace boost {
|
|
61
61
|
namespace container {
|
62
62
|
|
63
63
|
#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
64
|
-
template <class T, class Allocator>
|
64
|
+
template <class T, class Allocator, class Options>
|
65
65
|
class deque;
|
66
66
|
|
67
67
|
template <class T>
|
68
68
|
struct deque_value_traits
|
69
69
|
{
|
70
70
|
typedef T value_type;
|
71
|
-
|
72
|
-
|
71
|
+
BOOST_STATIC_CONSTEXPR bool trivial_dctr = dtl::is_trivially_destructible<value_type>::value;
|
72
|
+
BOOST_STATIC_CONSTEXPR bool trivial_dctr_after_move = ::boost::has_trivial_destructor_after_move<value_type>::value;
|
73
73
|
};
|
74
74
|
|
75
|
-
|
76
|
-
|
77
|
-
template<class T>
|
78
|
-
struct deque_buf_size
|
75
|
+
template<class T, std::size_t BlockBytes, std::size_t BlockSize>
|
76
|
+
struct deque_block_size
|
79
77
|
{
|
80
|
-
|
81
|
-
|
82
|
-
|
78
|
+
BOOST_CONTAINER_STATIC_ASSERT_MSG(!(BlockBytes && BlockSize), "BlockBytes and BlockSize can't be specified at the same time");
|
79
|
+
BOOST_STATIC_CONSTEXPR std::size_t block_bytes = BlockBytes ? BlockBytes : 512u;
|
80
|
+
BOOST_STATIC_CONSTEXPR std::size_t value = BlockSize ? BlockSize : (sizeof(T) < block_bytes ? (block_bytes/sizeof(T)) : std::size_t(1));
|
83
81
|
};
|
84
82
|
|
85
83
|
namespace dtl {
|
@@ -108,6 +106,10 @@ namespace dtl {
|
|
108
106
|
// [map, map + map_size).
|
109
107
|
// A pointer in the range [map, map + map_size) points to an allocated node
|
110
108
|
// if and only if the pointer is in the range [start.node, finish.node].
|
109
|
+
|
110
|
+
#define BOOST_CONTAINER_DEQUE_LIGHTER_ITERATOR_LEVEL 0
|
111
|
+
|
112
|
+
#if BOOST_CONTAINER_DEQUE_LIGHTER_ITERATOR_LEVEL == 0
|
111
113
|
template<class Pointer, bool IsConst>
|
112
114
|
class deque_iterator
|
113
115
|
{
|
@@ -115,6 +117,7 @@ class deque_iterator
|
|
115
117
|
typedef std::random_access_iterator_tag iterator_category;
|
116
118
|
typedef typename boost::intrusive::pointer_traits<Pointer>::element_type value_type;
|
117
119
|
typedef typename boost::intrusive::pointer_traits<Pointer>::difference_type difference_type;
|
120
|
+
typedef typename boost::intrusive::pointer_traits<Pointer>::size_type size_type;
|
118
121
|
typedef typename if_c
|
119
122
|
< IsConst
|
120
123
|
, typename boost::intrusive::pointer_traits<Pointer>::template
|
@@ -127,8 +130,10 @@ class deque_iterator
|
|
127
130
|
, value_type&
|
128
131
|
>::type reference;
|
129
132
|
|
130
|
-
|
131
|
-
|
133
|
+
class nat;
|
134
|
+
typedef typename dtl::if_c< IsConst
|
135
|
+
, deque_iterator<Pointer, false>
|
136
|
+
, nat>::type nonconst_iterator;
|
132
137
|
|
133
138
|
typedef Pointer val_alloc_ptr;
|
134
139
|
typedef typename boost::intrusive::pointer_traits<Pointer>::
|
@@ -141,58 +146,74 @@ class deque_iterator
|
|
141
146
|
|
142
147
|
public:
|
143
148
|
|
144
|
-
Pointer get_cur() const { return m_cur; }
|
145
|
-
Pointer get_first() const { return m_first; }
|
146
|
-
Pointer get_last() const { return m_last; }
|
147
|
-
index_pointer get_node() const { return m_node; }
|
149
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline Pointer get_cur() const { return m_cur; }
|
150
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline Pointer get_first() const { return m_first; }
|
151
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline Pointer get_last() const { return m_last; }
|
152
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline index_pointer get_node() const { return m_node; }
|
153
|
+
|
154
|
+
inline deque_iterator(val_alloc_ptr x, index_pointer y, difference_type block_size) BOOST_NOEXCEPT_OR_NOTHROW
|
155
|
+
: m_cur(x), m_first(*y), m_last(*y + block_size), m_node(y)
|
156
|
+
{}
|
148
157
|
|
149
|
-
deque_iterator(val_alloc_ptr x, index_pointer y) BOOST_NOEXCEPT_OR_NOTHROW
|
150
|
-
: m_cur(x), m_first(*y), m_last(*y +
|
158
|
+
inline deque_iterator(val_alloc_ptr x, index_pointer y, size_type block_size) BOOST_NOEXCEPT_OR_NOTHROW
|
159
|
+
: m_cur(x), m_first(*y), m_last(*y + difference_type(block_size)), m_node(y)
|
151
160
|
{}
|
152
161
|
|
153
|
-
deque_iterator() BOOST_NOEXCEPT_OR_NOTHROW
|
162
|
+
inline deque_iterator() BOOST_NOEXCEPT_OR_NOTHROW
|
154
163
|
: m_cur(), m_first(), m_last(), m_node() //Value initialization to achieve "null iterators" (N3644)
|
155
164
|
{}
|
156
165
|
|
157
|
-
deque_iterator(deque_iterator
|
166
|
+
inline deque_iterator(const deque_iterator& x) BOOST_NOEXCEPT_OR_NOTHROW
|
158
167
|
: m_cur(x.get_cur()), m_first(x.get_first()), m_last(x.get_last()), m_node(x.get_node())
|
159
168
|
{}
|
160
169
|
|
161
|
-
deque_iterator(
|
170
|
+
inline deque_iterator(const nonconst_iterator& x) BOOST_NOEXCEPT_OR_NOTHROW
|
171
|
+
: m_cur(x.get_cur()), m_first(x.get_first()), m_last(x.get_last()), m_node(x.get_node())
|
172
|
+
{}
|
173
|
+
|
174
|
+
inline deque_iterator(Pointer cur, Pointer first, Pointer last, index_pointer node) BOOST_NOEXCEPT_OR_NOTHROW
|
162
175
|
: m_cur(cur), m_first(first), m_last(last), m_node(node)
|
163
176
|
{}
|
164
177
|
|
165
|
-
deque_iterator
|
178
|
+
inline deque_iterator& operator=(const deque_iterator& x) BOOST_NOEXCEPT_OR_NOTHROW
|
179
|
+
{ m_cur = x.get_cur(); m_first = x.get_first(); m_last = x.get_last(); m_node = x.get_node(); return *this; }
|
180
|
+
|
181
|
+
inline deque_iterator<Pointer, false> unconst() const BOOST_NOEXCEPT_OR_NOTHROW
|
166
182
|
{
|
167
183
|
return deque_iterator<Pointer, false>(this->get_cur(), this->get_first(), this->get_last(), this->get_node());
|
168
184
|
}
|
169
185
|
|
170
|
-
reference operator*() const BOOST_NOEXCEPT_OR_NOTHROW
|
186
|
+
inline reference operator*() const BOOST_NOEXCEPT_OR_NOTHROW
|
171
187
|
{ return *this->m_cur; }
|
172
188
|
|
173
|
-
pointer operator->() const BOOST_NOEXCEPT_OR_NOTHROW
|
189
|
+
inline pointer operator->() const BOOST_NOEXCEPT_OR_NOTHROW
|
174
190
|
{ return this->m_cur; }
|
175
191
|
|
176
|
-
difference_type operator-(const deque_iterator& x) const BOOST_NOEXCEPT_OR_NOTHROW
|
192
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD difference_type operator-(const deque_iterator& x) const BOOST_NOEXCEPT_OR_NOTHROW
|
177
193
|
{
|
178
194
|
if(!this->m_cur && !x.m_cur){
|
179
195
|
return 0;
|
180
196
|
}
|
181
|
-
|
197
|
+
const difference_type block_size = m_last - m_first;
|
198
|
+
BOOST_ASSERT(block_size);
|
199
|
+
return block_size * (this->m_node - x.m_node - 1) +
|
182
200
|
(this->m_cur - this->m_first) + (x.m_last - x.m_cur);
|
183
201
|
}
|
184
202
|
|
185
203
|
deque_iterator& operator++() BOOST_NOEXCEPT_OR_NOTHROW
|
186
204
|
{
|
205
|
+
BOOST_ASSERT(!!m_cur);
|
187
206
|
++this->m_cur;
|
188
207
|
if (this->m_cur == this->m_last) {
|
189
|
-
|
208
|
+
const difference_type block_size = m_last - m_first;
|
209
|
+
BOOST_ASSERT(block_size);
|
210
|
+
this->priv_set_node(this->m_node + 1, block_size);
|
190
211
|
this->m_cur = this->m_first;
|
191
212
|
}
|
192
213
|
return *this;
|
193
214
|
}
|
194
215
|
|
195
|
-
deque_iterator operator++(int) BOOST_NOEXCEPT_OR_NOTHROW
|
216
|
+
inline deque_iterator operator++(int) BOOST_NOEXCEPT_OR_NOTHROW
|
196
217
|
{
|
197
218
|
deque_iterator tmp(*this);
|
198
219
|
++*this;
|
@@ -201,15 +222,18 @@ class deque_iterator
|
|
201
222
|
|
202
223
|
deque_iterator& operator--() BOOST_NOEXCEPT_OR_NOTHROW
|
203
224
|
{
|
225
|
+
BOOST_ASSERT(!!m_cur);
|
204
226
|
if (this->m_cur == this->m_first) {
|
205
|
-
|
227
|
+
const difference_type block_size = m_last - m_first;
|
228
|
+
BOOST_ASSERT(block_size);
|
229
|
+
this->priv_set_node(this->m_node - 1, block_size);
|
206
230
|
this->m_cur = this->m_last;
|
207
231
|
}
|
208
232
|
--this->m_cur;
|
209
233
|
return *this;
|
210
234
|
}
|
211
235
|
|
212
|
-
deque_iterator operator--(int) BOOST_NOEXCEPT_OR_NOTHROW
|
236
|
+
inline deque_iterator operator--(int) BOOST_NOEXCEPT_OR_NOTHROW
|
213
237
|
{
|
214
238
|
deque_iterator tmp(*this);
|
215
239
|
--*this;
|
@@ -218,67 +242,540 @@ class deque_iterator
|
|
218
242
|
|
219
243
|
deque_iterator& operator+=(difference_type n) BOOST_NOEXCEPT_OR_NOTHROW
|
220
244
|
{
|
221
|
-
|
222
|
-
|
223
|
-
|
245
|
+
if (!n)
|
246
|
+
return *this;
|
247
|
+
BOOST_ASSERT(!!m_cur);
|
248
|
+
const difference_type offset = n + (this->m_cur - this->m_first);
|
249
|
+
const difference_type block_size = m_last - m_first;
|
250
|
+
BOOST_ASSERT(block_size);
|
251
|
+
if (offset >= 0 && offset < block_size)
|
252
|
+
this->m_cur += difference_type(n);
|
224
253
|
else {
|
225
|
-
difference_type node_offset =
|
226
|
-
|
227
|
-
|
228
|
-
this->priv_set_node(this->m_node + node_offset);
|
254
|
+
const difference_type node_offset =
|
255
|
+
offset > 0 ? (offset / block_size)
|
256
|
+
: (-difference_type((-offset - 1) / block_size) - 1);
|
257
|
+
this->priv_set_node(this->m_node + node_offset, size_type(block_size));
|
229
258
|
this->m_cur = this->m_first +
|
230
|
-
(offset - node_offset *
|
259
|
+
(offset - node_offset * block_size);
|
231
260
|
}
|
232
261
|
return *this;
|
233
262
|
}
|
234
263
|
|
235
|
-
|
264
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
265
|
+
deque_iterator operator+(difference_type n) const BOOST_NOEXCEPT_OR_NOTHROW
|
236
266
|
{ deque_iterator tmp(*this); return tmp += n; }
|
237
267
|
|
238
|
-
|
268
|
+
inline
|
269
|
+
deque_iterator& operator-=(difference_type n) BOOST_NOEXCEPT_OR_NOTHROW
|
239
270
|
{ return *this += -n; }
|
240
271
|
|
241
|
-
|
272
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
273
|
+
deque_iterator operator-(difference_type n) const BOOST_NOEXCEPT_OR_NOTHROW
|
242
274
|
{ deque_iterator tmp(*this); return tmp -= n; }
|
243
275
|
|
244
|
-
|
276
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
277
|
+
reference operator[](difference_type n) const BOOST_NOEXCEPT_OR_NOTHROW
|
245
278
|
{ return *(*this + n); }
|
246
279
|
|
247
|
-
|
280
|
+
//Comparisons
|
281
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
282
|
+
friend bool operator==(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
248
283
|
{ return l.m_cur == r.m_cur; }
|
249
284
|
|
250
|
-
|
285
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
286
|
+
friend bool operator!=(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
251
287
|
{ return l.m_cur != r.m_cur; }
|
252
288
|
|
253
|
-
|
289
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
290
|
+
friend bool operator<(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
254
291
|
{ return (l.m_node == r.m_node) ? (l.m_cur < r.m_cur) : (l.m_node < r.m_node); }
|
255
292
|
|
256
|
-
|
293
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
294
|
+
friend bool operator>(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
257
295
|
{ return r < l; }
|
258
296
|
|
259
|
-
|
297
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
298
|
+
friend bool operator<=(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
260
299
|
{ return !(r < l); }
|
261
300
|
|
262
|
-
|
301
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
302
|
+
friend bool operator>=(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
263
303
|
{ return !(l < r); }
|
264
304
|
|
265
|
-
|
305
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
306
|
+
friend deque_iterator operator+(difference_type n, deque_iterator x) BOOST_NOEXCEPT_OR_NOTHROW
|
307
|
+
{ return x += n; }
|
308
|
+
|
309
|
+
inline void priv_set_node(index_pointer new_node, size_type block_size) BOOST_NOEXCEPT_OR_NOTHROW
|
310
|
+
{ return this->priv_set_node(new_node, difference_type(block_size)); }
|
311
|
+
|
312
|
+
inline void priv_set_node(index_pointer new_node, difference_type block_size) BOOST_NOEXCEPT_OR_NOTHROW
|
266
313
|
{
|
267
314
|
this->m_node = new_node;
|
268
315
|
this->m_first = *new_node;
|
269
|
-
this->m_last = this->m_first +
|
316
|
+
this->m_last = this->m_first + block_size;
|
317
|
+
}
|
318
|
+
};
|
319
|
+
|
320
|
+
#elif BOOST_CONTAINER_DEQUE_LIGHTER_ITERATOR_LEVEL == 1
|
321
|
+
|
322
|
+
template<class Pointer, bool IsConst, unsigned BlockBytes, unsigned BlockSize>
|
323
|
+
class deque_iterator
|
324
|
+
{
|
325
|
+
public:
|
326
|
+
typedef std::random_access_iterator_tag iterator_category;
|
327
|
+
typedef typename boost::intrusive::pointer_traits<Pointer>::element_type value_type;
|
328
|
+
typedef typename boost::intrusive::pointer_traits<Pointer>::difference_type difference_type;
|
329
|
+
typedef typename boost::intrusive::pointer_traits<Pointer>::size_type size_type;
|
330
|
+
typedef typename if_c
|
331
|
+
< IsConst
|
332
|
+
, typename boost::intrusive::pointer_traits<Pointer>::template
|
333
|
+
rebind_pointer<const value_type>::type
|
334
|
+
, Pointer
|
335
|
+
>::type pointer;
|
336
|
+
typedef typename if_c
|
337
|
+
< IsConst
|
338
|
+
, const value_type&
|
339
|
+
, value_type&
|
340
|
+
>::type reference;
|
341
|
+
|
342
|
+
BOOST_CONSTEXPR inline static size_type get_block_size() BOOST_NOEXCEPT_OR_NOTHROW
|
343
|
+
{ return deque_block_size<value_type, BlockBytes, BlockSize>::value; }
|
344
|
+
|
345
|
+
BOOST_CONSTEXPR inline static difference_type get_block_ssize() BOOST_NOEXCEPT_OR_NOTHROW
|
346
|
+
{ return difference_type((get_block_size())); }
|
347
|
+
|
348
|
+
class nat;
|
349
|
+
typedef typename dtl::if_c< IsConst
|
350
|
+
, deque_iterator<Pointer, false, BlockBytes, BlockSize>
|
351
|
+
, nat>::type nonconst_iterator;
|
352
|
+
|
353
|
+
typedef Pointer val_alloc_ptr;
|
354
|
+
typedef typename boost::intrusive::pointer_traits<Pointer>::
|
355
|
+
template rebind_pointer<Pointer>::type index_pointer;
|
356
|
+
|
357
|
+
Pointer m_cur;
|
358
|
+
Pointer m_first;
|
359
|
+
index_pointer m_node;
|
360
|
+
|
361
|
+
public:
|
362
|
+
|
363
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline Pointer get_cur() const { return m_cur; }
|
364
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline Pointer get_first() const { return m_first; }
|
365
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline Pointer get_last() const { return m_first + get_block_ssize(); }
|
366
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline index_pointer get_node() const { return m_node; }
|
367
|
+
|
368
|
+
inline deque_iterator(val_alloc_ptr x, index_pointer y, difference_type ) BOOST_NOEXCEPT_OR_NOTHROW
|
369
|
+
: m_cur(x), m_first(*y), m_node(y)
|
370
|
+
{}
|
371
|
+
|
372
|
+
inline deque_iterator(val_alloc_ptr x, index_pointer y, size_type ) BOOST_NOEXCEPT_OR_NOTHROW
|
373
|
+
: m_cur(x), m_first(*y), m_node(y)
|
374
|
+
{}
|
375
|
+
|
376
|
+
inline deque_iterator() BOOST_NOEXCEPT_OR_NOTHROW
|
377
|
+
: m_cur(), m_first(), m_node() //Value initialization to achieve "null iterators" (N3644)
|
378
|
+
{}
|
379
|
+
|
380
|
+
inline deque_iterator(const deque_iterator& x) BOOST_NOEXCEPT_OR_NOTHROW
|
381
|
+
: m_cur(x.get_cur()), m_first(x.get_first()), m_node(x.get_node())
|
382
|
+
{}
|
383
|
+
|
384
|
+
inline deque_iterator(const nonconst_iterator& x) BOOST_NOEXCEPT_OR_NOTHROW
|
385
|
+
: m_cur(x.get_cur()), m_first(x.get_first()), m_node(x.get_node())
|
386
|
+
{}
|
387
|
+
|
388
|
+
inline deque_iterator(Pointer cur, Pointer first, index_pointer node) BOOST_NOEXCEPT_OR_NOTHROW
|
389
|
+
: m_cur(cur), m_first(first), m_node(node)
|
390
|
+
{}
|
391
|
+
|
392
|
+
inline deque_iterator& operator=(const deque_iterator& x) BOOST_NOEXCEPT_OR_NOTHROW
|
393
|
+
{ m_cur = x.get_cur(); m_first = x.get_first(); m_node = x.get_node(); return *this; }
|
394
|
+
|
395
|
+
inline nonconst_iterator unconst() const BOOST_NOEXCEPT_OR_NOTHROW
|
396
|
+
{
|
397
|
+
return nonconst_iterator(this->get_cur(), this->get_first(), this->get_node());
|
398
|
+
}
|
399
|
+
|
400
|
+
inline reference operator*() const BOOST_NOEXCEPT_OR_NOTHROW
|
401
|
+
{ return *this->m_cur; }
|
402
|
+
|
403
|
+
inline pointer operator->() const BOOST_NOEXCEPT_OR_NOTHROW
|
404
|
+
{ return this->m_cur; }
|
405
|
+
|
406
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD difference_type operator-(const deque_iterator& x) const BOOST_NOEXCEPT_OR_NOTHROW
|
407
|
+
{
|
408
|
+
if(!this->m_cur && !x.m_cur){
|
409
|
+
return 0;
|
410
|
+
}
|
411
|
+
const difference_type block_size = get_block_ssize();
|
412
|
+
BOOST_ASSERT(block_size);
|
413
|
+
return block_size * (this->m_node - x.m_node - 1) +
|
414
|
+
(this->m_cur - this->m_first) + ((x.m_first+block_size) - x.m_cur);
|
415
|
+
}
|
416
|
+
|
417
|
+
deque_iterator& operator++() BOOST_NOEXCEPT_OR_NOTHROW
|
418
|
+
{
|
419
|
+
BOOST_ASSERT(!!m_cur);
|
420
|
+
++this->m_cur;
|
421
|
+
const difference_type block_size = get_block_ssize();
|
422
|
+
if (this->m_cur == (this->m_first+block_size)) {
|
423
|
+
|
424
|
+
BOOST_ASSERT(block_size);
|
425
|
+
++this->m_node;
|
426
|
+
this->m_first = *this->m_node;
|
427
|
+
this->m_cur = this->m_first;
|
428
|
+
}
|
429
|
+
return *this;
|
270
430
|
}
|
271
431
|
|
272
|
-
|
432
|
+
inline deque_iterator operator++(int) BOOST_NOEXCEPT_OR_NOTHROW
|
433
|
+
{
|
434
|
+
deque_iterator tmp(*this);
|
435
|
+
++*this;
|
436
|
+
return tmp;
|
437
|
+
}
|
438
|
+
|
439
|
+
deque_iterator& operator--() BOOST_NOEXCEPT_OR_NOTHROW
|
440
|
+
{
|
441
|
+
BOOST_ASSERT(!!m_cur);
|
442
|
+
if (this->m_cur == this->m_first) {
|
443
|
+
--this->m_node;
|
444
|
+
this->m_first = *this->m_node;
|
445
|
+
this->m_cur = this->m_first + get_block_ssize();
|
446
|
+
}
|
447
|
+
--this->m_cur;
|
448
|
+
return *this;
|
449
|
+
}
|
450
|
+
|
451
|
+
inline deque_iterator operator--(int) BOOST_NOEXCEPT_OR_NOTHROW
|
452
|
+
{
|
453
|
+
deque_iterator tmp(*this);
|
454
|
+
--*this;
|
455
|
+
return tmp;
|
456
|
+
}
|
457
|
+
|
458
|
+
deque_iterator& operator+=(difference_type n) BOOST_NOEXCEPT_OR_NOTHROW
|
459
|
+
{
|
460
|
+
if (!n)
|
461
|
+
return *this;
|
462
|
+
BOOST_ASSERT(!!m_cur);
|
463
|
+
const difference_type offset = n + (this->m_cur - this->m_first);
|
464
|
+
const difference_type block_size = get_block_ssize();
|
465
|
+
BOOST_ASSERT(block_size);
|
466
|
+
if (offset >= 0 && offset < block_size)
|
467
|
+
this->m_cur += difference_type(n);
|
468
|
+
else {
|
469
|
+
const difference_type node_offset =
|
470
|
+
offset > 0 ? (offset / block_size)
|
471
|
+
: (-difference_type((-offset - 1) / block_size) - 1);
|
472
|
+
this->m_node += node_offset;
|
473
|
+
this->m_first = *this->m_node;
|
474
|
+
this->m_cur = this->m_first + (offset - node_offset * block_size);
|
475
|
+
}
|
476
|
+
return *this;
|
477
|
+
}
|
478
|
+
|
479
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
480
|
+
deque_iterator operator+(difference_type n) const BOOST_NOEXCEPT_OR_NOTHROW
|
481
|
+
{ deque_iterator tmp(*this); return tmp += n; }
|
482
|
+
|
483
|
+
inline
|
484
|
+
deque_iterator& operator-=(difference_type n) BOOST_NOEXCEPT_OR_NOTHROW
|
485
|
+
{ return *this += -n; }
|
486
|
+
|
487
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
488
|
+
deque_iterator operator-(difference_type n) const BOOST_NOEXCEPT_OR_NOTHROW
|
489
|
+
{ deque_iterator tmp(*this); return tmp -= n; }
|
490
|
+
|
491
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
492
|
+
reference operator[](difference_type n) const BOOST_NOEXCEPT_OR_NOTHROW
|
493
|
+
{ return *(*this + n); }
|
494
|
+
|
495
|
+
//Comparisons
|
496
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
497
|
+
friend bool operator==(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
498
|
+
{ return l.m_cur == r.m_cur; }
|
499
|
+
|
500
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
501
|
+
friend bool operator!=(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
502
|
+
{ return l.m_cur != r.m_cur; }
|
503
|
+
|
504
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
505
|
+
friend bool operator<(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
506
|
+
{ return (l.m_node == r.m_node) ? (l.m_cur < r.m_cur) : (l.m_node < r.m_node); }
|
507
|
+
|
508
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
509
|
+
friend bool operator>(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
510
|
+
{ return r < l; }
|
511
|
+
|
512
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
513
|
+
friend bool operator<=(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
514
|
+
{ return !(r < l); }
|
515
|
+
|
516
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
517
|
+
friend bool operator>=(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
518
|
+
{ return !(l < r); }
|
519
|
+
|
520
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
521
|
+
friend deque_iterator operator+(difference_type n, deque_iterator x) BOOST_NOEXCEPT_OR_NOTHROW
|
273
522
|
{ return x += n; }
|
523
|
+
|
524
|
+
inline void priv_set_node(index_pointer new_node, size_type ) BOOST_NOEXCEPT_OR_NOTHROW
|
525
|
+
{ return this->priv_set_node(new_node, difference_type()); }
|
526
|
+
|
527
|
+
inline void priv_set_node(index_pointer new_node, difference_type) BOOST_NOEXCEPT_OR_NOTHROW
|
528
|
+
{
|
529
|
+
this->m_node = new_node;
|
530
|
+
this->m_first = *new_node;
|
531
|
+
}
|
274
532
|
};
|
275
533
|
|
534
|
+
#elif BOOST_CONTAINER_DEQUE_LIGHTER_ITERATOR_LEVEL == 2
|
535
|
+
|
536
|
+
template<class Pointer, bool IsConst, unsigned BlockBytes, unsigned BlockSize>
|
537
|
+
class deque_iterator
|
538
|
+
{
|
539
|
+
public:
|
540
|
+
typedef std::random_access_iterator_tag iterator_category;
|
541
|
+
typedef typename boost::intrusive::pointer_traits<Pointer>::element_type value_type;
|
542
|
+
typedef typename boost::intrusive::pointer_traits<Pointer>::difference_type difference_type;
|
543
|
+
typedef typename boost::intrusive::pointer_traits<Pointer>::size_type size_type;
|
544
|
+
typedef typename if_c
|
545
|
+
< IsConst
|
546
|
+
, typename boost::intrusive::pointer_traits<Pointer>::template
|
547
|
+
rebind_pointer<const value_type>::type
|
548
|
+
, Pointer
|
549
|
+
>::type pointer;
|
550
|
+
typedef typename if_c
|
551
|
+
< IsConst
|
552
|
+
, const value_type&
|
553
|
+
, value_type&
|
554
|
+
>::type reference;
|
555
|
+
|
556
|
+
BOOST_CONSTEXPR inline static size_type get_block_size() BOOST_NOEXCEPT_OR_NOTHROW
|
557
|
+
{
|
558
|
+
BOOST_CONTAINER_STATIC_ASSERT((deque_block_size<value_type, BlockBytes, BlockSize>::value));
|
559
|
+
return deque_block_size<value_type, BlockBytes, BlockSize>::value;
|
560
|
+
}
|
561
|
+
|
562
|
+
BOOST_CONSTEXPR inline static difference_type get_block_ssize() BOOST_NOEXCEPT_OR_NOTHROW
|
563
|
+
{ return difference_type((get_block_size())); }
|
564
|
+
|
565
|
+
class nat;
|
566
|
+
typedef typename dtl::if_c< IsConst
|
567
|
+
, deque_iterator<Pointer, false, BlockBytes, BlockSize>
|
568
|
+
, nat>::type nonconst_iterator;
|
569
|
+
|
570
|
+
typedef Pointer val_alloc_ptr;
|
571
|
+
typedef typename boost::intrusive::pointer_traits<Pointer>::
|
572
|
+
template rebind_pointer<Pointer>::type index_pointer;
|
573
|
+
|
574
|
+
Pointer m_cur;
|
575
|
+
index_pointer m_node;
|
576
|
+
|
577
|
+
public:
|
578
|
+
|
579
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline Pointer get_cur() const { return m_cur; }
|
580
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline Pointer get_first() const { return *m_node; }
|
581
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline Pointer get_last() const { return *m_node + get_block_ssize(); }
|
582
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline index_pointer get_node() const { return m_node; }
|
583
|
+
|
584
|
+
inline deque_iterator(val_alloc_ptr x, index_pointer y, difference_type ) BOOST_NOEXCEPT_OR_NOTHROW
|
585
|
+
: m_cur(x), m_node(y)
|
586
|
+
{}
|
587
|
+
|
588
|
+
inline deque_iterator(val_alloc_ptr x, index_pointer y, size_type ) BOOST_NOEXCEPT_OR_NOTHROW
|
589
|
+
: m_cur(x), m_node(y)
|
590
|
+
{}
|
591
|
+
|
592
|
+
inline deque_iterator() BOOST_NOEXCEPT_OR_NOTHROW
|
593
|
+
: m_cur(), m_node() //Value initialization to achieve "null iterators" (N3644)
|
594
|
+
{}
|
595
|
+
|
596
|
+
inline deque_iterator(const deque_iterator& x) BOOST_NOEXCEPT_OR_NOTHROW
|
597
|
+
: m_cur(x.get_cur()), m_node(x.get_node())
|
598
|
+
{}
|
599
|
+
|
600
|
+
inline deque_iterator(const nonconst_iterator& x) BOOST_NOEXCEPT_OR_NOTHROW
|
601
|
+
: m_cur(x.get_cur()), m_node(x.get_node())
|
602
|
+
{}
|
603
|
+
|
604
|
+
inline deque_iterator(Pointer cur, index_pointer node) BOOST_NOEXCEPT_OR_NOTHROW
|
605
|
+
: m_cur(cur), m_node(node)
|
606
|
+
{}
|
607
|
+
|
608
|
+
inline deque_iterator& operator=(const deque_iterator& x) BOOST_NOEXCEPT_OR_NOTHROW
|
609
|
+
{ m_cur = x.get_cur(); m_node = x.get_node(); return *this; }
|
610
|
+
|
611
|
+
inline nonconst_iterator unconst() const BOOST_NOEXCEPT_OR_NOTHROW
|
612
|
+
{
|
613
|
+
return nonconst_iterator(this->get_cur(), this->get_node());
|
614
|
+
}
|
615
|
+
|
616
|
+
inline reference operator*() const BOOST_NOEXCEPT_OR_NOTHROW
|
617
|
+
{ return *this->m_cur; }
|
618
|
+
|
619
|
+
inline pointer operator->() const BOOST_NOEXCEPT_OR_NOTHROW
|
620
|
+
{ return this->m_cur; }
|
621
|
+
|
622
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD difference_type operator-(const deque_iterator& x) const BOOST_NOEXCEPT_OR_NOTHROW
|
623
|
+
{
|
624
|
+
if(!this->m_cur && !x.m_cur){
|
625
|
+
return 0;
|
626
|
+
}
|
627
|
+
const difference_type block_size = get_block_ssize();
|
628
|
+
BOOST_ASSERT(block_size);
|
629
|
+
return block_size * (this->m_node - x.m_node - 1) +
|
630
|
+
(this->m_cur - this->get_first()) + (x.get_last() - x.m_cur);
|
631
|
+
}
|
632
|
+
|
633
|
+
deque_iterator& operator++() BOOST_NOEXCEPT_OR_NOTHROW
|
634
|
+
{
|
635
|
+
BOOST_ASSERT(!!m_cur);
|
636
|
+
++this->m_cur;
|
637
|
+
if (this->m_cur == (this->get_last())) {
|
638
|
+
|
639
|
+
++this->m_node;
|
640
|
+
this->m_cur = *this->m_node;
|
641
|
+
}
|
642
|
+
return *this;
|
643
|
+
}
|
644
|
+
|
645
|
+
inline deque_iterator operator++(int) BOOST_NOEXCEPT_OR_NOTHROW
|
646
|
+
{
|
647
|
+
deque_iterator tmp(*this);
|
648
|
+
++*this;
|
649
|
+
return tmp;
|
650
|
+
}
|
651
|
+
|
652
|
+
deque_iterator& operator--() BOOST_NOEXCEPT_OR_NOTHROW
|
653
|
+
{
|
654
|
+
BOOST_ASSERT(!!m_cur);
|
655
|
+
if (this->m_cur == this->get_first()) {
|
656
|
+
--this->m_node;
|
657
|
+
this->m_cur = this->get_last();
|
658
|
+
}
|
659
|
+
--this->m_cur;
|
660
|
+
return *this;
|
661
|
+
}
|
662
|
+
|
663
|
+
inline deque_iterator operator--(int) BOOST_NOEXCEPT_OR_NOTHROW
|
664
|
+
{
|
665
|
+
deque_iterator tmp(*this);
|
666
|
+
--*this;
|
667
|
+
return tmp;
|
668
|
+
}
|
669
|
+
|
670
|
+
deque_iterator& operator+=(difference_type n) BOOST_NOEXCEPT_OR_NOTHROW
|
671
|
+
{
|
672
|
+
if (!n)
|
673
|
+
return *this;
|
674
|
+
BOOST_ASSERT(!!m_cur);
|
675
|
+
const difference_type offset = n + (this->m_cur - this->get_first());
|
676
|
+
const difference_type block_size = get_block_ssize();
|
677
|
+
BOOST_ASSERT(block_size);
|
678
|
+
if (offset >= 0 && offset < block_size)
|
679
|
+
this->m_cur += difference_type(n);
|
680
|
+
else {
|
681
|
+
const difference_type node_offset =
|
682
|
+
offset > 0 ? (offset / block_size)
|
683
|
+
: (-difference_type((-offset - 1) / block_size) - 1);
|
684
|
+
this->m_node += node_offset;
|
685
|
+
this->m_cur = this->get_first() + (offset - node_offset * block_size);
|
686
|
+
}
|
687
|
+
return *this;
|
688
|
+
}
|
689
|
+
|
690
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
691
|
+
deque_iterator operator+(difference_type n) const BOOST_NOEXCEPT_OR_NOTHROW
|
692
|
+
{ deque_iterator tmp(*this); return tmp += n; }
|
693
|
+
|
694
|
+
inline
|
695
|
+
deque_iterator& operator-=(difference_type n) BOOST_NOEXCEPT_OR_NOTHROW
|
696
|
+
{ return *this += -n; }
|
697
|
+
|
698
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
699
|
+
deque_iterator operator-(difference_type n) const BOOST_NOEXCEPT_OR_NOTHROW
|
700
|
+
{ deque_iterator tmp(*this); return tmp -= n; }
|
701
|
+
|
702
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
703
|
+
reference operator[](difference_type n) const BOOST_NOEXCEPT_OR_NOTHROW
|
704
|
+
{
|
705
|
+
BOOST_ASSERT(!!m_cur);
|
706
|
+
const difference_type offset = n + (this->m_cur - this->get_first());
|
707
|
+
const difference_type block_size = get_block_ssize();
|
708
|
+
if (offset >= 0 && offset < block_size)
|
709
|
+
return this->m_cur[difference_type(n)];
|
710
|
+
else {
|
711
|
+
const difference_type node_offset = offset > 0
|
712
|
+
? (offset / block_size)
|
713
|
+
: (-difference_type((-offset - 1) / block_size) - 1);
|
714
|
+
return (this->m_node[node_offset]) [offset - node_offset * block_size];
|
715
|
+
}
|
716
|
+
}
|
717
|
+
|
718
|
+
//Comparisons
|
719
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
720
|
+
friend bool operator==(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
721
|
+
{ return l.m_cur == r.m_cur; }
|
722
|
+
|
723
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
724
|
+
friend bool operator!=(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
725
|
+
{ return l.m_cur != r.m_cur; }
|
726
|
+
|
727
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
728
|
+
friend bool operator<(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
729
|
+
{ return (l.m_node == r.m_node) ? (l.m_cur < r.m_cur) : (l.m_node < r.m_node); }
|
730
|
+
|
731
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
732
|
+
friend bool operator>(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
733
|
+
{ return r < l; }
|
734
|
+
|
735
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
736
|
+
friend bool operator<=(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
737
|
+
{ return !(r < l); }
|
738
|
+
|
739
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
740
|
+
friend bool operator>=(const deque_iterator& l, const deque_iterator& r) BOOST_NOEXCEPT_OR_NOTHROW
|
741
|
+
{ return !(l < r); }
|
742
|
+
|
743
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
744
|
+
friend deque_iterator operator+(difference_type n, deque_iterator x) BOOST_NOEXCEPT_OR_NOTHROW
|
745
|
+
{ return x += n; }
|
746
|
+
|
747
|
+
inline void priv_set_node(index_pointer new_node, size_type ) BOOST_NOEXCEPT_OR_NOTHROW
|
748
|
+
{ return this->priv_set_node(new_node, difference_type()); }
|
749
|
+
|
750
|
+
inline void priv_set_node(index_pointer new_node, difference_type) BOOST_NOEXCEPT_OR_NOTHROW
|
751
|
+
{
|
752
|
+
this->m_node = new_node;
|
753
|
+
}
|
754
|
+
};
|
755
|
+
|
756
|
+
#else
|
757
|
+
|
758
|
+
#error "Invalid BOOST_CONTAINER_DEQUE_LIGHTER_ITERATOR_LEVEL"
|
759
|
+
|
760
|
+
#endif
|
276
761
|
} //namespace dtl {
|
277
762
|
|
763
|
+
template<class Options>
|
764
|
+
struct get_deque_opt
|
765
|
+
{
|
766
|
+
typedef Options type;
|
767
|
+
};
|
768
|
+
|
769
|
+
template<>
|
770
|
+
struct get_deque_opt<void>
|
771
|
+
{
|
772
|
+
typedef deque_null_opt type;
|
773
|
+
};
|
774
|
+
|
278
775
|
// Deque base class. It has two purposes. First, its constructor
|
279
776
|
// and destructor allocate (but don't initialize) storage. This makes
|
280
777
|
// exception safety easier.
|
281
|
-
template <class Allocator>
|
778
|
+
template <class Allocator, class Options>
|
282
779
|
class deque_base
|
283
780
|
{
|
284
781
|
BOOST_COPYABLE_AND_MOVABLE(deque_base)
|
@@ -302,43 +799,54 @@ class deque_base
|
|
302
799
|
typedef Allocator allocator_type;
|
303
800
|
typedef allocator_type stored_allocator_type;
|
304
801
|
typedef val_alloc_size size_type;
|
802
|
+
typedef val_alloc_diff difference_type;
|
803
|
+
|
804
|
+
private:
|
805
|
+
typedef typename get_deque_opt<Options>::type options_type;
|
305
806
|
|
306
807
|
protected:
|
808
|
+
#if BOOST_CONTAINER_DEQUE_LIGHTER_ITERATOR_LEVEL == 0
|
809
|
+
typedef dtl::deque_iterator<val_alloc_ptr, false> iterator;
|
810
|
+
typedef dtl::deque_iterator<val_alloc_ptr, true> const_iterator;
|
811
|
+
#else
|
812
|
+
typedef dtl::deque_iterator<val_alloc_ptr, false, options_type::block_bytes, options_type::block_size> iterator;
|
813
|
+
typedef dtl::deque_iterator<val_alloc_ptr, true, options_type::block_bytes, options_type::block_size> const_iterator;
|
814
|
+
#endif
|
815
|
+
|
816
|
+
BOOST_CONSTEXPR inline static val_alloc_diff get_block_ssize() BOOST_NOEXCEPT_OR_NOTHROW
|
817
|
+
{ return val_alloc_diff((get_block_size())); }
|
818
|
+
|
819
|
+
BOOST_CONSTEXPR inline static size_type get_block_size() BOOST_NOEXCEPT_OR_NOTHROW
|
820
|
+
{ return deque_block_size<val_alloc_val, options_type::block_bytes, options_type::block_size>::value; }
|
307
821
|
|
308
822
|
typedef deque_value_traits<val_alloc_val> traits_t;
|
309
823
|
typedef ptr_alloc_t map_allocator_type;
|
310
824
|
|
311
|
-
|
312
|
-
{
|
313
|
-
|
314
|
-
val_alloc_ptr priv_allocate_node()
|
315
|
-
{ return this->alloc().allocate(s_buffer_size()); }
|
825
|
+
inline val_alloc_ptr priv_allocate_node()
|
826
|
+
{ return this->alloc().allocate(get_block_size()); }
|
316
827
|
|
317
|
-
void priv_deallocate_node(val_alloc_ptr p) BOOST_NOEXCEPT_OR_NOTHROW
|
318
|
-
{ this->alloc().deallocate(p,
|
828
|
+
inline void priv_deallocate_node(val_alloc_ptr p) BOOST_NOEXCEPT_OR_NOTHROW
|
829
|
+
{ this->alloc().deallocate(p, get_block_size()); }
|
319
830
|
|
320
|
-
ptr_alloc_ptr priv_allocate_map(size_type n)
|
831
|
+
inline ptr_alloc_ptr priv_allocate_map(size_type n)
|
321
832
|
{ return this->ptr_alloc().allocate(n); }
|
322
833
|
|
323
|
-
void priv_deallocate_map(ptr_alloc_ptr p, size_type n) BOOST_NOEXCEPT_OR_NOTHROW
|
834
|
+
inline void priv_deallocate_map(ptr_alloc_ptr p, size_type n) BOOST_NOEXCEPT_OR_NOTHROW
|
324
835
|
{ this->ptr_alloc().deallocate(p, n); }
|
325
836
|
|
326
|
-
|
327
|
-
typedef dtl::deque_iterator<val_alloc_ptr, true > const_iterator;
|
328
|
-
|
329
|
-
deque_base(size_type num_elements, const allocator_type& a)
|
837
|
+
inline deque_base(size_type num_elements, const allocator_type& a)
|
330
838
|
: members_(a)
|
331
839
|
{ this->priv_initialize_map(num_elements); }
|
332
840
|
|
333
|
-
explicit deque_base(const allocator_type& a)
|
841
|
+
inline explicit deque_base(const allocator_type& a)
|
334
842
|
: members_(a)
|
335
843
|
{}
|
336
844
|
|
337
|
-
deque_base()
|
845
|
+
inline deque_base()
|
338
846
|
: members_()
|
339
847
|
{}
|
340
848
|
|
341
|
-
explicit deque_base(BOOST_RV_REF(deque_base) x)
|
849
|
+
inline explicit deque_base(BOOST_RV_REF(deque_base) x)
|
342
850
|
: members_( boost::move(x.ptr_alloc())
|
343
851
|
, boost::move(x.alloc()) )
|
344
852
|
{}
|
@@ -367,45 +875,44 @@ class deque_base
|
|
367
875
|
void priv_initialize_map(size_type num_elements)
|
368
876
|
{
|
369
877
|
// if(num_elements){
|
370
|
-
size_type num_nodes = num_elements /
|
878
|
+
size_type num_nodes = num_elements / get_block_size() + 1;
|
371
879
|
|
372
880
|
this->members_.m_map_size = dtl::max_value((size_type) InitialMapSize, num_nodes + 2);
|
373
881
|
this->members_.m_map = this->priv_allocate_map(this->members_.m_map_size);
|
374
882
|
|
375
|
-
ptr_alloc_ptr nstart = this->members_.m_map + (this->members_.m_map_size - num_nodes) / 2;
|
376
|
-
ptr_alloc_ptr nfinish = nstart + num_nodes;
|
883
|
+
ptr_alloc_ptr nstart = this->members_.m_map + difference_type(this->members_.m_map_size - num_nodes) / 2;
|
884
|
+
ptr_alloc_ptr nfinish = nstart + difference_type(num_nodes);
|
377
885
|
|
378
|
-
|
886
|
+
BOOST_CONTAINER_TRY {
|
379
887
|
this->priv_create_nodes(nstart, nfinish);
|
380
888
|
}
|
381
|
-
|
889
|
+
BOOST_CONTAINER_CATCH(...){
|
382
890
|
this->priv_deallocate_map(this->members_.m_map, this->members_.m_map_size);
|
383
891
|
this->members_.m_map = 0;
|
384
892
|
this->members_.m_map_size = 0;
|
385
|
-
|
893
|
+
BOOST_CONTAINER_RETHROW
|
386
894
|
}
|
387
|
-
|
895
|
+
BOOST_CONTAINER_CATCH_END
|
388
896
|
|
389
|
-
this->members_.m_start.priv_set_node(nstart);
|
390
|
-
this->members_.m_finish.priv_set_node(nfinish - 1);
|
391
|
-
this->members_.m_start.m_cur = this->members_.m_start.
|
392
|
-
this->members_.m_finish.m_cur = this->members_.m_finish.
|
393
|
-
num_elements % s_buffer_size();
|
897
|
+
this->members_.m_start.priv_set_node(nstart, get_block_size());
|
898
|
+
this->members_.m_finish.priv_set_node(nfinish - 1, get_block_size());
|
899
|
+
this->members_.m_start.m_cur = this->members_.m_start.get_first();
|
900
|
+
this->members_.m_finish.m_cur = this->members_.m_finish.get_first() + difference_type(num_elements % get_block_size());
|
394
901
|
// }
|
395
902
|
}
|
396
903
|
|
397
904
|
void priv_create_nodes(ptr_alloc_ptr nstart, ptr_alloc_ptr nfinish)
|
398
905
|
{
|
399
906
|
ptr_alloc_ptr cur = nstart;
|
400
|
-
|
907
|
+
BOOST_CONTAINER_TRY {
|
401
908
|
for (; cur < nfinish; ++cur)
|
402
909
|
*cur = this->priv_allocate_node();
|
403
910
|
}
|
404
|
-
|
911
|
+
BOOST_CONTAINER_CATCH(...){
|
405
912
|
this->priv_destroy_nodes(nstart, cur);
|
406
|
-
|
913
|
+
BOOST_CONTAINER_RETHROW
|
407
914
|
}
|
408
|
-
|
915
|
+
BOOST_CONTAINER_CATCH_END
|
409
916
|
}
|
410
917
|
|
411
918
|
void priv_destroy_nodes(ptr_alloc_ptr nstart, ptr_alloc_ptr nfinish) BOOST_NOEXCEPT_OR_NOTHROW
|
@@ -459,16 +966,16 @@ class deque_base
|
|
459
966
|
iterator m_finish;
|
460
967
|
} members_;
|
461
968
|
|
462
|
-
ptr_alloc_t &ptr_alloc() BOOST_NOEXCEPT_OR_NOTHROW
|
969
|
+
inline ptr_alloc_t &ptr_alloc() BOOST_NOEXCEPT_OR_NOTHROW
|
463
970
|
{ return members_; }
|
464
971
|
|
465
|
-
const ptr_alloc_t &ptr_alloc() const BOOST_NOEXCEPT_OR_NOTHROW
|
972
|
+
inline const ptr_alloc_t &ptr_alloc() const BOOST_NOEXCEPT_OR_NOTHROW
|
466
973
|
{ return members_; }
|
467
974
|
|
468
|
-
allocator_type &alloc() BOOST_NOEXCEPT_OR_NOTHROW
|
975
|
+
inline allocator_type &alloc() BOOST_NOEXCEPT_OR_NOTHROW
|
469
976
|
{ return members_; }
|
470
977
|
|
471
|
-
const allocator_type &alloc() const BOOST_NOEXCEPT_OR_NOTHROW
|
978
|
+
inline const allocator_type &alloc() const BOOST_NOEXCEPT_OR_NOTHROW
|
472
979
|
{ return members_; }
|
473
980
|
};
|
474
981
|
#endif //#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
@@ -478,17 +985,21 @@ class deque_base
|
|
478
985
|
//! and removal of elements at the end of the sequence, and linear time insertion and removal of elements in the middle.
|
479
986
|
//!
|
480
987
|
//! \tparam T The type of object that is stored in the deque
|
481
|
-
//! \tparam
|
482
|
-
|
988
|
+
//! \tparam A The allocator used for all internal memory management, use void
|
989
|
+
//! for the default allocator
|
990
|
+
//! \tparam Options A type produced from \c boost::container::deque_options.
|
991
|
+
template <class T, class Allocator = void, class Options = void>
|
483
992
|
#else
|
484
|
-
template <class T, class Allocator>
|
993
|
+
template <class T, class Allocator, class Options>
|
485
994
|
#endif
|
486
|
-
class deque : protected deque_base<Allocator>
|
995
|
+
class deque : protected deque_base<typename real_allocator<T, Allocator>::type, Options>
|
487
996
|
{
|
488
997
|
#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
489
998
|
private:
|
490
|
-
typedef deque_base<Allocator> Base;
|
999
|
+
typedef deque_base<typename real_allocator<T, Allocator>::type, Options> Base;
|
491
1000
|
#endif //#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
1001
|
+
typedef typename real_allocator<T, Allocator>::type ValAllocator;
|
1002
|
+
typedef constant_iterator<T> c_it;
|
492
1003
|
|
493
1004
|
public:
|
494
1005
|
|
@@ -499,13 +1010,13 @@ class deque : protected deque_base<Allocator>
|
|
499
1010
|
//////////////////////////////////////////////
|
500
1011
|
|
501
1012
|
typedef T value_type;
|
502
|
-
typedef
|
503
|
-
typedef typename ::boost::container::allocator_traits<
|
504
|
-
typedef typename ::boost::container::allocator_traits<
|
505
|
-
typedef typename ::boost::container::allocator_traits<
|
506
|
-
typedef typename ::boost::container::allocator_traits<
|
507
|
-
typedef typename ::boost::container::allocator_traits<
|
508
|
-
typedef
|
1013
|
+
typedef ValAllocator allocator_type;
|
1014
|
+
typedef typename ::boost::container::allocator_traits<ValAllocator>::pointer pointer;
|
1015
|
+
typedef typename ::boost::container::allocator_traits<ValAllocator>::const_pointer const_pointer;
|
1016
|
+
typedef typename ::boost::container::allocator_traits<ValAllocator>::reference reference;
|
1017
|
+
typedef typename ::boost::container::allocator_traits<ValAllocator>::const_reference const_reference;
|
1018
|
+
typedef typename ::boost::container::allocator_traits<ValAllocator>::size_type size_type;
|
1019
|
+
typedef typename ::boost::container::allocator_traits<ValAllocator>::difference_type difference_type;
|
509
1020
|
typedef BOOST_CONTAINER_IMPDEF(allocator_type) stored_allocator_type;
|
510
1021
|
typedef BOOST_CONTAINER_IMPDEF(typename Base::iterator) iterator;
|
511
1022
|
typedef BOOST_CONTAINER_IMPDEF(typename Base::const_iterator) const_iterator;
|
@@ -517,13 +1028,17 @@ class deque : protected deque_base<Allocator>
|
|
517
1028
|
private: // Internal typedefs
|
518
1029
|
BOOST_COPYABLE_AND_MOVABLE(deque)
|
519
1030
|
typedef typename Base::ptr_alloc_ptr index_pointer;
|
520
|
-
|
521
|
-
{ return Base::s_buffer_size(); }
|
522
|
-
typedef allocator_traits<Allocator> allocator_traits_type;
|
1031
|
+
typedef allocator_traits<ValAllocator> allocator_traits_type;
|
523
1032
|
|
524
1033
|
#endif //#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
525
1034
|
|
1035
|
+
using Base::get_block_ssize;
|
1036
|
+
|
526
1037
|
public:
|
1038
|
+
|
1039
|
+
using Base::get_block_size;
|
1040
|
+
|
1041
|
+
|
527
1042
|
//////////////////////////////////////////////
|
528
1043
|
//
|
529
1044
|
// construct/copy/destroy
|
@@ -535,7 +1050,8 @@ class deque : protected deque_base<Allocator>
|
|
535
1050
|
//! <b>Throws</b>: If allocator_type's default constructor throws.
|
536
1051
|
//!
|
537
1052
|
//! <b>Complexity</b>: Constant.
|
538
|
-
deque()
|
1053
|
+
inline deque()
|
1054
|
+
BOOST_NOEXCEPT_IF(dtl::is_nothrow_default_constructible<ValAllocator>::value)
|
539
1055
|
: Base()
|
540
1056
|
{}
|
541
1057
|
|
@@ -544,7 +1060,7 @@ class deque : protected deque_base<Allocator>
|
|
544
1060
|
//! <b>Throws</b>: Nothing
|
545
1061
|
//!
|
546
1062
|
//! <b>Complexity</b>: Constant.
|
547
|
-
explicit deque(const allocator_type& a) BOOST_NOEXCEPT_OR_NOTHROW
|
1063
|
+
inline explicit deque(const allocator_type& a) BOOST_NOEXCEPT_OR_NOTHROW
|
548
1064
|
: Base(a)
|
549
1065
|
{}
|
550
1066
|
|
@@ -555,10 +1071,10 @@ class deque : protected deque_base<Allocator>
|
|
555
1071
|
//! throws or T's value initialization throws.
|
556
1072
|
//!
|
557
1073
|
//! <b>Complexity</b>: Linear to n.
|
558
|
-
explicit deque(size_type n)
|
1074
|
+
inline explicit deque(size_type n)
|
559
1075
|
: Base(n, allocator_type())
|
560
1076
|
{
|
561
|
-
dtl::insert_value_initialized_n_proxy<
|
1077
|
+
dtl::insert_value_initialized_n_proxy<ValAllocator> proxy;
|
562
1078
|
proxy.uninitialized_copy_n_and_update(this->alloc(), this->begin(), n);
|
563
1079
|
//deque_base will deallocate in case of exception...
|
564
1080
|
}
|
@@ -572,10 +1088,10 @@ class deque : protected deque_base<Allocator>
|
|
572
1088
|
//! <b>Complexity</b>: Linear to n.
|
573
1089
|
//!
|
574
1090
|
//! <b>Note</b>: Non-standard extension
|
575
|
-
deque(size_type n, default_init_t)
|
1091
|
+
inline deque(size_type n, default_init_t)
|
576
1092
|
: Base(n, allocator_type())
|
577
1093
|
{
|
578
|
-
dtl::insert_default_initialized_n_proxy<
|
1094
|
+
dtl::insert_default_initialized_n_proxy<ValAllocator> proxy;
|
579
1095
|
proxy.uninitialized_copy_n_and_update(this->alloc(), this->begin(), n);
|
580
1096
|
//deque_base will deallocate in case of exception...
|
581
1097
|
}
|
@@ -587,10 +1103,10 @@ class deque : protected deque_base<Allocator>
|
|
587
1103
|
//! throws or T's value initialization throws.
|
588
1104
|
//!
|
589
1105
|
//! <b>Complexity</b>: Linear to n.
|
590
|
-
explicit deque(size_type n, const allocator_type &a)
|
1106
|
+
inline explicit deque(size_type n, const allocator_type &a)
|
591
1107
|
: Base(n, a)
|
592
1108
|
{
|
593
|
-
dtl::insert_value_initialized_n_proxy<
|
1109
|
+
dtl::insert_value_initialized_n_proxy<ValAllocator> proxy;
|
594
1110
|
proxy.uninitialized_copy_n_and_update(this->alloc(), this->begin(), n);
|
595
1111
|
//deque_base will deallocate in case of exception...
|
596
1112
|
}
|
@@ -604,10 +1120,10 @@ class deque : protected deque_base<Allocator>
|
|
604
1120
|
//! <b>Complexity</b>: Linear to n.
|
605
1121
|
//!
|
606
1122
|
//! <b>Note</b>: Non-standard extension
|
607
|
-
deque(size_type n, default_init_t, const allocator_type &a)
|
1123
|
+
inline deque(size_type n, default_init_t, const allocator_type &a)
|
608
1124
|
: Base(n, a)
|
609
1125
|
{
|
610
|
-
dtl::insert_default_initialized_n_proxy<
|
1126
|
+
dtl::insert_default_initialized_n_proxy<ValAllocator> proxy;
|
611
1127
|
proxy.uninitialized_copy_n_and_update(this->alloc(), this->begin(), n);
|
612
1128
|
//deque_base will deallocate in case of exception...
|
613
1129
|
}
|
@@ -619,7 +1135,7 @@ class deque : protected deque_base<Allocator>
|
|
619
1135
|
//! throws or T's copy constructor throws.
|
620
1136
|
//!
|
621
1137
|
//! <b>Complexity</b>: Linear to n.
|
622
|
-
deque(size_type n, const value_type& value)
|
1138
|
+
inline deque(size_type n, const value_type& value)
|
623
1139
|
: Base(n, allocator_type())
|
624
1140
|
{ this->priv_fill_initialize(value); }
|
625
1141
|
|
@@ -630,7 +1146,7 @@ class deque : protected deque_base<Allocator>
|
|
630
1146
|
//! throws or T's copy constructor throws.
|
631
1147
|
//!
|
632
1148
|
//! <b>Complexity</b>: Linear to n.
|
633
|
-
deque(size_type n, const value_type& value, const allocator_type& a)
|
1149
|
+
inline deque(size_type n, const value_type& value, const allocator_type& a)
|
634
1150
|
: Base(n, a)
|
635
1151
|
{ this->priv_fill_initialize(value); }
|
636
1152
|
|
@@ -642,7 +1158,7 @@ class deque : protected deque_base<Allocator>
|
|
642
1158
|
//!
|
643
1159
|
//! <b>Complexity</b>: Linear to the range [first, last).
|
644
1160
|
template <class InIt>
|
645
|
-
deque(InIt first, InIt last
|
1161
|
+
inline deque(InIt first, InIt last
|
646
1162
|
#if !defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
647
1163
|
, typename dtl::disable_if_convertible
|
648
1164
|
<InIt, size_type>::type * = 0
|
@@ -661,7 +1177,7 @@ class deque : protected deque_base<Allocator>
|
|
661
1177
|
//!
|
662
1178
|
//! <b>Complexity</b>: Linear to the range [first, last).
|
663
1179
|
template <class InIt>
|
664
|
-
deque(InIt first, InIt last, const allocator_type& a
|
1180
|
+
inline deque(InIt first, InIt last, const allocator_type& a
|
665
1181
|
#if !defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
666
1182
|
, typename dtl::disable_if_convertible
|
667
1183
|
<InIt, size_type>::type * = 0
|
@@ -680,7 +1196,7 @@ class deque : protected deque_base<Allocator>
|
|
680
1196
|
//! throws or T's constructor taking a dereferenced std::initializer_list iterator throws.
|
681
1197
|
//!
|
682
1198
|
//! <b>Complexity</b>: Linear to the range [il.begin(), il.end()).
|
683
|
-
deque(std::initializer_list<value_type> il, const allocator_type& a = allocator_type())
|
1199
|
+
inline deque(std::initializer_list<value_type> il, const allocator_type& a = allocator_type())
|
684
1200
|
: Base(a)
|
685
1201
|
{
|
686
1202
|
this->priv_range_initialize(il.begin(), il.end());
|
@@ -692,7 +1208,7 @@ class deque : protected deque_base<Allocator>
|
|
692
1208
|
//! <b>Postcondition</b>: x == *this.
|
693
1209
|
//!
|
694
1210
|
//! <b>Complexity</b>: Linear to the elements x contains.
|
695
|
-
deque(const deque& x)
|
1211
|
+
inline deque(const deque& x)
|
696
1212
|
: Base(allocator_traits_type::select_on_container_copy_construction(x.alloc()))
|
697
1213
|
{
|
698
1214
|
if(x.size()){
|
@@ -707,7 +1223,7 @@ class deque : protected deque_base<Allocator>
|
|
707
1223
|
//! <b>Throws</b>: If allocator_type's copy constructor throws.
|
708
1224
|
//!
|
709
1225
|
//! <b>Complexity</b>: Constant.
|
710
|
-
deque(BOOST_RV_REF(deque) x) BOOST_NOEXCEPT_OR_NOTHROW
|
1226
|
+
inline deque(BOOST_RV_REF(deque) x) BOOST_NOEXCEPT_OR_NOTHROW
|
711
1227
|
: Base(BOOST_MOVE_BASE(Base, x))
|
712
1228
|
{ this->swap_members(x); }
|
713
1229
|
|
@@ -758,7 +1274,7 @@ class deque : protected deque_base<Allocator>
|
|
758
1274
|
//! <b>Throws</b>: Nothing.
|
759
1275
|
//!
|
760
1276
|
//! <b>Complexity</b>: Linear to the number of elements.
|
761
|
-
~deque() BOOST_NOEXCEPT_OR_NOTHROW
|
1277
|
+
inline ~deque() BOOST_NOEXCEPT_OR_NOTHROW
|
762
1278
|
{
|
763
1279
|
this->priv_destroy_range(this->members_.m_start, this->members_.m_finish);
|
764
1280
|
}
|
@@ -773,7 +1289,7 @@ class deque : protected deque_base<Allocator>
|
|
773
1289
|
//! <b>Complexity</b>: Linear to the number of elements in x.
|
774
1290
|
deque& operator= (BOOST_COPY_ASSIGN_REF(deque) x)
|
775
1291
|
{
|
776
|
-
if (&x != this){
|
1292
|
+
if (BOOST_LIKELY(&x != this)){
|
777
1293
|
allocator_type &this_alloc = this->alloc();
|
778
1294
|
const allocator_type &x_alloc = x.alloc();
|
779
1295
|
dtl::bool_<allocator_traits_type::
|
@@ -801,28 +1317,14 @@ class deque : protected deque_base<Allocator>
|
|
801
1317
|
BOOST_NOEXCEPT_IF(allocator_traits_type::propagate_on_container_move_assignment::value
|
802
1318
|
|| allocator_traits_type::is_always_equal::value)
|
803
1319
|
{
|
804
|
-
|
805
|
-
|
806
|
-
|
807
|
-
|
808
|
-
propagate_on_container_move_assignment::value
|
809
|
-
|
810
|
-
|
811
|
-
|
812
|
-
//going to be equal after this function (either propagated or already equal)
|
813
|
-
if(propagate_alloc || allocators_equal){
|
814
|
-
//Destroy objects but retain memory in case x reuses it in the future
|
815
|
-
this->clear();
|
816
|
-
//Move allocator if needed
|
817
|
-
dtl::move_alloc(this_alloc, x_alloc, flag);
|
818
|
-
dtl::move_alloc(this->ptr_alloc(), x.ptr_alloc(), flag);
|
819
|
-
//Nothrow swap
|
820
|
-
this->swap_members(x);
|
821
|
-
}
|
822
|
-
//Else do a one by one move
|
823
|
-
else{
|
824
|
-
this->assign( boost::make_move_iterator(x.begin())
|
825
|
-
, boost::make_move_iterator(x.end()));
|
1320
|
+
if (BOOST_LIKELY(this != &x)) {
|
1321
|
+
//We know resources can be transferred at comiple time if both allocators are
|
1322
|
+
//always equal or the allocator is going to be propagated
|
1323
|
+
const bool can_steal_resources_alloc
|
1324
|
+
= allocator_traits_type::propagate_on_container_move_assignment::value
|
1325
|
+
|| allocator_traits_type::is_always_equal::value;
|
1326
|
+
dtl::bool_<can_steal_resources_alloc> flag;
|
1327
|
+
this->priv_move_assign(boost::move(x), flag);
|
826
1328
|
}
|
827
1329
|
return *this;
|
828
1330
|
}
|
@@ -836,7 +1338,7 @@ class deque : protected deque_base<Allocator>
|
|
836
1338
|
//! <b>Throws</b>: If memory allocation throws or T's copy constructor throws.
|
837
1339
|
//!
|
838
1340
|
//! <b>Complexity</b>: Linear to the number of elements in il.
|
839
|
-
deque& operator=(std::initializer_list<value_type> il)
|
1341
|
+
inline deque& operator=(std::initializer_list<value_type> il)
|
840
1342
|
{
|
841
1343
|
this->assign(il.begin(), il.end());
|
842
1344
|
return *this;
|
@@ -848,9 +1350,8 @@ class deque : protected deque_base<Allocator>
|
|
848
1350
|
//! <b>Throws</b>: If memory allocation throws or T's copy constructor throws.
|
849
1351
|
//!
|
850
1352
|
//! <b>Complexity</b>: Linear to n.
|
851
|
-
void assign(size_type n, const T& val)
|
1353
|
+
inline void assign(size_type n, const T& val)
|
852
1354
|
{
|
853
|
-
typedef constant_iterator<value_type, difference_type> c_it;
|
854
1355
|
this->assign(c_it(val, n), c_it());
|
855
1356
|
}
|
856
1357
|
|
@@ -893,10 +1394,10 @@ class deque : protected deque_base<Allocator>
|
|
893
1394
|
>::type * = 0
|
894
1395
|
)
|
895
1396
|
{
|
896
|
-
const size_type len = boost::container::
|
1397
|
+
const size_type len = boost::container::iterator_udistance(first, last);
|
897
1398
|
if (len > size()) {
|
898
1399
|
FwdIt mid = first;
|
899
|
-
boost::container::
|
1400
|
+
boost::container::iterator_uadvance(mid, this->size());
|
900
1401
|
boost::container::copy(first, mid, begin());
|
901
1402
|
this->insert(this->cend(), mid, last);
|
902
1403
|
}
|
@@ -913,7 +1414,7 @@ class deque : protected deque_base<Allocator>
|
|
913
1414
|
//! T's constructor from dereferencing std::initializer_list iterator throws.
|
914
1415
|
//!
|
915
1416
|
//! <b>Complexity</b>: Linear to il.size().
|
916
|
-
void assign(std::initializer_list<value_type> il)
|
1417
|
+
inline void assign(std::initializer_list<value_type> il)
|
917
1418
|
{ this->assign(il.begin(), il.end()); }
|
918
1419
|
#endif
|
919
1420
|
|
@@ -922,7 +1423,8 @@ class deque : protected deque_base<Allocator>
|
|
922
1423
|
//! <b>Throws</b>: If allocator's copy constructor throws.
|
923
1424
|
//!
|
924
1425
|
//! <b>Complexity</b>: Constant.
|
925
|
-
|
1426
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1427
|
+
allocator_type get_allocator() const BOOST_NOEXCEPT_OR_NOTHROW
|
926
1428
|
{ return Base::alloc(); }
|
927
1429
|
|
928
1430
|
//! <b>Effects</b>: Returns a reference to the internal allocator.
|
@@ -932,7 +1434,8 @@ class deque : protected deque_base<Allocator>
|
|
932
1434
|
//! <b>Complexity</b>: Constant.
|
933
1435
|
//!
|
934
1436
|
//! <b>Note</b>: Non-standard extension.
|
935
|
-
|
1437
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1438
|
+
const stored_allocator_type &get_stored_allocator() const BOOST_NOEXCEPT_OR_NOTHROW
|
936
1439
|
{ return Base::alloc(); }
|
937
1440
|
|
938
1441
|
//////////////////////////////////////////////
|
@@ -948,7 +1451,8 @@ class deque : protected deque_base<Allocator>
|
|
948
1451
|
//! <b>Complexity</b>: Constant.
|
949
1452
|
//!
|
950
1453
|
//! <b>Note</b>: Non-standard extension.
|
951
|
-
|
1454
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1455
|
+
stored_allocator_type &get_stored_allocator() BOOST_NOEXCEPT_OR_NOTHROW
|
952
1456
|
{ return Base::alloc(); }
|
953
1457
|
|
954
1458
|
//! <b>Effects</b>: Returns an iterator to the first element contained in the deque.
|
@@ -956,7 +1460,8 @@ class deque : protected deque_base<Allocator>
|
|
956
1460
|
//! <b>Throws</b>: Nothing.
|
957
1461
|
//!
|
958
1462
|
//! <b>Complexity</b>: Constant.
|
959
|
-
|
1463
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1464
|
+
iterator begin() BOOST_NOEXCEPT_OR_NOTHROW
|
960
1465
|
{ return this->members_.m_start; }
|
961
1466
|
|
962
1467
|
//! <b>Effects</b>: Returns a const_iterator to the first element contained in the deque.
|
@@ -964,7 +1469,8 @@ class deque : protected deque_base<Allocator>
|
|
964
1469
|
//! <b>Throws</b>: Nothing.
|
965
1470
|
//!
|
966
1471
|
//! <b>Complexity</b>: Constant.
|
967
|
-
|
1472
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1473
|
+
const_iterator begin() const BOOST_NOEXCEPT_OR_NOTHROW
|
968
1474
|
{ return this->members_.m_start; }
|
969
1475
|
|
970
1476
|
//! <b>Effects</b>: Returns an iterator to the end of the deque.
|
@@ -972,7 +1478,8 @@ class deque : protected deque_base<Allocator>
|
|
972
1478
|
//! <b>Throws</b>: Nothing.
|
973
1479
|
//!
|
974
1480
|
//! <b>Complexity</b>: Constant.
|
975
|
-
|
1481
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1482
|
+
iterator end() BOOST_NOEXCEPT_OR_NOTHROW
|
976
1483
|
{ return this->members_.m_finish; }
|
977
1484
|
|
978
1485
|
//! <b>Effects</b>: Returns a const_iterator to the end of the deque.
|
@@ -980,7 +1487,8 @@ class deque : protected deque_base<Allocator>
|
|
980
1487
|
//! <b>Throws</b>: Nothing.
|
981
1488
|
//!
|
982
1489
|
//! <b>Complexity</b>: Constant.
|
983
|
-
|
1490
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1491
|
+
const_iterator end() const BOOST_NOEXCEPT_OR_NOTHROW
|
984
1492
|
{ return this->members_.m_finish; }
|
985
1493
|
|
986
1494
|
//! <b>Effects</b>: Returns a reverse_iterator pointing to the beginning
|
@@ -989,7 +1497,8 @@ class deque : protected deque_base<Allocator>
|
|
989
1497
|
//! <b>Throws</b>: Nothing.
|
990
1498
|
//!
|
991
1499
|
//! <b>Complexity</b>: Constant.
|
992
|
-
|
1500
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1501
|
+
reverse_iterator rbegin() BOOST_NOEXCEPT_OR_NOTHROW
|
993
1502
|
{ return reverse_iterator(this->members_.m_finish); }
|
994
1503
|
|
995
1504
|
//! <b>Effects</b>: Returns a const_reverse_iterator pointing to the beginning
|
@@ -998,7 +1507,8 @@ class deque : protected deque_base<Allocator>
|
|
998
1507
|
//! <b>Throws</b>: Nothing.
|
999
1508
|
//!
|
1000
1509
|
//! <b>Complexity</b>: Constant.
|
1001
|
-
|
1510
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1511
|
+
const_reverse_iterator rbegin() const BOOST_NOEXCEPT_OR_NOTHROW
|
1002
1512
|
{ return const_reverse_iterator(this->members_.m_finish); }
|
1003
1513
|
|
1004
1514
|
//! <b>Effects</b>: Returns a reverse_iterator pointing to the end
|
@@ -1007,7 +1517,8 @@ class deque : protected deque_base<Allocator>
|
|
1007
1517
|
//! <b>Throws</b>: Nothing.
|
1008
1518
|
//!
|
1009
1519
|
//! <b>Complexity</b>: Constant.
|
1010
|
-
|
1520
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1521
|
+
reverse_iterator rend() BOOST_NOEXCEPT_OR_NOTHROW
|
1011
1522
|
{ return reverse_iterator(this->members_.m_start); }
|
1012
1523
|
|
1013
1524
|
//! <b>Effects</b>: Returns a const_reverse_iterator pointing to the end
|
@@ -1016,7 +1527,8 @@ class deque : protected deque_base<Allocator>
|
|
1016
1527
|
//! <b>Throws</b>: Nothing.
|
1017
1528
|
//!
|
1018
1529
|
//! <b>Complexity</b>: Constant.
|
1019
|
-
|
1530
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1531
|
+
const_reverse_iterator rend() const BOOST_NOEXCEPT_OR_NOTHROW
|
1020
1532
|
{ return const_reverse_iterator(this->members_.m_start); }
|
1021
1533
|
|
1022
1534
|
//! <b>Effects</b>: Returns a const_iterator to the first element contained in the deque.
|
@@ -1024,7 +1536,8 @@ class deque : protected deque_base<Allocator>
|
|
1024
1536
|
//! <b>Throws</b>: Nothing.
|
1025
1537
|
//!
|
1026
1538
|
//! <b>Complexity</b>: Constant.
|
1027
|
-
|
1539
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1540
|
+
const_iterator cbegin() const BOOST_NOEXCEPT_OR_NOTHROW
|
1028
1541
|
{ return this->members_.m_start; }
|
1029
1542
|
|
1030
1543
|
//! <b>Effects</b>: Returns a const_iterator to the end of the deque.
|
@@ -1032,7 +1545,8 @@ class deque : protected deque_base<Allocator>
|
|
1032
1545
|
//! <b>Throws</b>: Nothing.
|
1033
1546
|
//!
|
1034
1547
|
//! <b>Complexity</b>: Constant.
|
1035
|
-
|
1548
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1549
|
+
const_iterator cend() const BOOST_NOEXCEPT_OR_NOTHROW
|
1036
1550
|
{ return this->members_.m_finish; }
|
1037
1551
|
|
1038
1552
|
//! <b>Effects</b>: Returns a const_reverse_iterator pointing to the beginning
|
@@ -1041,7 +1555,8 @@ class deque : protected deque_base<Allocator>
|
|
1041
1555
|
//! <b>Throws</b>: Nothing.
|
1042
1556
|
//!
|
1043
1557
|
//! <b>Complexity</b>: Constant.
|
1044
|
-
|
1558
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1559
|
+
const_reverse_iterator crbegin() const BOOST_NOEXCEPT_OR_NOTHROW
|
1045
1560
|
{ return const_reverse_iterator(this->members_.m_finish); }
|
1046
1561
|
|
1047
1562
|
//! <b>Effects</b>: Returns a const_reverse_iterator pointing to the end
|
@@ -1050,7 +1565,8 @@ class deque : protected deque_base<Allocator>
|
|
1050
1565
|
//! <b>Throws</b>: Nothing.
|
1051
1566
|
//!
|
1052
1567
|
//! <b>Complexity</b>: Constant.
|
1053
|
-
|
1568
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1569
|
+
const_reverse_iterator crend() const BOOST_NOEXCEPT_OR_NOTHROW
|
1054
1570
|
{ return const_reverse_iterator(this->members_.m_start); }
|
1055
1571
|
|
1056
1572
|
//////////////////////////////////////////////
|
@@ -1064,7 +1580,8 @@ class deque : protected deque_base<Allocator>
|
|
1064
1580
|
//! <b>Throws</b>: Nothing.
|
1065
1581
|
//!
|
1066
1582
|
//! <b>Complexity</b>: Constant.
|
1067
|
-
|
1583
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1584
|
+
bool empty() const BOOST_NOEXCEPT_OR_NOTHROW
|
1068
1585
|
{ return this->members_.m_finish == this->members_.m_start; }
|
1069
1586
|
|
1070
1587
|
//! <b>Effects</b>: Returns the number of the elements contained in the deque.
|
@@ -1072,15 +1589,17 @@ class deque : protected deque_base<Allocator>
|
|
1072
1589
|
//! <b>Throws</b>: Nothing.
|
1073
1590
|
//!
|
1074
1591
|
//! <b>Complexity</b>: Constant.
|
1075
|
-
|
1076
|
-
|
1592
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1593
|
+
size_type size() const BOOST_NOEXCEPT_OR_NOTHROW
|
1594
|
+
{ return size_type(this->members_.m_finish - this->members_.m_start); }
|
1077
1595
|
|
1078
1596
|
//! <b>Effects</b>: Returns the largest possible size of the deque.
|
1079
1597
|
//!
|
1080
1598
|
//! <b>Throws</b>: Nothing.
|
1081
1599
|
//!
|
1082
1600
|
//! <b>Complexity</b>: Constant.
|
1083
|
-
|
1601
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1602
|
+
size_type max_size() const BOOST_NOEXCEPT_OR_NOTHROW
|
1084
1603
|
{ return allocator_traits_type::max_size(this->alloc()); }
|
1085
1604
|
|
1086
1605
|
//! <b>Effects</b>: Inserts or erases elements at the end such that
|
@@ -1096,7 +1615,7 @@ class deque : protected deque_base<Allocator>
|
|
1096
1615
|
this->priv_erase_last_n(len - new_size);
|
1097
1616
|
else{
|
1098
1617
|
const size_type n = new_size - this->size();
|
1099
|
-
dtl::insert_value_initialized_n_proxy<
|
1618
|
+
dtl::insert_value_initialized_n_proxy<ValAllocator> proxy;
|
1100
1619
|
priv_insert_back_aux_impl(n, proxy);
|
1101
1620
|
}
|
1102
1621
|
}
|
@@ -1116,7 +1635,7 @@ class deque : protected deque_base<Allocator>
|
|
1116
1635
|
this->priv_erase_last_n(len - new_size);
|
1117
1636
|
else{
|
1118
1637
|
const size_type n = new_size - this->size();
|
1119
|
-
dtl::insert_default_initialized_n_proxy<
|
1638
|
+
dtl::insert_default_initialized_n_proxy<ValAllocator> proxy;
|
1120
1639
|
priv_insert_back_aux_impl(n, proxy);
|
1121
1640
|
}
|
1122
1641
|
}
|
@@ -1131,7 +1650,7 @@ class deque : protected deque_base<Allocator>
|
|
1131
1650
|
{
|
1132
1651
|
const size_type len = size();
|
1133
1652
|
if (new_size < len)
|
1134
|
-
this->erase(this->members_.m_start + new_size, this->members_.m_finish);
|
1653
|
+
this->erase(this->members_.m_start + difference_type(new_size), this->members_.m_finish);
|
1135
1654
|
else
|
1136
1655
|
this->insert(this->members_.m_finish, new_size - len, x);
|
1137
1656
|
}
|
@@ -1167,7 +1686,8 @@ class deque : protected deque_base<Allocator>
|
|
1167
1686
|
//! <b>Throws</b>: Nothing.
|
1168
1687
|
//!
|
1169
1688
|
//! <b>Complexity</b>: Constant.
|
1170
|
-
|
1689
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1690
|
+
reference front() BOOST_NOEXCEPT_OR_NOTHROW
|
1171
1691
|
{
|
1172
1692
|
BOOST_ASSERT(!this->empty());
|
1173
1693
|
return *this->members_.m_start;
|
@@ -1181,7 +1701,8 @@ class deque : protected deque_base<Allocator>
|
|
1181
1701
|
//! <b>Throws</b>: Nothing.
|
1182
1702
|
//!
|
1183
1703
|
//! <b>Complexity</b>: Constant.
|
1184
|
-
|
1704
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1705
|
+
const_reference front() const BOOST_NOEXCEPT_OR_NOTHROW
|
1185
1706
|
{
|
1186
1707
|
BOOST_ASSERT(!this->empty());
|
1187
1708
|
return *this->members_.m_start;
|
@@ -1195,7 +1716,8 @@ class deque : protected deque_base<Allocator>
|
|
1195
1716
|
//! <b>Throws</b>: Nothing.
|
1196
1717
|
//!
|
1197
1718
|
//! <b>Complexity</b>: Constant.
|
1198
|
-
|
1719
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1720
|
+
reference back() BOOST_NOEXCEPT_OR_NOTHROW
|
1199
1721
|
{
|
1200
1722
|
BOOST_ASSERT(!this->empty());
|
1201
1723
|
return *(end()-1);
|
@@ -1209,7 +1731,8 @@ class deque : protected deque_base<Allocator>
|
|
1209
1731
|
//! <b>Throws</b>: Nothing.
|
1210
1732
|
//!
|
1211
1733
|
//! <b>Complexity</b>: Constant.
|
1212
|
-
|
1734
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1735
|
+
const_reference back() const BOOST_NOEXCEPT_OR_NOTHROW
|
1213
1736
|
{
|
1214
1737
|
BOOST_ASSERT(!this->empty());
|
1215
1738
|
return *(cend()-1);
|
@@ -1223,7 +1746,8 @@ class deque : protected deque_base<Allocator>
|
|
1223
1746
|
//! <b>Throws</b>: Nothing.
|
1224
1747
|
//!
|
1225
1748
|
//! <b>Complexity</b>: Constant.
|
1226
|
-
|
1749
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1750
|
+
reference operator[](size_type n) BOOST_NOEXCEPT_OR_NOTHROW
|
1227
1751
|
{
|
1228
1752
|
BOOST_ASSERT(this->size() > n);
|
1229
1753
|
return this->members_.m_start[difference_type(n)];
|
@@ -1237,7 +1761,8 @@ class deque : protected deque_base<Allocator>
|
|
1237
1761
|
//! <b>Throws</b>: Nothing.
|
1238
1762
|
//!
|
1239
1763
|
//! <b>Complexity</b>: Constant.
|
1240
|
-
|
1764
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1765
|
+
const_reference operator[](size_type n) const BOOST_NOEXCEPT_OR_NOTHROW
|
1241
1766
|
{
|
1242
1767
|
BOOST_ASSERT(this->size() > n);
|
1243
1768
|
return this->members_.m_start[difference_type(n)];
|
@@ -1254,10 +1779,11 @@ class deque : protected deque_base<Allocator>
|
|
1254
1779
|
//! <b>Complexity</b>: Constant.
|
1255
1780
|
//!
|
1256
1781
|
//! <b>Note</b>: Non-standard extension
|
1257
|
-
|
1782
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1783
|
+
iterator nth(size_type n) BOOST_NOEXCEPT_OR_NOTHROW
|
1258
1784
|
{
|
1259
1785
|
BOOST_ASSERT(this->size() >= n);
|
1260
|
-
return iterator(this->begin()+n);
|
1786
|
+
return iterator(this->begin()+difference_type(n));
|
1261
1787
|
}
|
1262
1788
|
|
1263
1789
|
//! <b>Requires</b>: size() >= n.
|
@@ -1271,10 +1797,11 @@ class deque : protected deque_base<Allocator>
|
|
1271
1797
|
//! <b>Complexity</b>: Constant.
|
1272
1798
|
//!
|
1273
1799
|
//! <b>Note</b>: Non-standard extension
|
1274
|
-
|
1800
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1801
|
+
const_iterator nth(size_type n) const BOOST_NOEXCEPT_OR_NOTHROW
|
1275
1802
|
{
|
1276
1803
|
BOOST_ASSERT(this->size() >= n);
|
1277
|
-
return const_iterator(this->cbegin()+n);
|
1804
|
+
return const_iterator(this->cbegin()+difference_type(n));
|
1278
1805
|
}
|
1279
1806
|
|
1280
1807
|
//! <b>Requires</b>: begin() <= p <= end().
|
@@ -1287,7 +1814,8 @@ class deque : protected deque_base<Allocator>
|
|
1287
1814
|
//! <b>Complexity</b>: Constant.
|
1288
1815
|
//!
|
1289
1816
|
//! <b>Note</b>: Non-standard extension
|
1290
|
-
|
1817
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1818
|
+
size_type index_of(iterator p) BOOST_NOEXCEPT_OR_NOTHROW
|
1291
1819
|
{
|
1292
1820
|
//Range checked priv_index_of
|
1293
1821
|
return this->priv_index_of(p);
|
@@ -1303,7 +1831,8 @@ class deque : protected deque_base<Allocator>
|
|
1303
1831
|
//! <b>Complexity</b>: Constant.
|
1304
1832
|
//!
|
1305
1833
|
//! <b>Note</b>: Non-standard extension
|
1306
|
-
|
1834
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1835
|
+
size_type index_of(const_iterator p) const BOOST_NOEXCEPT_OR_NOTHROW
|
1307
1836
|
{
|
1308
1837
|
//Range checked priv_index_of
|
1309
1838
|
return this->priv_index_of(p);
|
@@ -1314,10 +1843,11 @@ class deque : protected deque_base<Allocator>
|
|
1314
1843
|
//! <b>Effects</b>: Returns a reference to the nth element
|
1315
1844
|
//! from the beginning of the container.
|
1316
1845
|
//!
|
1317
|
-
//! <b>Throws</b>:
|
1846
|
+
//! <b>Throws</b>: range_error if n >= size()
|
1318
1847
|
//!
|
1319
1848
|
//! <b>Complexity</b>: Constant.
|
1320
|
-
|
1849
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1850
|
+
reference at(size_type n)
|
1321
1851
|
{
|
1322
1852
|
this->priv_throw_if_out_of_range(n);
|
1323
1853
|
return (*this)[n];
|
@@ -1328,10 +1858,11 @@ class deque : protected deque_base<Allocator>
|
|
1328
1858
|
//! <b>Effects</b>: Returns a const reference to the nth element
|
1329
1859
|
//! from the beginning of the container.
|
1330
1860
|
//!
|
1331
|
-
//! <b>Throws</b>:
|
1861
|
+
//! <b>Throws</b>: range_error if n >= size()
|
1332
1862
|
//!
|
1333
1863
|
//! <b>Complexity</b>: Constant.
|
1334
|
-
|
1864
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
1865
|
+
const_reference at(size_type n) const
|
1335
1866
|
{
|
1336
1867
|
this->priv_throw_if_out_of_range(n);
|
1337
1868
|
return (*this)[n];
|
@@ -1366,7 +1897,7 @@ class deque : protected deque_base<Allocator>
|
|
1366
1897
|
return r;
|
1367
1898
|
}
|
1368
1899
|
else{
|
1369
|
-
typedef dtl::insert_nonmovable_emplace_proxy<
|
1900
|
+
typedef dtl::insert_nonmovable_emplace_proxy<ValAllocator, Args...> type;
|
1370
1901
|
return *this->priv_insert_front_aux_impl(1, type(boost::forward<Args>(args)...));
|
1371
1902
|
}
|
1372
1903
|
}
|
@@ -1392,7 +1923,7 @@ class deque : protected deque_base<Allocator>
|
|
1392
1923
|
return r;
|
1393
1924
|
}
|
1394
1925
|
else{
|
1395
|
-
typedef dtl::insert_nonmovable_emplace_proxy<
|
1926
|
+
typedef dtl::insert_nonmovable_emplace_proxy<ValAllocator, Args...> type;
|
1396
1927
|
return *this->priv_insert_back_aux_impl(1, type(boost::forward<Args>(args)...));
|
1397
1928
|
}
|
1398
1929
|
}
|
@@ -1419,7 +1950,7 @@ class deque : protected deque_base<Allocator>
|
|
1419
1950
|
return (this->end()-1);
|
1420
1951
|
}
|
1421
1952
|
else{
|
1422
|
-
typedef dtl::insert_emplace_proxy<
|
1953
|
+
typedef dtl::insert_emplace_proxy<ValAllocator, Args...> type;
|
1423
1954
|
return this->priv_insert_aux_impl(p, 1, type(boost::forward<Args>(args)...));
|
1424
1955
|
}
|
1425
1956
|
}
|
@@ -1439,7 +1970,7 @@ class deque : protected deque_base<Allocator>
|
|
1439
1970
|
}\
|
1440
1971
|
else{\
|
1441
1972
|
typedef dtl::insert_nonmovable_emplace_proxy##N\
|
1442
|
-
<
|
1973
|
+
<ValAllocator BOOST_MOVE_I##N BOOST_MOVE_TARG##N> type;\
|
1443
1974
|
return *priv_insert_front_aux_impl(1, type(BOOST_MOVE_FWD##N));\
|
1444
1975
|
}\
|
1445
1976
|
}\
|
@@ -1456,7 +1987,7 @@ class deque : protected deque_base<Allocator>
|
|
1456
1987
|
}\
|
1457
1988
|
else{\
|
1458
1989
|
typedef dtl::insert_nonmovable_emplace_proxy##N\
|
1459
|
-
<
|
1990
|
+
<ValAllocator BOOST_MOVE_I##N BOOST_MOVE_TARG##N> type;\
|
1460
1991
|
return *priv_insert_back_aux_impl(1, type(BOOST_MOVE_FWD##N));\
|
1461
1992
|
}\
|
1462
1993
|
}\
|
@@ -1475,7 +2006,7 @@ class deque : protected deque_base<Allocator>
|
|
1475
2006
|
}\
|
1476
2007
|
else{\
|
1477
2008
|
typedef dtl::insert_emplace_proxy_arg##N\
|
1478
|
-
<
|
2009
|
+
<ValAllocator BOOST_MOVE_I##N BOOST_MOVE_TARG##N> type;\
|
1479
2010
|
return this->priv_insert_aux_impl(p, 1, type(BOOST_MOVE_FWD##N));\
|
1480
2011
|
}\
|
1481
2012
|
}
|
@@ -1563,10 +2094,9 @@ class deque : protected deque_base<Allocator>
|
|
1563
2094
|
//! <b>Throws</b>: If memory allocation throws or T's copy constructor throws.
|
1564
2095
|
//!
|
1565
2096
|
//! <b>Complexity</b>: Linear to n.
|
1566
|
-
iterator insert(const_iterator pos, size_type n, const value_type& x)
|
2097
|
+
inline iterator insert(const_iterator pos, size_type n, const value_type& x)
|
1567
2098
|
{
|
1568
2099
|
//Range check of p is done by insert()
|
1569
|
-
typedef constant_iterator<value_type, difference_type> c_it;
|
1570
2100
|
return this->insert(pos, c_it(x, n), c_it());
|
1571
2101
|
}
|
1572
2102
|
|
@@ -1598,7 +2128,7 @@ class deque : protected deque_base<Allocator>
|
|
1598
2128
|
it = this->emplace(it, *first);
|
1599
2129
|
++it;
|
1600
2130
|
}
|
1601
|
-
it -= n;
|
2131
|
+
it -= difference_type(n);
|
1602
2132
|
return it;
|
1603
2133
|
}
|
1604
2134
|
|
@@ -1613,7 +2143,7 @@ class deque : protected deque_base<Allocator>
|
|
1613
2143
|
//! dereferenced std::initializer_list throws or T's copy constructor throws.
|
1614
2144
|
//!
|
1615
2145
|
//! <b>Complexity</b>: Linear to distance [il.begin(), il.end()).
|
1616
|
-
iterator insert(const_iterator pos, std::initializer_list<value_type> il)
|
2146
|
+
inline iterator insert(const_iterator pos, std::initializer_list<value_type> il)
|
1617
2147
|
{
|
1618
2148
|
//Range check os pos is done in insert()
|
1619
2149
|
return insert(pos, il.begin(), il.end());
|
@@ -1622,7 +2152,7 @@ class deque : protected deque_base<Allocator>
|
|
1622
2152
|
|
1623
2153
|
#if !defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
1624
2154
|
template <class FwdIt>
|
1625
|
-
iterator insert(const_iterator p, FwdIt first, FwdIt last
|
2155
|
+
inline iterator insert(const_iterator p, FwdIt first, FwdIt last
|
1626
2156
|
#if !defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
1627
2157
|
, typename dtl::disable_if_or
|
1628
2158
|
< void
|
@@ -1633,8 +2163,8 @@ class deque : protected deque_base<Allocator>
|
|
1633
2163
|
)
|
1634
2164
|
{
|
1635
2165
|
BOOST_ASSERT(this->priv_in_range_or_end(p));
|
1636
|
-
dtl::insert_range_proxy<
|
1637
|
-
return priv_insert_aux_impl(p, boost::container::
|
2166
|
+
dtl::insert_range_proxy<ValAllocator, FwdIt> proxy(first);
|
2167
|
+
return priv_insert_aux_impl(p, boost::container::iterator_udistance(first, last), proxy);
|
1638
2168
|
}
|
1639
2169
|
#endif
|
1640
2170
|
|
@@ -1646,7 +2176,7 @@ class deque : protected deque_base<Allocator>
|
|
1646
2176
|
void pop_front() BOOST_NOEXCEPT_OR_NOTHROW
|
1647
2177
|
{
|
1648
2178
|
BOOST_ASSERT(!this->empty());
|
1649
|
-
if (this->members_.m_start.m_cur != this->members_.m_start.
|
2179
|
+
if (this->members_.m_start.m_cur != this->members_.m_start.get_last() - 1) {
|
1650
2180
|
allocator_traits_type::destroy
|
1651
2181
|
( this->alloc()
|
1652
2182
|
, boost::movelib::to_raw_pointer(this->members_.m_start.m_cur)
|
@@ -1665,7 +2195,7 @@ class deque : protected deque_base<Allocator>
|
|
1665
2195
|
void pop_back() BOOST_NOEXCEPT_OR_NOTHROW
|
1666
2196
|
{
|
1667
2197
|
BOOST_ASSERT(!this->empty());
|
1668
|
-
if (this->members_.m_finish.m_cur != this->members_.m_finish.
|
2198
|
+
if (this->members_.m_finish.m_cur != this->members_.m_finish.get_first()) {
|
1669
2199
|
--this->members_.m_finish.m_cur;
|
1670
2200
|
allocator_traits_type::destroy
|
1671
2201
|
( this->alloc()
|
@@ -1689,7 +2219,7 @@ class deque : protected deque_base<Allocator>
|
|
1689
2219
|
BOOST_ASSERT(this->priv_in_range(pos));
|
1690
2220
|
iterator next = pos.unconst();
|
1691
2221
|
++next;
|
1692
|
-
size_type index = pos - this->members_.m_start;
|
2222
|
+
size_type index = size_type(pos - this->members_.m_start);
|
1693
2223
|
if (index < (this->size()/2)) {
|
1694
2224
|
boost::container::move_backward(this->begin(), pos.unconst(), next);
|
1695
2225
|
pop_front();
|
@@ -1698,7 +2228,7 @@ class deque : protected deque_base<Allocator>
|
|
1698
2228
|
boost::container::move(next, this->end(), pos.unconst());
|
1699
2229
|
pop_back();
|
1700
2230
|
}
|
1701
|
-
return this->members_.m_start + index;
|
2231
|
+
return this->members_.m_start + difference_type(index);
|
1702
2232
|
}
|
1703
2233
|
|
1704
2234
|
//! <b>Effects</b>: Erases the elements pointed by [first, last).
|
@@ -1722,19 +2252,19 @@ class deque : protected deque_base<Allocator>
|
|
1722
2252
|
const size_type elems_before = static_cast<size_type>(first - this->members_.m_start);
|
1723
2253
|
if (elems_before < (this->size() - n) - elems_before) {
|
1724
2254
|
boost::container::move_backward(begin(), first.unconst(), last.unconst());
|
1725
|
-
iterator new_start = this->members_.m_start + n;
|
2255
|
+
iterator new_start = this->members_.m_start + difference_type(n);
|
1726
2256
|
this->priv_destroy_range(this->members_.m_start, new_start);
|
1727
2257
|
this->priv_destroy_nodes(this->members_.m_start.m_node, new_start.m_node);
|
1728
2258
|
this->members_.m_start = new_start;
|
1729
2259
|
}
|
1730
2260
|
else {
|
1731
2261
|
boost::container::move(last.unconst(), end(), first.unconst());
|
1732
|
-
iterator new_finish = this->members_.m_finish - n;
|
2262
|
+
iterator new_finish = this->members_.m_finish - difference_type(n);
|
1733
2263
|
this->priv_destroy_range(new_finish, this->members_.m_finish);
|
1734
2264
|
this->priv_destroy_nodes(new_finish.m_node + 1, this->members_.m_finish.m_node + 1);
|
1735
2265
|
this->members_.m_finish = new_finish;
|
1736
2266
|
}
|
1737
|
-
return this->members_.m_start + elems_before;
|
2267
|
+
return this->members_.m_start + difference_type(elems_before);
|
1738
2268
|
}
|
1739
2269
|
}
|
1740
2270
|
|
@@ -1743,7 +2273,7 @@ class deque : protected deque_base<Allocator>
|
|
1743
2273
|
//! <b>Throws</b>: Nothing.
|
1744
2274
|
//!
|
1745
2275
|
//! <b>Complexity</b>: Constant.
|
1746
|
-
void swap(deque &x)
|
2276
|
+
inline void swap(deque &x)
|
1747
2277
|
BOOST_NOEXCEPT_IF(allocator_traits_type::propagate_on_container_swap::value
|
1748
2278
|
|| allocator_traits_type::is_always_equal::value)
|
1749
2279
|
{
|
@@ -1760,70 +2290,104 @@ class deque : protected deque_base<Allocator>
|
|
1760
2290
|
//! <b>Complexity</b>: Linear to the number of elements in the deque.
|
1761
2291
|
void clear() BOOST_NOEXCEPT_OR_NOTHROW
|
1762
2292
|
{
|
1763
|
-
|
1764
|
-
|
1765
|
-
|
1766
|
-
|
1767
|
-
|
1768
|
-
|
2293
|
+
if (this->members_.m_finish != this->members_.m_start) {
|
2294
|
+
|
2295
|
+
for (index_pointer node = this->members_.m_start.m_node + 1;
|
2296
|
+
node < this->members_.m_finish.m_node;
|
2297
|
+
++node) {
|
2298
|
+
this->priv_destroy_range(*node, *node + get_block_ssize());
|
2299
|
+
this->priv_deallocate_node(*node);
|
2300
|
+
}
|
1769
2301
|
|
1770
|
-
|
1771
|
-
|
1772
|
-
|
1773
|
-
|
1774
|
-
|
1775
|
-
|
1776
|
-
|
2302
|
+
if (this->members_.m_start.m_node != this->members_.m_finish.m_node) {
|
2303
|
+
this->priv_destroy_range(this->members_.m_start.m_cur, this->members_.m_start.get_last());
|
2304
|
+
this->priv_destroy_range(this->members_.m_finish.get_first(), this->members_.m_finish.m_cur);
|
2305
|
+
this->priv_deallocate_node(this->members_.m_finish.get_first());
|
2306
|
+
}
|
2307
|
+
else
|
2308
|
+
this->priv_destroy_range(this->members_.m_start.m_cur, this->members_.m_finish.m_cur);
|
1777
2309
|
|
1778
|
-
|
2310
|
+
this->members_.m_finish = this->members_.m_start;
|
2311
|
+
}
|
1779
2312
|
}
|
1780
2313
|
|
1781
2314
|
//! <b>Effects</b>: Returns true if x and y are equal
|
1782
2315
|
//!
|
1783
2316
|
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
1784
|
-
|
2317
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
2318
|
+
friend bool operator==(const deque& x, const deque& y)
|
1785
2319
|
{ return x.size() == y.size() && ::boost::container::algo_equal(x.begin(), x.end(), y.begin()); }
|
1786
2320
|
|
1787
2321
|
//! <b>Effects</b>: Returns true if x and y are unequal
|
1788
2322
|
//!
|
1789
2323
|
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
1790
|
-
|
2324
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
2325
|
+
friend bool operator!=(const deque& x, const deque& y)
|
1791
2326
|
{ return !(x == y); }
|
1792
2327
|
|
1793
2328
|
//! <b>Effects</b>: Returns true if x is less than y
|
1794
2329
|
//!
|
1795
2330
|
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
1796
|
-
|
2331
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
2332
|
+
friend bool operator<(const deque& x, const deque& y)
|
1797
2333
|
{ return ::boost::container::algo_lexicographical_compare(x.begin(), x.end(), y.begin(), y.end()); }
|
1798
2334
|
|
1799
2335
|
//! <b>Effects</b>: Returns true if x is greater than y
|
1800
2336
|
//!
|
1801
2337
|
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
1802
|
-
|
2338
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
2339
|
+
friend bool operator>(const deque& x, const deque& y)
|
1803
2340
|
{ return y < x; }
|
1804
2341
|
|
1805
2342
|
//! <b>Effects</b>: Returns true if x is equal or less than y
|
1806
2343
|
//!
|
1807
2344
|
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
1808
|
-
|
2345
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
2346
|
+
friend bool operator<=(const deque& x, const deque& y)
|
1809
2347
|
{ return !(y < x); }
|
1810
2348
|
|
1811
2349
|
//! <b>Effects</b>: Returns true if x is equal or greater than y
|
1812
2350
|
//!
|
1813
2351
|
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
1814
|
-
|
2352
|
+
BOOST_CONTAINER_ATTRIBUTE_NODISCARD inline
|
2353
|
+
friend bool operator>=(const deque& x, const deque& y)
|
1815
2354
|
{ return !(x < y); }
|
1816
2355
|
|
1817
2356
|
//! <b>Effects</b>: x.swap(y)
|
1818
2357
|
//!
|
1819
2358
|
//! <b>Complexity</b>: Constant.
|
1820
|
-
friend void swap(deque& x, deque& y)
|
2359
|
+
inline friend void swap(deque& x, deque& y)
|
2360
|
+
BOOST_NOEXCEPT_IF(BOOST_NOEXCEPT(x.swap(y)))
|
1821
2361
|
{ x.swap(y); }
|
1822
2362
|
|
1823
2363
|
#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
1824
2364
|
private:
|
1825
2365
|
|
1826
|
-
|
2366
|
+
void priv_move_assign(BOOST_RV_REF(deque) x, dtl::bool_<true> /*steal_resources*/)
|
2367
|
+
{
|
2368
|
+
//Destroy objects but retain memory in case x reuses it in the future
|
2369
|
+
this->clear();
|
2370
|
+
//Move allocator if needed
|
2371
|
+
dtl::bool_<allocator_traits_type::propagate_on_container_move_assignment::value> flag;
|
2372
|
+
dtl::move_alloc(this->alloc(), x.alloc(), flag);
|
2373
|
+
dtl::move_alloc(this->ptr_alloc(), x.ptr_alloc(), flag);
|
2374
|
+
//Nothrow swap
|
2375
|
+
this->swap_members(x);
|
2376
|
+
}
|
2377
|
+
|
2378
|
+
void priv_move_assign(BOOST_RV_REF(deque) x, dtl::bool_<false> /*steal_resources*/)
|
2379
|
+
{
|
2380
|
+
//We can't guarantee a compile-time equal allocator or propagation so fallback to runtime
|
2381
|
+
//Resources can be transferred if both allocators are equal
|
2382
|
+
if (this->alloc() == x.alloc()) {
|
2383
|
+
this->priv_move_assign(boost::move(x), dtl::true_());
|
2384
|
+
}
|
2385
|
+
else {
|
2386
|
+
this->assign(boost::make_move_iterator(x.begin()), boost::make_move_iterator(x.end()));
|
2387
|
+
}
|
2388
|
+
}
|
2389
|
+
|
2390
|
+
inline size_type priv_index_of(const_iterator p) const
|
1827
2391
|
{
|
1828
2392
|
BOOST_ASSERT(this->cbegin() <= p);
|
1829
2393
|
BOOST_ASSERT(p <= this->cend());
|
@@ -1836,7 +2400,7 @@ class deque : protected deque_base<Allocator>
|
|
1836
2400
|
this->clear();
|
1837
2401
|
}
|
1838
2402
|
else {
|
1839
|
-
iterator new_finish = this->members_.m_finish - n;
|
2403
|
+
iterator new_finish = this->members_.m_finish - difference_type(n);
|
1840
2404
|
this->priv_destroy_range(new_finish, this->members_.m_finish);
|
1841
2405
|
this->priv_destroy_nodes(new_finish.m_node + 1, this->members_.m_finish.m_node + 1);
|
1842
2406
|
this->members_.m_finish = new_finish;
|
@@ -1849,12 +2413,12 @@ class deque : protected deque_base<Allocator>
|
|
1849
2413
|
throw_out_of_range("deque::at out of range");
|
1850
2414
|
}
|
1851
2415
|
|
1852
|
-
bool priv_in_range(const_iterator pos) const
|
2416
|
+
inline bool priv_in_range(const_iterator pos) const
|
1853
2417
|
{
|
1854
2418
|
return (this->begin() <= pos) && (pos < this->end());
|
1855
2419
|
}
|
1856
2420
|
|
1857
|
-
bool priv_in_range_or_end(const_iterator pos) const
|
2421
|
+
inline bool priv_in_range_or_end(const_iterator pos) const
|
1858
2422
|
{
|
1859
2423
|
return (this->begin() <= pos) && (pos <= this->end());
|
1860
2424
|
}
|
@@ -1874,7 +2438,7 @@ class deque : protected deque_base<Allocator>
|
|
1874
2438
|
else {
|
1875
2439
|
return priv_insert_aux_impl
|
1876
2440
|
( p, (size_type)1
|
1877
|
-
, dtl::get_insert_value_proxy<iterator,
|
2441
|
+
, dtl::get_insert_value_proxy<iterator, ValAllocator>(::boost::forward<U>(x)));
|
1878
2442
|
}
|
1879
2443
|
}
|
1880
2444
|
|
@@ -1889,7 +2453,7 @@ class deque : protected deque_base<Allocator>
|
|
1889
2453
|
else{
|
1890
2454
|
priv_insert_aux_impl
|
1891
2455
|
( this->cbegin(), (size_type)1
|
1892
|
-
, dtl::get_insert_value_proxy<iterator,
|
2456
|
+
, dtl::get_insert_value_proxy<iterator, ValAllocator>(::boost::forward<U>(x)));
|
1893
2457
|
}
|
1894
2458
|
}
|
1895
2459
|
|
@@ -1904,41 +2468,42 @@ class deque : protected deque_base<Allocator>
|
|
1904
2468
|
else{
|
1905
2469
|
priv_insert_aux_impl
|
1906
2470
|
( this->cend(), (size_type)1
|
1907
|
-
, dtl::get_insert_value_proxy<iterator,
|
2471
|
+
, dtl::get_insert_value_proxy<iterator, ValAllocator>(::boost::forward<U>(x)));
|
1908
2472
|
}
|
1909
2473
|
}
|
1910
2474
|
|
1911
|
-
bool priv_push_back_simple_available() const
|
2475
|
+
inline bool priv_push_back_simple_available() const
|
1912
2476
|
{
|
1913
2477
|
return this->members_.m_map &&
|
1914
|
-
(this->members_.m_finish.m_cur != (this->members_.m_finish.
|
2478
|
+
(this->members_.m_finish.m_cur != (this->members_.m_finish.get_last() - 1));
|
1915
2479
|
}
|
1916
2480
|
|
1917
|
-
T *priv_push_back_simple_pos() const
|
2481
|
+
inline T *priv_push_back_simple_pos() const
|
1918
2482
|
{
|
1919
2483
|
return boost::movelib::to_raw_pointer(this->members_.m_finish.m_cur);
|
1920
2484
|
}
|
1921
2485
|
|
1922
|
-
void priv_push_back_simple_commit()
|
2486
|
+
inline void priv_push_back_simple_commit()
|
1923
2487
|
{
|
1924
2488
|
++this->members_.m_finish.m_cur;
|
1925
2489
|
}
|
1926
2490
|
|
1927
|
-
bool priv_push_front_simple_available() const
|
2491
|
+
inline bool priv_push_front_simple_available() const
|
1928
2492
|
{
|
1929
2493
|
return this->members_.m_map &&
|
1930
|
-
(this->members_.m_start.m_cur != this->members_.m_start.
|
2494
|
+
(this->members_.m_start.m_cur != this->members_.m_start.get_first());
|
1931
2495
|
}
|
1932
2496
|
|
1933
|
-
T *priv_push_front_simple_pos() const
|
2497
|
+
inline T *priv_push_front_simple_pos() const
|
1934
2498
|
{ return boost::movelib::to_raw_pointer(this->members_.m_start.m_cur) - 1; }
|
1935
2499
|
|
1936
|
-
void priv_push_front_simple_commit()
|
2500
|
+
inline void priv_push_front_simple_commit()
|
1937
2501
|
{ --this->members_.m_start.m_cur; }
|
1938
2502
|
|
1939
2503
|
void priv_destroy_range(iterator p, iterator p2)
|
1940
2504
|
{
|
1941
|
-
|
2505
|
+
(void)p; (void)p2;
|
2506
|
+
BOOST_IF_CONSTEXPR(!Base::traits_t::trivial_dctr){
|
1942
2507
|
for(;p != p2; ++p){
|
1943
2508
|
allocator_traits_type::destroy(this->alloc(), boost::movelib::iterator_to_raw_pointer(p));
|
1944
2509
|
}
|
@@ -1947,7 +2512,8 @@ class deque : protected deque_base<Allocator>
|
|
1947
2512
|
|
1948
2513
|
void priv_destroy_range(pointer p, pointer p2)
|
1949
2514
|
{
|
1950
|
-
|
2515
|
+
(void)p; (void)p2;
|
2516
|
+
BOOST_IF_CONSTEXPR(!Base::traits_t::trivial_dctr){
|
1951
2517
|
for(;p != p2; ++p){
|
1952
2518
|
allocator_traits_type::destroy(this->alloc(), boost::movelib::iterator_to_raw_pointer(p));
|
1953
2519
|
}
|
@@ -1955,82 +2521,115 @@ class deque : protected deque_base<Allocator>
|
|
1955
2521
|
}
|
1956
2522
|
|
1957
2523
|
template<class InsertProxy>
|
1958
|
-
iterator
|
2524
|
+
iterator priv_insert_middle_aux_impl(const_iterator p, const size_type elemsbefore, const size_type length, const size_type n, InsertProxy proxy)
|
1959
2525
|
{
|
1960
|
-
|
1961
|
-
const size_type pos_n = p - this->cbegin();
|
1962
|
-
if(!this->members_.m_map){
|
2526
|
+
if (!this->members_.m_map) {
|
1963
2527
|
this->priv_initialize_map(0);
|
1964
|
-
|
2528
|
+
p = this->cbegin();
|
1965
2529
|
}
|
1966
2530
|
|
1967
|
-
|
1968
|
-
const size_type
|
2531
|
+
iterator pos(p.unconst());
|
2532
|
+
const size_type pos_n = size_type(p - this->cbegin());
|
2533
|
+
|
1969
2534
|
if (elemsbefore < length / 2) {
|
1970
2535
|
const iterator new_start = this->priv_reserve_elements_at_front(n);
|
1971
2536
|
const iterator old_start = this->members_.m_start;
|
1972
|
-
|
1973
|
-
|
1974
|
-
this->members_.m_start
|
1975
|
-
|
1976
|
-
else{
|
1977
|
-
pos = this->members_.m_start + elemsbefore;
|
1978
|
-
if (elemsbefore >= n) {
|
1979
|
-
const iterator start_n = this->members_.m_start + n;
|
2537
|
+
pos = this->members_.m_start + difference_type(elemsbefore);
|
2538
|
+
if (elemsbefore >= n) {
|
2539
|
+
const iterator start_n = this->members_.m_start + difference_type(n);
|
2540
|
+
BOOST_CONTAINER_TRY {
|
1980
2541
|
::boost::container::uninitialized_move_alloc
|
1981
2542
|
(this->alloc(), this->members_.m_start, start_n, new_start);
|
1982
|
-
this->members_.m_start = new_start;
|
1983
|
-
boost::container::move(start_n, pos, old_start);
|
1984
|
-
proxy.copy_n_and_update(this->alloc(), pos - n, n);
|
1985
2543
|
}
|
1986
|
-
|
1987
|
-
|
1988
|
-
|
2544
|
+
BOOST_CONTAINER_CATCH(...) {
|
2545
|
+
this->priv_destroy_nodes(new_start.m_node, this->members_.m_start.m_node);
|
2546
|
+
BOOST_CONTAINER_RETHROW
|
2547
|
+
}
|
2548
|
+
BOOST_CONTAINER_CATCH_END
|
2549
|
+
this->members_.m_start = new_start;
|
2550
|
+
boost::container::move(start_n, pos, old_start);
|
2551
|
+
proxy.copy_n_and_update(this->alloc(), pos - difference_type(n), n);
|
2552
|
+
}
|
2553
|
+
else {
|
2554
|
+
const size_type mid_count = n - elemsbefore;
|
2555
|
+
const iterator mid_start = old_start - difference_type(mid_count);
|
2556
|
+
BOOST_CONTAINER_TRY {
|
1989
2557
|
proxy.uninitialized_copy_n_and_update(this->alloc(), mid_start, mid_count);
|
1990
2558
|
this->members_.m_start = mid_start;
|
1991
|
-
::boost::container::uninitialized_move_alloc
|
1992
|
-
|
1993
|
-
|
1994
|
-
|
2559
|
+
::boost::container::uninitialized_move_alloc(this->alloc(), old_start, pos, new_start);
|
2560
|
+
}
|
2561
|
+
BOOST_CONTAINER_CATCH(...) {
|
2562
|
+
this->priv_destroy_nodes(new_start.m_node, this->members_.m_start.m_node);
|
2563
|
+
BOOST_CONTAINER_RETHROW
|
1995
2564
|
}
|
2565
|
+
BOOST_CONTAINER_CATCH_END
|
2566
|
+
this->members_.m_start = new_start;
|
2567
|
+
proxy.copy_n_and_update(this->alloc(), old_start, elemsbefore);
|
1996
2568
|
}
|
1997
2569
|
}
|
1998
2570
|
else {
|
1999
2571
|
const iterator new_finish = this->priv_reserve_elements_at_back(n);
|
2000
2572
|
const iterator old_finish = this->members_.m_finish;
|
2001
2573
|
const size_type elemsafter = length - elemsbefore;
|
2002
|
-
|
2003
|
-
|
2574
|
+
|
2575
|
+
pos = old_finish - difference_type(elemsafter);
|
2576
|
+
if (elemsafter >= n) {
|
2577
|
+
iterator finish_n = old_finish - difference_type(n);
|
2578
|
+
BOOST_CONTAINER_TRY {
|
2579
|
+
::boost::container::uninitialized_move_alloc(this->alloc(), finish_n, old_finish, old_finish);
|
2580
|
+
}
|
2581
|
+
BOOST_CONTAINER_CATCH(...) {
|
2582
|
+
this->priv_destroy_nodes(this->members_.m_finish.m_node + 1, new_finish.m_node + 1);
|
2583
|
+
BOOST_CONTAINER_RETHROW
|
2584
|
+
}
|
2585
|
+
BOOST_CONTAINER_CATCH_END
|
2586
|
+
|
2004
2587
|
this->members_.m_finish = new_finish;
|
2588
|
+
boost::container::move_backward(pos, finish_n, old_finish);
|
2589
|
+
proxy.copy_n_and_update(this->alloc(), pos, n);
|
2005
2590
|
}
|
2006
|
-
else{
|
2007
|
-
|
2008
|
-
|
2009
|
-
iterator finish_n = old_finish - difference_type(n);
|
2010
|
-
::boost::container::uninitialized_move_alloc
|
2011
|
-
(this->alloc(), finish_n, old_finish, old_finish);
|
2012
|
-
this->members_.m_finish = new_finish;
|
2013
|
-
boost::container::move_backward(pos, finish_n, old_finish);
|
2014
|
-
proxy.copy_n_and_update(this->alloc(), pos, n);
|
2015
|
-
}
|
2016
|
-
else {
|
2017
|
-
const size_type raw_gap = n - elemsafter;
|
2591
|
+
else {
|
2592
|
+
const size_type raw_gap = n - elemsafter;
|
2593
|
+
BOOST_CONTAINER_TRY{
|
2018
2594
|
::boost::container::uninitialized_move_alloc
|
2019
|
-
(this->alloc(), pos, old_finish, old_finish + raw_gap);
|
2020
|
-
|
2595
|
+
(this->alloc(), pos, old_finish, old_finish + difference_type(raw_gap));
|
2596
|
+
BOOST_CONTAINER_TRY{
|
2021
2597
|
proxy.copy_n_and_update(this->alloc(), pos, elemsafter);
|
2022
2598
|
proxy.uninitialized_copy_n_and_update(this->alloc(), old_finish, raw_gap);
|
2023
2599
|
}
|
2024
|
-
|
2025
|
-
this->priv_destroy_range(old_finish, old_finish + elemsafter);
|
2026
|
-
|
2600
|
+
BOOST_CONTAINER_CATCH(...) {
|
2601
|
+
this->priv_destroy_range(old_finish, old_finish + difference_type(elemsafter));
|
2602
|
+
BOOST_CONTAINER_RETHROW
|
2027
2603
|
}
|
2028
|
-
|
2029
|
-
|
2604
|
+
BOOST_CONTAINER_CATCH_END
|
2605
|
+
}
|
2606
|
+
BOOST_CONTAINER_CATCH(...) {
|
2607
|
+
this->priv_destroy_nodes(this->members_.m_finish.m_node + 1, new_finish.m_node + 1);
|
2608
|
+
BOOST_CONTAINER_RETHROW
|
2030
2609
|
}
|
2610
|
+
BOOST_CONTAINER_CATCH_END
|
2611
|
+
this->members_.m_finish = new_finish;
|
2031
2612
|
}
|
2032
2613
|
}
|
2033
|
-
return this->begin() + pos_n;
|
2614
|
+
return this->begin() + difference_type(pos_n);
|
2615
|
+
}
|
2616
|
+
|
2617
|
+
template<class InsertProxy>
|
2618
|
+
iterator priv_insert_aux_impl(const_iterator p, size_type n, InsertProxy proxy)
|
2619
|
+
{
|
2620
|
+
iterator pos(p.unconst());
|
2621
|
+
const size_type elemsbefore = static_cast<size_type>(pos - this->members_.m_start);
|
2622
|
+
const size_type length = this->size();
|
2623
|
+
|
2624
|
+
if (!elemsbefore) {
|
2625
|
+
return this->priv_insert_front_aux_impl(n, proxy);
|
2626
|
+
}
|
2627
|
+
else if (elemsbefore == length) {
|
2628
|
+
return this->priv_insert_back_aux_impl(n, proxy);
|
2629
|
+
}
|
2630
|
+
else {
|
2631
|
+
return this->priv_insert_middle_aux_impl(p, elemsbefore, length, n, proxy);
|
2632
|
+
}
|
2034
2633
|
}
|
2035
2634
|
|
2036
2635
|
template <class InsertProxy>
|
@@ -2041,10 +2640,16 @@ class deque : protected deque_base<Allocator>
|
|
2041
2640
|
}
|
2042
2641
|
|
2043
2642
|
iterator new_finish = this->priv_reserve_elements_at_back(n);
|
2044
|
-
|
2045
|
-
|
2643
|
+
BOOST_CONTAINER_TRY{
|
2644
|
+
proxy.uninitialized_copy_n_and_update(this->alloc(), this->members_.m_finish, n);
|
2645
|
+
}
|
2646
|
+
BOOST_CONTAINER_CATCH(...) {
|
2647
|
+
this->priv_destroy_nodes(this->members_.m_finish.m_node + 1, new_finish.m_node + 1);
|
2648
|
+
BOOST_CONTAINER_RETHROW
|
2649
|
+
}
|
2650
|
+
BOOST_CONTAINER_CATCH_END
|
2046
2651
|
this->members_.m_finish = new_finish;
|
2047
|
-
return iterator(this->members_.m_finish - n);
|
2652
|
+
return iterator(this->members_.m_finish - difference_type(n));
|
2048
2653
|
}
|
2049
2654
|
|
2050
2655
|
template <class InsertProxy>
|
@@ -2055,14 +2660,21 @@ class deque : protected deque_base<Allocator>
|
|
2055
2660
|
}
|
2056
2661
|
|
2057
2662
|
iterator new_start = this->priv_reserve_elements_at_front(n);
|
2058
|
-
|
2663
|
+
BOOST_CONTAINER_TRY{
|
2664
|
+
proxy.uninitialized_copy_n_and_update(this->alloc(), new_start, n);
|
2665
|
+
}
|
2666
|
+
BOOST_CONTAINER_CATCH(...) {
|
2667
|
+
this->priv_destroy_nodes(new_start.m_node, this->members_.m_start.m_node);
|
2668
|
+
BOOST_CONTAINER_RETHROW
|
2669
|
+
}
|
2670
|
+
BOOST_CONTAINER_CATCH_END
|
2671
|
+
|
2059
2672
|
this->members_.m_start = new_start;
|
2060
2673
|
return new_start;
|
2061
2674
|
}
|
2062
2675
|
|
2063
|
-
iterator priv_fill_insert(const_iterator pos, size_type n, const value_type& x)
|
2676
|
+
inline iterator priv_fill_insert(const_iterator pos, size_type n, const value_type& x)
|
2064
2677
|
{
|
2065
|
-
typedef constant_iterator<value_type, difference_type> c_it;
|
2066
2678
|
return this->insert(pos, c_it(x, n), c_it());
|
2067
2679
|
}
|
2068
2680
|
|
@@ -2071,75 +2683,75 @@ class deque : protected deque_base<Allocator>
|
|
2071
2683
|
void priv_fill_initialize(const value_type& value)
|
2072
2684
|
{
|
2073
2685
|
index_pointer cur = this->members_.m_start.m_node;
|
2074
|
-
|
2686
|
+
BOOST_CONTAINER_TRY {
|
2075
2687
|
for ( ; cur < this->members_.m_finish.m_node; ++cur){
|
2076
2688
|
boost::container::uninitialized_fill_alloc
|
2077
|
-
(this->alloc(), *cur, *cur +
|
2689
|
+
(this->alloc(), *cur, *cur + get_block_ssize(), value);
|
2078
2690
|
}
|
2079
2691
|
boost::container::uninitialized_fill_alloc
|
2080
|
-
(this->alloc(), this->members_.m_finish.
|
2692
|
+
(this->alloc(), this->members_.m_finish.get_first(), this->members_.m_finish.m_cur, value);
|
2081
2693
|
}
|
2082
|
-
|
2083
|
-
this->priv_destroy_range(this->members_.m_start, iterator(*cur, cur));
|
2084
|
-
|
2694
|
+
BOOST_CONTAINER_CATCH(...){
|
2695
|
+
this->priv_destroy_range(this->members_.m_start, iterator(*cur, cur, get_block_size()));
|
2696
|
+
BOOST_CONTAINER_RETHROW
|
2085
2697
|
}
|
2086
|
-
|
2698
|
+
BOOST_CONTAINER_CATCH_END
|
2087
2699
|
}
|
2088
2700
|
|
2089
2701
|
template <class InIt>
|
2090
2702
|
void priv_range_initialize(InIt first, InIt last, typename iterator_enable_if_tag<InIt, std::input_iterator_tag>::type* =0)
|
2091
2703
|
{
|
2092
2704
|
this->priv_initialize_map(0);
|
2093
|
-
|
2705
|
+
BOOST_CONTAINER_TRY {
|
2094
2706
|
for ( ; first != last; ++first)
|
2095
2707
|
this->emplace_back(*first);
|
2096
2708
|
}
|
2097
|
-
|
2709
|
+
BOOST_CONTAINER_CATCH(...){
|
2098
2710
|
this->clear();
|
2099
|
-
|
2711
|
+
BOOST_CONTAINER_RETHROW
|
2100
2712
|
}
|
2101
|
-
|
2713
|
+
BOOST_CONTAINER_CATCH_END
|
2102
2714
|
}
|
2103
2715
|
|
2104
2716
|
template <class FwdIt>
|
2105
2717
|
void priv_range_initialize(FwdIt first, FwdIt last, typename iterator_disable_if_tag<FwdIt, std::input_iterator_tag>::type* =0)
|
2106
2718
|
{
|
2107
2719
|
size_type n = 0;
|
2108
|
-
n = boost::container::
|
2720
|
+
n = boost::container::iterator_udistance(first, last);
|
2109
2721
|
this->priv_initialize_map(n);
|
2110
2722
|
|
2111
2723
|
index_pointer cur_node = this->members_.m_start.m_node;
|
2112
|
-
|
2724
|
+
BOOST_CONTAINER_TRY {
|
2113
2725
|
for (; cur_node < this->members_.m_finish.m_node; ++cur_node) {
|
2114
2726
|
FwdIt mid = first;
|
2115
|
-
boost::container::
|
2727
|
+
boost::container::iterator_uadvance(mid, get_block_size());
|
2116
2728
|
::boost::container::uninitialized_copy_alloc(this->alloc(), first, mid, *cur_node);
|
2117
2729
|
first = mid;
|
2118
2730
|
}
|
2119
|
-
::boost::container::uninitialized_copy_alloc(this->alloc(), first, last, this->members_.m_finish.
|
2731
|
+
::boost::container::uninitialized_copy_alloc(this->alloc(), first, last, this->members_.m_finish.get_first());
|
2120
2732
|
}
|
2121
|
-
|
2122
|
-
this->priv_destroy_range(this->members_.m_start, iterator(*cur_node, cur_node));
|
2123
|
-
|
2733
|
+
BOOST_CONTAINER_CATCH(...){
|
2734
|
+
this->priv_destroy_range(this->members_.m_start, iterator(*cur_node, cur_node, get_block_size()));
|
2735
|
+
BOOST_CONTAINER_RETHROW
|
2124
2736
|
}
|
2125
|
-
|
2737
|
+
BOOST_CONTAINER_CATCH_END
|
2126
2738
|
}
|
2127
2739
|
|
2128
|
-
// Called only if this->members_.m_finish.m_cur == this->members_.m_finish.
|
2740
|
+
// Called only if this->members_.m_finish.m_cur == this->members_.m_finish.get_first().
|
2129
2741
|
void priv_pop_back_aux() BOOST_NOEXCEPT_OR_NOTHROW
|
2130
2742
|
{
|
2131
|
-
this->priv_deallocate_node(this->members_.m_finish.
|
2132
|
-
this->members_.m_finish.priv_set_node(this->members_.m_finish.m_node - 1);
|
2133
|
-
this->members_.m_finish.m_cur = this->members_.m_finish.
|
2743
|
+
this->priv_deallocate_node(this->members_.m_finish.get_first());
|
2744
|
+
this->members_.m_finish.priv_set_node(this->members_.m_finish.m_node - 1, get_block_size());
|
2745
|
+
this->members_.m_finish.m_cur = this->members_.m_finish.get_last() - 1;
|
2134
2746
|
allocator_traits_type::destroy
|
2135
2747
|
( this->alloc()
|
2136
2748
|
, boost::movelib::to_raw_pointer(this->members_.m_finish.m_cur)
|
2137
2749
|
);
|
2138
2750
|
}
|
2139
2751
|
|
2140
|
-
// Called only if this->members_.m_start.m_cur == this->members_.m_start.
|
2752
|
+
// Called only if this->members_.m_start.m_cur == this->members_.m_start.get_last() - 1. Note that
|
2141
2753
|
// if the deque has at least one element (a precondition for this member
|
2142
|
-
// function), and if this->members_.m_start.m_cur == this->members_.m_start.
|
2754
|
+
// function), and if this->members_.m_start.m_cur == this->members_.m_start.get_last(), then the deque
|
2143
2755
|
// must have at least two nodes.
|
2144
2756
|
void priv_pop_front_aux() BOOST_NOEXCEPT_OR_NOTHROW
|
2145
2757
|
{
|
@@ -2147,84 +2759,83 @@ class deque : protected deque_base<Allocator>
|
|
2147
2759
|
( this->alloc()
|
2148
2760
|
, boost::movelib::to_raw_pointer(this->members_.m_start.m_cur)
|
2149
2761
|
);
|
2150
|
-
this->priv_deallocate_node(this->members_.m_start.
|
2151
|
-
this->members_.m_start.priv_set_node(this->members_.m_start.m_node + 1);
|
2152
|
-
this->members_.m_start.m_cur = this->members_.m_start.
|
2762
|
+
this->priv_deallocate_node(this->members_.m_start.get_first());
|
2763
|
+
this->members_.m_start.priv_set_node(this->members_.m_start.m_node + 1, get_block_size());
|
2764
|
+
this->members_.m_start.m_cur = this->members_.m_start.get_first();
|
2153
2765
|
}
|
2154
2766
|
|
2155
2767
|
iterator priv_reserve_elements_at_front(size_type n)
|
2156
2768
|
{
|
2157
|
-
size_type vacancies = this->members_.m_start.m_cur - this->members_.m_start.
|
2769
|
+
size_type vacancies = size_type(this->members_.m_start.m_cur - this->members_.m_start.get_first());
|
2158
2770
|
if (n > vacancies){
|
2159
2771
|
size_type new_elems = n-vacancies;
|
2160
|
-
size_type new_nodes = (new_elems +
|
2161
|
-
this->s_buffer_size();
|
2772
|
+
size_type new_nodes = (new_elems + get_block_size() - 1u) / get_block_size();
|
2162
2773
|
size_type s = (size_type)(this->members_.m_start.m_node - this->members_.m_map);
|
2163
2774
|
if (new_nodes > s){
|
2164
2775
|
this->priv_reallocate_map(new_nodes, true);
|
2165
2776
|
}
|
2166
2777
|
size_type i = 1;
|
2167
|
-
|
2778
|
+
BOOST_CONTAINER_TRY {
|
2168
2779
|
for (; i <= new_nodes; ++i)
|
2169
|
-
*(this->members_.m_start.m_node - i) = this->priv_allocate_node();
|
2780
|
+
*(this->members_.m_start.m_node - difference_type(i)) = this->priv_allocate_node();
|
2170
2781
|
}
|
2171
|
-
|
2782
|
+
BOOST_CONTAINER_CATCH(...) {
|
2172
2783
|
for (size_type j = 1; j < i; ++j)
|
2173
|
-
this->priv_deallocate_node(*(this->members_.m_start.m_node - j));
|
2174
|
-
|
2784
|
+
this->priv_deallocate_node(*(this->members_.m_start.m_node - difference_type(j)));
|
2785
|
+
BOOST_CONTAINER_RETHROW
|
2175
2786
|
}
|
2176
|
-
|
2787
|
+
BOOST_CONTAINER_CATCH_END
|
2177
2788
|
}
|
2178
2789
|
return this->members_.m_start - difference_type(n);
|
2179
2790
|
}
|
2180
2791
|
|
2181
2792
|
iterator priv_reserve_elements_at_back(size_type n)
|
2182
2793
|
{
|
2183
|
-
size_type vacancies = (this->members_.m_finish.
|
2794
|
+
size_type vacancies = size_type(this->members_.m_finish.get_last() - this->members_.m_finish.m_cur - 1);
|
2184
2795
|
if (n > vacancies){
|
2185
|
-
size_type new_elems = n - vacancies;
|
2186
|
-
size_type new_nodes = (new_elems +
|
2187
|
-
size_type s = (size_type)(this->members_.m_map_size - (this->members_.m_finish.m_node - this->members_.m_map));
|
2796
|
+
size_type new_elems = size_type(n - vacancies);
|
2797
|
+
size_type new_nodes = size_type(new_elems + get_block_size() - 1u)/get_block_size();
|
2798
|
+
size_type s = (size_type)(this->members_.m_map_size - size_type(this->members_.m_finish.m_node - this->members_.m_map));
|
2188
2799
|
if (new_nodes + 1 > s){
|
2189
2800
|
this->priv_reallocate_map(new_nodes, false);
|
2190
2801
|
}
|
2191
2802
|
size_type i = 1;
|
2192
|
-
|
2803
|
+
BOOST_CONTAINER_TRY {
|
2193
2804
|
for (; i <= new_nodes; ++i)
|
2194
|
-
*(this->members_.m_finish.m_node + i) = this->priv_allocate_node();
|
2805
|
+
*(this->members_.m_finish.m_node + difference_type(i)) = this->priv_allocate_node();
|
2195
2806
|
}
|
2196
|
-
|
2807
|
+
BOOST_CONTAINER_CATCH(...) {
|
2197
2808
|
for (size_type j = 1; j < i; ++j)
|
2198
|
-
this->priv_deallocate_node(*(this->members_.m_finish.m_node + j));
|
2199
|
-
|
2809
|
+
this->priv_deallocate_node(*(this->members_.m_finish.m_node + difference_type(j)));
|
2810
|
+
BOOST_CONTAINER_RETHROW
|
2200
2811
|
}
|
2201
|
-
|
2812
|
+
BOOST_CONTAINER_CATCH_END
|
2202
2813
|
}
|
2203
2814
|
return this->members_.m_finish + difference_type(n);
|
2204
2815
|
}
|
2205
2816
|
|
2206
2817
|
void priv_reallocate_map(size_type nodes_to_add, bool add_at_front)
|
2207
2818
|
{
|
2208
|
-
size_type old_num_nodes = this->members_.m_finish.m_node - this->members_.m_start.m_node + 1;
|
2819
|
+
size_type old_num_nodes = size_type(this->members_.m_finish.m_node - this->members_.m_start.m_node + 1);
|
2209
2820
|
size_type new_num_nodes = old_num_nodes + nodes_to_add;
|
2210
2821
|
|
2211
2822
|
index_pointer new_nstart;
|
2212
2823
|
if (this->members_.m_map_size > 2 * new_num_nodes) {
|
2213
|
-
new_nstart = this->members_.m_map + (this->members_.m_map_size - new_num_nodes) / 2
|
2214
|
-
+ (add_at_front ? nodes_to_add :
|
2824
|
+
new_nstart = this->members_.m_map + difference_type(this->members_.m_map_size - new_num_nodes) / 2
|
2825
|
+
+ difference_type(add_at_front ? nodes_to_add : 0u);
|
2215
2826
|
if (new_nstart < this->members_.m_start.m_node)
|
2216
2827
|
boost::container::move(this->members_.m_start.m_node, this->members_.m_finish.m_node + 1, new_nstart);
|
2217
2828
|
else
|
2218
2829
|
boost::container::move_backward
|
2219
|
-
(this->members_.m_start.m_node, this->members_.m_finish.m_node + 1, new_nstart + old_num_nodes);
|
2830
|
+
(this->members_.m_start.m_node, this->members_.m_finish.m_node + 1, new_nstart + difference_type(old_num_nodes));
|
2220
2831
|
}
|
2221
2832
|
else {
|
2222
2833
|
size_type new_map_size =
|
2223
2834
|
this->members_.m_map_size + dtl::max_value(this->members_.m_map_size, nodes_to_add) + 2;
|
2224
2835
|
|
2225
2836
|
index_pointer new_map = this->priv_allocate_map(new_map_size);
|
2226
|
-
new_nstart = new_map + (new_map_size - new_num_nodes) / 2
|
2227
|
-
+ (add_at_front ? nodes_to_add :
|
2837
|
+
new_nstart = new_map + difference_type(new_map_size - new_num_nodes) / 2
|
2838
|
+
+ difference_type(add_at_front ? nodes_to_add : 0u);
|
2228
2839
|
boost::container::move(this->members_.m_start.m_node, this->members_.m_finish.m_node + 1, new_nstart);
|
2229
2840
|
this->priv_deallocate_map(this->members_.m_map, this->members_.m_map_size);
|
2230
2841
|
|
@@ -2232,13 +2843,21 @@ class deque : protected deque_base<Allocator>
|
|
2232
2843
|
this->members_.m_map_size = new_map_size;
|
2233
2844
|
}
|
2234
2845
|
|
2235
|
-
this->members_.m_start.priv_set_node(new_nstart);
|
2236
|
-
this->members_.m_finish.priv_set_node(new_nstart + old_num_nodes -
|
2846
|
+
this->members_.m_start.priv_set_node(new_nstart, get_block_size());
|
2847
|
+
this->members_.m_finish.priv_set_node(new_nstart + difference_type(old_num_nodes - 1u), get_block_size());
|
2237
2848
|
}
|
2238
2849
|
#endif //#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
2239
2850
|
};
|
2240
2851
|
|
2241
|
-
|
2852
|
+
#ifndef BOOST_CONTAINER_NO_CXX17_CTAD
|
2853
|
+
template <typename InputIterator>
|
2854
|
+
deque(InputIterator, InputIterator) -> deque<typename iterator_traits<InputIterator>::value_type>;
|
2855
|
+
template <typename InputIterator, typename Allocator>
|
2856
|
+
deque(InputIterator, InputIterator, Allocator const&) -> deque<typename iterator_traits<InputIterator>::value_type, Allocator>;
|
2857
|
+
#endif
|
2858
|
+
|
2859
|
+
} //namespace container
|
2860
|
+
} //namespace boost
|
2242
2861
|
|
2243
2862
|
#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
2244
2863
|
|
@@ -2246,11 +2865,12 @@ namespace boost {
|
|
2246
2865
|
|
2247
2866
|
//!has_trivial_destructor_after_move<> == true_type
|
2248
2867
|
//!specialization for optimizations
|
2249
|
-
template <class T, class Allocator>
|
2250
|
-
struct has_trivial_destructor_after_move<boost::container::deque<T, Allocator> >
|
2868
|
+
template <class T, class Allocator, class Options>
|
2869
|
+
struct has_trivial_destructor_after_move<boost::container::deque<T, Allocator, Options> >
|
2251
2870
|
{
|
2252
|
-
typedef typename
|
2253
|
-
|
2871
|
+
typedef typename boost::container::deque<T, Allocator, Options>::allocator_type allocator_type;
|
2872
|
+
typedef typename ::boost::container::allocator_traits<allocator_type>::pointer pointer;
|
2873
|
+
BOOST_STATIC_CONSTEXPR bool value = ::boost::has_trivial_destructor_after_move<allocator_type>::value &&
|
2254
2874
|
::boost::has_trivial_destructor_after_move<pointer>::value;
|
2255
2875
|
};
|
2256
2876
|
|