passenger 6.2.0 → 6.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG +69 -15
- data/CONTRIBUTING.md +7 -311
- data/CONTRIBUTORS +1 -0
- data/LICENSE +1 -1
- data/README.md +1 -1
- data/Rakefile +1 -1
- data/bin/passenger +1 -1
- data/bin/passenger-config +1 -1
- data/bin/passenger-install-apache2-module +1 -1
- data/bin/passenger-install-nginx-module +4 -9
- data/bin/passenger-memory-stats +1 -1
- data/bin/passenger-status +1 -1
- data/build/agent.rb +13 -15
- data/build/apache2.rb +13 -16
- data/build/basics.rb +10 -13
- data/build/common_library.rb +5 -9
- data/build/cxx_tests.rb +39 -12
- data/build/integration_tests.rb +5 -2
- data/build/misc.rb +1 -1
- data/build/nginx.rb +1 -1
- data/build/node_tests.rb +1 -1
- data/build/oxt_tests.rb +6 -8
- data/build/packaging.rb +1 -1
- data/build/ruby_extension.rb +1 -1
- data/build/ruby_tests.rb +1 -1
- data/build/schema_printer.rb +13 -15
- data/build/support/cplusplus.rb +61 -69
- data/build/support/cxx_dependency_map.rb +5 -64
- data/build/support/general.rb +1 -1
- data/build/support/vendor/cxx_hinted_parser/LICENSE.md +1 -1
- data/build/support/vendor/cxx_hinted_parser/lib/cxx_hinted_parser/parser.rb +1 -1
- data/build/support/vendor/cxx_hinted_parser/lib/cxx_hinted_parser.rb +1 -1
- data/build/support/vendor/cxxcodebuilder/LICENSE.md +1 -1
- data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/builder.rb +1 -1
- data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/initializer_builder.rb +1 -1
- data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder.rb +1 -1
- data/build/test_basics.rb +1 -1
- data/dev/copy_boost_headers +1 -1
- data/dev/index_cxx_dependencies.rb +5 -1
- data/dev/libev-changes.patch +108 -0
- data/dev/nginx_version_sha256 +1 -1
- data/dev/ruby_server.rb +1 -6
- data/dev/upgrading_libuv.sh +16 -0
- data/doc/BasicArchitectureOverview.md +55 -0
- data/doc/BuildCaching.md +23 -0
- data/doc/BuildSystem.md +49 -0
- data/doc/DebuggingAndStressTesting.md +2 -0
- data/doc/DesignAspects/LimitedGemDependencies.md +1 -0
- data/doc/DevEnvironmentSetup.md +46 -0
- data/doc/DevHandbook.md +28 -0
- data/doc/Packaging.md +1 -1
- data/doc/RunningTests.md +88 -0
- data/doc/{TempFileHandling.md → SecureTempFileHandling.md} +1 -1
- data/doc/{CxxTestingGuide.md → WritingCxxTests.md} +1 -20
- data/src/agent/AgentMain.cpp +1 -1
- data/src/agent/Core/ApiServer.h +1 -1
- data/src/agent/Core/ApplicationPool/AbstractSession.h +1 -1
- data/src/agent/Core/ApplicationPool/BasicGroupInfo.h +1 -1
- data/src/agent/Core/ApplicationPool/BasicProcessInfo.h +1 -1
- data/src/agent/Core/ApplicationPool/Common.h +1 -1
- data/src/agent/Core/ApplicationPool/Context.h +1 -1
- data/src/agent/Core/ApplicationPool/Group/InitializationAndShutdown.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/InternalUtils.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/LifetimeAndBasics.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/Miscellaneous.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/OutOfBandWork.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/ProcessListManagement.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/SessionManagement.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/SpawningAndRestarting.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/StateInspection.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group/Verification.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Group.h +1 -1
- data/src/agent/Core/ApplicationPool/Implementation.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Options.h +1 -1
- data/src/agent/Core/ApplicationPool/Pool/AnalyticsCollection.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Pool/GarbageCollection.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Pool/GeneralUtils.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Pool/GroupUtils.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Pool/InitializationAndShutdown.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Pool/Miscellaneous.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Pool/ProcessUtils.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Pool/StateInspection.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Pool.h +1 -1
- data/src/agent/Core/ApplicationPool/Process.cpp +1 -1
- data/src/agent/Core/ApplicationPool/Process.h +1 -1
- data/src/agent/Core/ApplicationPool/Session.h +1 -1
- data/src/agent/Core/ApplicationPool/Socket.h +1 -1
- data/src/agent/Core/ApplicationPool/TestSession.h +1 -1
- data/src/agent/Core/Config.h +3 -2
- data/src/agent/Core/ConfigChange.cpp +1 -1
- data/src/agent/Core/ConfigChange.h +1 -1
- data/src/agent/Core/Controller/AppResponse.h +1 -1
- data/src/agent/Core/Controller/BufferBody.cpp +1 -1
- data/src/agent/Core/Controller/CheckoutSession.cpp +8 -5
- data/src/agent/Core/Controller/Client.h +1 -1
- data/src/agent/Core/Controller/Config.cpp +1 -1
- data/src/agent/Core/Controller/Config.h +2 -2
- data/src/agent/Core/Controller/ForwardResponse.cpp +2 -2
- data/src/agent/Core/Controller/Hooks.cpp +12 -9
- data/src/agent/Core/Controller/Implementation.cpp +1 -1
- data/src/agent/Core/Controller/InitRequest.cpp +1 -1
- data/src/agent/Core/Controller/InitializationAndShutdown.cpp +1 -1
- data/src/agent/Core/Controller/InternalUtils.cpp +1 -1
- data/src/agent/Core/Controller/Miscellaneous.cpp +1 -1
- data/src/agent/Core/Controller/Request.h +1 -1
- data/src/agent/Core/Controller/SendRequest.cpp +1 -1
- data/src/agent/Core/Controller/StateInspection.cpp +1 -1
- data/src/agent/Core/Controller/TurboCaching.h +1 -1
- data/src/agent/Core/Controller.h +1 -1
- data/src/agent/Core/CoreMain.cpp +1 -1
- data/src/agent/Core/OptionParser.h +1 -1
- data/src/agent/Core/ResponseCache.h +1 -1
- data/src/agent/Core/SecurityUpdateChecker.h +1 -1
- data/src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h +1 -1
- data/src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h.cxxcodebuilder +1 -1
- data/src/agent/Core/SpawningKit/Config.h +1 -1
- data/src/agent/Core/SpawningKit/Context.h +1 -1
- data/src/agent/Core/SpawningKit/DirectSpawner.h +1 -1
- data/src/agent/Core/SpawningKit/DummySpawner.h +1 -1
- data/src/agent/Core/SpawningKit/ErrorRenderer.h +1 -1
- data/src/agent/Core/SpawningKit/Exceptions.h +63 -2
- data/src/agent/Core/SpawningKit/Factory.h +1 -1
- data/src/agent/Core/SpawningKit/Handshake/BackgroundIOCapturer.h +1 -1
- data/src/agent/Core/SpawningKit/Handshake/Perform.h +3 -2
- data/src/agent/Core/SpawningKit/Handshake/Prepare.h +1 -1
- data/src/agent/Core/SpawningKit/Handshake/Session.h +1 -1
- data/src/agent/Core/SpawningKit/Handshake/WorkDir.h +1 -1
- data/src/agent/Core/SpawningKit/Journey.h +1 -1
- data/src/agent/Core/SpawningKit/PipeWatcher.h +1 -1
- data/src/agent/Core/SpawningKit/README.md +3 -3
- data/src/agent/Core/SpawningKit/Result/AutoGeneratedCode.h +1 -1
- data/src/agent/Core/SpawningKit/Result/AutoGeneratedCode.h.cxxcodebuilder +1 -1
- data/src/agent/Core/SpawningKit/Result.h +1 -1
- data/src/agent/Core/SpawningKit/SmartSpawner.h +17 -17
- data/src/agent/Core/SpawningKit/Spawner.h +1 -1
- data/src/agent/Core/SpawningKit/UserSwitchingRules.h +1 -1
- data/src/agent/Core/TelemetryCollector.h +1 -1
- data/src/agent/ExecHelper/ExecHelperMain.cpp +1 -1
- data/src/agent/FileReadHelper/FileReadHelperMain.cpp +1 -1
- data/src/agent/MainFunctions.h +1 -1
- data/src/agent/Shared/ApiAccountUtils.h +4 -3
- data/src/agent/Shared/ApiServerUtils.h +2 -3
- data/src/agent/Shared/ApplicationPoolApiKey.h +1 -1
- data/src/agent/Shared/Fundamentals/AbortHandler.cpp +1 -1
- data/src/agent/Shared/Fundamentals/AbortHandler.h +1 -1
- data/src/agent/Shared/Fundamentals/Initialization.cpp +1 -1
- data/src/agent/Shared/Fundamentals/Initialization.h +1 -1
- data/src/agent/Shared/Fundamentals/Utils.cpp +1 -1
- data/src/agent/Shared/Fundamentals/Utils.h +1 -1
- data/src/agent/SpawnEnvSetupper/SpawnEnvSetupperMain.cpp +1 -1
- data/src/agent/SystemMetrics/SystemMetricsMain.cpp +1 -1
- data/src/agent/TempDirToucher/TempDirToucherMain.cpp +1 -1
- data/src/agent/Watchdog/ApiServer.h +7 -6
- data/src/agent/Watchdog/Config.h +2 -2
- data/src/apache2_module/Bucket.cpp +1 -1
- data/src/apache2_module/Bucket.h +1 -1
- data/src/apache2_module/CBindings.cpp +1 -1
- data/src/apache2_module/Config.cpp +1 -1
- data/src/apache2_module/Config.h +1 -1
- data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp +104 -104
- data/src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp.cxxcodebuilder +2 -2
- data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp +1 -1
- data/src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp.cxxcodebuilder +1 -1
- data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp +1 -1
- data/src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp.cxxcodebuilder +1 -1
- data/src/apache2_module/ConfigGeneral/Common.h +1 -1
- data/src/apache2_module/ConfigGeneral/ManifestGeneration.h +1 -1
- data/src/apache2_module/ConfigGeneral/SetterFuncs.h +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedCreateFunction.cpp.cxxcodebuilder +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp.cxxcodebuilder +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp.cxxcodebuilder +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedMergeFunction.cpp.cxxcodebuilder +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedStruct.h +1 -1
- data/src/apache2_module/DirConfig/AutoGeneratedStruct.h.cxxcodebuilder +1 -1
- data/src/apache2_module/DirectoryMapper.h +1 -1
- data/src/apache2_module/Hooks.cpp +21 -2
- data/src/apache2_module/Hooks.h +1 -1
- data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp +1 -1
- data/src/apache2_module/ServerConfig/AutoGeneratedManifestGeneration.cpp.cxxcodebuilder +1 -1
- data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h +1 -1
- data/src/apache2_module/ServerConfig/AutoGeneratedStruct.h.cxxcodebuilder +1 -1
- data/src/apache2_module/Utils.h +15 -1
- data/src/apache2_module/mod_passenger.c +1 -1
- data/src/cxx_supportlib/Algorithms/Hasher.cpp +1 -1
- data/src/cxx_supportlib/Algorithms/Hasher.h +1 -1
- data/src/cxx_supportlib/Algorithms/MovingAverage.h +1 -1
- data/src/cxx_supportlib/AppLocalConfigFileUtils.h +1 -1
- data/src/cxx_supportlib/AppTypeDetector/CBindings.cpp +1 -1
- data/src/cxx_supportlib/AppTypeDetector/CBindings.h +1 -1
- data/src/cxx_supportlib/AppTypeDetector/Detector.h +1 -1
- data/src/cxx_supportlib/BackgroundEventLoop.cpp +1 -1
- data/src/cxx_supportlib/BackgroundEventLoop.h +1 -1
- data/src/cxx_supportlib/ConfigKit/AsyncUtils.h +1 -1
- data/src/cxx_supportlib/ConfigKit/Common.h +1 -1
- data/src/cxx_supportlib/ConfigKit/ConfigKit.h +1 -1
- data/src/cxx_supportlib/ConfigKit/DummyTranslator.h +1 -1
- data/src/cxx_supportlib/ConfigKit/IN_PRACTICE.md +1 -3
- data/src/cxx_supportlib/ConfigKit/PrefixTranslator.h +3 -3
- data/src/cxx_supportlib/ConfigKit/Schema.h +1 -1
- data/src/cxx_supportlib/ConfigKit/SchemaUtils.h +1 -1
- data/src/cxx_supportlib/ConfigKit/Store.h +1 -1
- data/src/cxx_supportlib/ConfigKit/SubComponentUtils.h +1 -1
- data/src/cxx_supportlib/ConfigKit/TableTranslator.h +1 -1
- data/src/cxx_supportlib/ConfigKit/Translator.h +1 -1
- data/src/cxx_supportlib/ConfigKit/Utils.h +1 -1
- data/src/cxx_supportlib/Constants.h +2 -2
- data/src/cxx_supportlib/Constants.h.cxxcodebuilder +1 -1
- data/src/cxx_supportlib/DataStructures/HashedStaticString.h +1 -1
- data/src/cxx_supportlib/DataStructures/LString.cpp +1 -1
- data/src/cxx_supportlib/DataStructures/LString.h +1 -1
- data/src/cxx_supportlib/DataStructures/StringKeyTable.h +1 -1
- data/src/cxx_supportlib/DataStructures/StringMap.h +1 -1
- data/src/cxx_supportlib/Exceptions.cpp +1 -1
- data/src/cxx_supportlib/Exceptions.h +1 -1
- data/src/cxx_supportlib/FileDescriptor.h +1 -1
- data/src/cxx_supportlib/FileTools/FileManip.cpp +28 -4
- data/src/cxx_supportlib/FileTools/FileManip.h +1 -1
- data/src/cxx_supportlib/FileTools/PathManip.cpp +1 -1
- data/src/cxx_supportlib/FileTools/PathManip.h +1 -1
- data/src/cxx_supportlib/FileTools/PathManipCBindings.cpp +1 -1
- data/src/cxx_supportlib/FileTools/PathManipCBindings.h +1 -1
- data/src/cxx_supportlib/FileTools/PathSecurityCheck.cpp +1 -1
- data/src/cxx_supportlib/FileTools/PathSecurityCheck.h +1 -1
- data/src/cxx_supportlib/Hooks.h +1 -1
- data/src/cxx_supportlib/IOTools/BufferedIO.h +1 -1
- data/src/cxx_supportlib/IOTools/IOUtils.cpp +10 -10
- data/src/cxx_supportlib/IOTools/IOUtils.h +1 -1
- data/src/cxx_supportlib/IOTools/MessageIO.h +1 -1
- data/src/cxx_supportlib/IOTools/MessageSerialization.h +1 -1
- data/src/cxx_supportlib/InstanceDirectory.h +31 -4
- data/src/cxx_supportlib/Integrations/LibevJsonUtils.h +1 -1
- data/src/cxx_supportlib/JsonTools/Autocast.h +1 -1
- data/src/cxx_supportlib/JsonTools/CBindings.cpp +1 -1
- data/src/cxx_supportlib/JsonTools/CBindings.h +1 -1
- data/src/cxx_supportlib/JsonTools/JsonUtils.h +1 -1
- data/src/cxx_supportlib/LoggingKit/Assert.h +1 -1
- data/src/cxx_supportlib/LoggingKit/Config.h +2 -1
- data/src/cxx_supportlib/LoggingKit/Context.h +1 -1
- data/src/cxx_supportlib/LoggingKit/Forward.h +1 -1
- data/src/cxx_supportlib/LoggingKit/Implementation.cpp +11 -1
- data/src/cxx_supportlib/LoggingKit/Logging.h +1 -1
- data/src/cxx_supportlib/LoggingKit/LoggingKit.h +1 -1
- data/src/cxx_supportlib/LveLoggingDecorator.h +1 -1
- data/src/cxx_supportlib/MemoryKit/mbuf.cpp +1 -1
- data/src/cxx_supportlib/MemoryKit/mbuf.h +1 -1
- 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 +1 -1
- data/src/cxx_supportlib/ProcessManagement/Ruby.h +1 -1
- data/src/cxx_supportlib/ProcessManagement/Spawn.cpp +1 -1
- data/src/cxx_supportlib/ProcessManagement/Spawn.h +1 -1
- data/src/cxx_supportlib/ProcessManagement/Utils.cpp +1 -1
- data/src/cxx_supportlib/ProcessManagement/Utils.h +1 -1
- data/src/cxx_supportlib/RandomGenerator.h +1 -1
- data/src/cxx_supportlib/ResourceLocator.h +1 -1
- data/src/cxx_supportlib/SafeLibev.h +1 -1
- data/src/cxx_supportlib/SecurityKit/Crypto.cpp +9 -27
- data/src/cxx_supportlib/SecurityKit/Crypto.h +2 -2
- data/src/cxx_supportlib/SecurityKit/MemZeroGuard.h +1 -1
- data/src/cxx_supportlib/ServerKit/AcceptLoadBalancer.h +1 -1
- data/src/cxx_supportlib/ServerKit/Channel.h +1 -1
- data/src/cxx_supportlib/ServerKit/Client.h +1 -1
- data/src/cxx_supportlib/ServerKit/ClientRef.h +1 -1
- data/src/cxx_supportlib/ServerKit/Config.h +1 -1
- data/src/cxx_supportlib/ServerKit/Context.h +1 -1
- data/src/cxx_supportlib/ServerKit/CookieUtils.h +1 -1
- data/src/cxx_supportlib/ServerKit/Errors.h +2 -2
- data/src/cxx_supportlib/ServerKit/FdSinkChannel.h +1 -1
- data/src/cxx_supportlib/ServerKit/FdSourceChannel.h +1 -1
- data/src/cxx_supportlib/ServerKit/FileBufferedChannel.h +54 -2
- data/src/cxx_supportlib/ServerKit/FileBufferedFdSinkChannel.h +1 -1
- data/src/cxx_supportlib/ServerKit/HeaderTable.h +1 -1
- data/src/cxx_supportlib/ServerKit/Hooks.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParser.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpChunkedBodyParserState.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpClient.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpRequest.h +2 -2
- data/src/cxx_supportlib/ServerKit/HttpRequestRef.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpServer.h +1 -1
- data/src/cxx_supportlib/ServerKit/Implementation.cpp +1 -1
- data/src/cxx_supportlib/ServerKit/Server.h +4 -2
- data/src/cxx_supportlib/ServerKit/llerrors.h +3 -3
- data/src/cxx_supportlib/ServerKit/llversion.h +1 -1
- data/src/cxx_supportlib/StaticString.h +1 -1
- data/src/cxx_supportlib/StrIntTools/DateParsing.h +1 -1
- data/src/cxx_supportlib/StrIntTools/StrIntUtils.cpp +1 -1
- data/src/cxx_supportlib/StrIntTools/StrIntUtils.h +1 -1
- data/src/cxx_supportlib/StrIntTools/StrIntUtilsNoStrictAliasing.cpp +1 -1
- data/src/cxx_supportlib/StrIntTools/StringScanning.h +1 -1
- data/src/cxx_supportlib/StrIntTools/Template.h +1 -1
- data/src/cxx_supportlib/SystemTools/ContainerHelpers.h +1 -1
- data/src/cxx_supportlib/SystemTools/ProcessMetricsCollector.h +1 -1
- data/src/cxx_supportlib/SystemTools/SystemMetricsCollector.h +1 -1
- data/src/cxx_supportlib/SystemTools/SystemTime.cpp +1 -1
- data/src/cxx_supportlib/SystemTools/SystemTime.h +1 -1
- data/src/cxx_supportlib/SystemTools/UserDatabase.cpp +1 -1
- data/src/cxx_supportlib/SystemTools/UserDatabase.h +1 -1
- data/src/cxx_supportlib/Utils/AnsiColorConstants.h +1 -1
- data/src/cxx_supportlib/Utils/AsyncSignalSafeUtils.h +1 -1
- data/src/cxx_supportlib/Utils/BlockingQueue.h +1 -1
- data/src/cxx_supportlib/Utils/CachedFileStat.cpp +1 -1
- data/src/cxx_supportlib/Utils/CachedFileStat.h +1 -1
- data/src/cxx_supportlib/Utils/CachedFileStat.hpp +1 -1
- data/src/cxx_supportlib/Utils/ClassUtils.h +1 -1
- data/src/cxx_supportlib/Utils/Curl.h +1 -1
- data/src/cxx_supportlib/Utils/FastStringStream.h +1 -1
- data/src/cxx_supportlib/Utils/FileChangeChecker.h +1 -1
- data/src/cxx_supportlib/Utils/HttpConstants.h +1 -1
- data/src/cxx_supportlib/Utils/IniFile.h +1 -1
- data/src/cxx_supportlib/Utils/MessagePassing.h +1 -1
- data/src/cxx_supportlib/Utils/OptionParsing.h +1 -1
- data/src/cxx_supportlib/Utils/ReleaseableScopedPointer.h +1 -1
- data/src/cxx_supportlib/Utils/ScopeGuard.h +1 -1
- data/src/cxx_supportlib/Utils/SpeedMeter.h +1 -1
- data/src/cxx_supportlib/Utils/Timer.h +1 -1
- data/src/cxx_supportlib/Utils/VariantMap.h +1 -1
- data/src/cxx_supportlib/Utils.cpp +1 -1
- data/src/cxx_supportlib/Utils.h +1 -1
- data/src/cxx_supportlib/WatchdogLauncher.cpp +1 -1
- data/src/cxx_supportlib/WatchdogLauncher.h +1 -1
- data/src/cxx_supportlib/WrapperRegistry/CBindings.cpp +1 -1
- data/src/cxx_supportlib/WrapperRegistry/CBindings.h +1 -1
- data/src/cxx_supportlib/WrapperRegistry/Entry.h +1 -1
- data/src/cxx_supportlib/WrapperRegistry/Registry.h +1 -1
- 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/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 +1 -1
- data/src/cxx_supportlib/oxt/implementation.cpp +1 -1
- 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 +1 -1
- data/src/cxx_supportlib/oxt/system_calls.hpp +1 -1
- data/src/cxx_supportlib/oxt/thread.hpp +1 -1
- data/src/cxx_supportlib/oxt/tracable_exception.hpp +1 -1
- data/src/cxx_supportlib/vendor-copy/adhoc_lve.h +1 -1
- data/src/cxx_supportlib/vendor-copy/libuv/AUTHORS +353 -3
- data/src/cxx_supportlib/vendor-copy/libuv/ChangeLog +3981 -2
- data/src/cxx_supportlib/vendor-copy/libuv/LICENSE +1 -28
- data/src/cxx_supportlib/vendor-copy/libuv/LICENSE-docs +396 -0
- data/src/cxx_supportlib/vendor-copy/libuv/LICENSE-extra +36 -0
- data/src/cxx_supportlib/vendor-copy/libuv/Makefile.am +275 -58
- data/src/cxx_supportlib/vendor-copy/libuv/Makefile.in +4380 -2125
- data/src/cxx_supportlib/vendor-copy/libuv/aclocal.m4 +425 -221
- data/src/cxx_supportlib/vendor-copy/libuv/ar-lib +30 -10
- data/src/cxx_supportlib/vendor-copy/libuv/compile +31 -14
- data/src/cxx_supportlib/vendor-copy/libuv/config.guess +1084 -690
- data/src/cxx_supportlib/vendor-copy/libuv/config.sub +1844 -1297
- data/src/cxx_supportlib/vendor-copy/libuv/configure +6935 -3664
- data/src/cxx_supportlib/vendor-copy/libuv/configure.ac +43 -19
- data/src/cxx_supportlib/vendor-copy/libuv/depcomp +12 -11
- data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-darwin.h → uv/darwin.h} +3 -3
- data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-errno.h → uv/errno.h} +119 -60
- data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-linux.h → uv/linux.h} +1 -1
- data/src/cxx_supportlib/vendor-copy/libuv/include/uv/os390.h +33 -0
- data/src/cxx_supportlib/vendor-copy/libuv/include/uv/posix.h +31 -0
- data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-threadpool.h → uv/threadpool.h} +1 -1
- data/src/cxx_supportlib/vendor-copy/libuv/include/{tree.h → uv/tree.h} +3 -250
- data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-unix.h → uv/unix.h} +186 -60
- data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-version.h → uv/version.h} +3 -3
- data/src/cxx_supportlib/vendor-copy/libuv/include/uv/win.h +703 -0
- data/src/cxx_supportlib/vendor-copy/libuv/include/uv.h +528 -40
- data/src/cxx_supportlib/vendor-copy/libuv/install-sh +110 -70
- data/src/cxx_supportlib/vendor-copy/libuv/libuv-static.pc.in +12 -0
- data/src/cxx_supportlib/vendor-copy/libuv/libuv.pc.in +4 -2
- data/src/cxx_supportlib/vendor-copy/libuv/ltmain.sh +995 -619
- data/src/cxx_supportlib/vendor-copy/libuv/m4/ax_pthread.m4 +485 -0
- data/src/cxx_supportlib/vendor-copy/libuv/m4/libtool.m4 +438 -289
- data/src/cxx_supportlib/vendor-copy/libuv/m4/libuv-check-flags.m4 +21 -4
- data/src/cxx_supportlib/vendor-copy/libuv/m4/libuv-check-versions.m4 +7 -0
- data/src/cxx_supportlib/vendor-copy/libuv/m4/ltoptions.m4 +69 -39
- data/src/cxx_supportlib/vendor-copy/libuv/m4/ltsugar.m4 +1 -1
- data/src/cxx_supportlib/vendor-copy/libuv/m4/ltversion.m4 +7 -6
- data/src/cxx_supportlib/vendor-copy/libuv/m4/lt~obsolete.m4 +2 -2
- data/src/cxx_supportlib/vendor-copy/libuv/missing +55 -34
- data/src/cxx_supportlib/vendor-copy/libuv/src/fs-poll.c +52 -20
- data/src/cxx_supportlib/vendor-copy/libuv/src/idna.c +560 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/idna.h +31 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/inet.c +5 -16
- data/src/cxx_supportlib/vendor-copy/libuv/src/queue.h +68 -86
- data/src/cxx_supportlib/vendor-copy/libuv/src/random.c +123 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/strscpy.c +38 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/strscpy.h +39 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/strtok.c +52 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/strtok.h +27 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/thread-common.c +175 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/threadpool.c +172 -57
- data/src/cxx_supportlib/vendor-copy/libuv/src/{unix/timer.c → timer.c} +57 -29
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/aix-common.c +89 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/aix.c +418 -256
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/async.c +168 -129
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/bsd-ifaddrs.c +163 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/bsd-proctitle.c +99 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/core.c +1312 -378
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/cygwin.c +93 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/darwin-proctitle.c +18 -32
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/darwin-stub.h +97 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/darwin-syscalls.h +17 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/darwin.c +41 -139
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/dl.c +1 -1
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/freebsd.c +75 -235
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/fs.c +1308 -299
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/fsevents.c +150 -148
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/getaddrinfo.c +58 -8
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/getnameinfo.c +3 -2
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/haiku.c +172 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/hurd.c +172 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/ibmi.c +542 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/internal.h +297 -106
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/kqueue.c +325 -94
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/linux.c +2708 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/loop-watcher.c +11 -11
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/loop.c +105 -24
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/netbsd.c +51 -157
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/no-fsevents.c +42 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/no-proctitle.c +45 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/openbsd.c +42 -183
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/os390-proctitle.c +136 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/os390-syscalls.c +536 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/os390-syscalls.h +75 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/os390.c +1070 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/pipe.c +324 -55
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/poll.c +58 -11
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/posix-hrtime.c +36 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/posix-poll.c +385 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/process.c +795 -248
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/procfs-exepath.c +45 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/proctitle.c +77 -22
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/qnx.c +142 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/random-devurandom.c +93 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/random-getentropy.c +57 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/random-getrandom.c +86 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/random-sysctl-linux.c +99 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/signal.c +147 -39
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/stream.c +426 -474
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/sunos.c +240 -98
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/sysinfo-loadavg.c +36 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/sysinfo-memory.c +42 -0
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/tcp.c +402 -91
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/thread.c +497 -145
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/tty.c +269 -45
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/udp.c +695 -165
- data/src/cxx_supportlib/vendor-copy/libuv/src/uv-common.c +463 -61
- data/src/cxx_supportlib/vendor-copy/libuv/src/uv-common.h +248 -44
- data/src/cxx_supportlib/vendor-copy/libuv/src/uv-data-getter-setters.c +119 -0
- data/src/cxx_supportlib/vendor-copy/libuv/tsansupp.txt +2 -0
- data/src/cxx_supportlib/{ServerKit/llhttp_api.c → vendor-copy/llhttp/api.c} +30 -23
- data/src/cxx_supportlib/{ServerKit → vendor-copy/llhttp}/llhttp.c +1756 -1645
- data/src/cxx_supportlib/{ServerKit → vendor-copy/llhttp}/llhttp.h +35 -13
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/classification.hpp +19 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/formatter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/trim_all.hpp +0 -2
- data/src/cxx_supportlib/vendor-modified/boost/assert.hpp +20 -13
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_x86.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/thread_pause.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/debug.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx03.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx11.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx14.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx17.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx20.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx23.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/auto_link.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang_version.hpp +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +5 -3
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/cxx_composite.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/workaround.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +57 -53
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +34 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/container_fwd.hpp +14 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +176 -2287
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool.hpp +13 -9
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool_impl.hpp +186 -70
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/algorithm.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/aligned_allocation.hpp +149 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_helpers.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_lib.h +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/bit_utilities.hpp +133 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +18 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_begin.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_end.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/container_rebind.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +20 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/deque_impl.hpp +2744 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/dispatch_uses_allocator.hpp +202 -104
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/dlmalloc.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +161 -85
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_constructible.hpp +180 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterators.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/math_functions.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mpl.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/next_capacity.hpp +9 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool.hpp +18 -14
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool_impl.hpp +256 -41
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/operator_new_helpers.hpp +75 -24
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +1 -56
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/placement_new.hpp +16 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common_alloc.hpp +1 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/range_utils.hpp +196 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/std_fwd.hpp +33 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +124 -69
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +109 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +168 -162
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/nest.hpp +2978 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/pmr/nest.hpp +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_all_of.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_any_of.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_copy.hpp +229 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_copy_if.hpp +270 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_copy_n.hpp +308 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_count.hpp +101 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_count_if.hpp +100 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_equal.hpp +268 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_fill.hpp +101 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_fill_n.hpp +171 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find.hpp +110 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_if.hpp +110 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_if_not.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_last.hpp +179 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_last_if.hpp +179 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_last_if_not.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_for_each.hpp +92 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_generate.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_generate_n.hpp +162 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_is_partitioned.hpp +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_is_sorted.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_is_sorted_until.hpp +169 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_iterator_traits.hpp +382 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_merge.hpp +428 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_mismatch.hpp +350 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_none_of.hpp +98 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_partition.hpp +296 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_partition_copy.hpp +105 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_partition_point.hpp +116 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove_copy.hpp +207 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove_copy_if.hpp +223 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove_if.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_replace.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_replace_if.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_reverse.hpp +245 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_reverse_copy.hpp +229 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_search.hpp +211 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_search_n.hpp +476 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_difference.hpp +300 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_intersection.hpp +287 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_symmetric_difference.hpp +306 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_union.hpp +294 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_stable_partition.hpp +153 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_swap_ranges.hpp +92 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_transform.hpp +93 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/wrapped_iterator.hpp +142 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +642 -417
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +141 -30
- data/src/cxx_supportlib/vendor-modified/boost/container/hub.hpp +2426 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +65 -57
- data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +247 -68
- data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +39 -33
- data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +156 -23
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/global_resource.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/hub.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/memory_resource.hpp +5 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/monotonic_buffer_resource.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/polymorphic_allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/segtor.hpp +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/scoped_allocator.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/segtor.hpp +905 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +148 -35
- data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +59 -52
- data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +632 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +66 -60
- data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +46 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +612 -317
- data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator.hpp +54 -111
- data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator_construction.hpp +100 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator_fwd.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +233 -116
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +17 -10
- data/src/cxx_supportlib/vendor-modified/boost/date_time/period.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/describe/detail/config.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/encoder.hpp +114 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/error_info_impl.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/requires_cxx11.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/type_info.hpp +211 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/diagnostic_information.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/exception.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/info.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree.hpp +12 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/derivation_value_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/ebo_functor_holder.hpp +29 -174
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/generic_hook.hpp +18 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/key_nodeptr_comp.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/workaround.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +20 -11
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +42 -14
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +58 -22
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/iterator/advance.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/iterator/distance.hpp +8 -2
- data/src/cxx_supportlib/vendor-modified/boost/iterator/is_iterator.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/bad_lexical_cast.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/buffer_view.hpp +9 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/config.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical.hpp +15 -7
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +23 -11
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/inf_nan.hpp +9 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/is_character.hpp +11 -2
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_basic_unlockedbuf.hpp +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_char_constants.hpp +8 -1
- data/src/cxx_supportlib/vendor-modified/boost/{detail → lexical_cast/detail}/lcast_precision.hpp +13 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/widest_char.hpp +10 -2
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/try_lexical_convert.hpp +15 -2
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/once_atomic.cpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/thread.cpp +48 -46
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils.hpp +23 -0
- 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 +12 -4
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +76 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/workaround.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/traits.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/algorithm.hpp +58 -37
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_copy_if.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_map_find.hpp +17 -9
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_remove_if.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/mp11/integer_sequence.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/none_t.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_common_defs.hpp +188 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp +0 -6
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_hash.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_nonmember_interface.hpp +117 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_reference_spec.hpp +108 -83
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_relops.hpp +39 -39
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_select_implementation.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_swap.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_trivially_copyable_base.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/union_optional.hpp +724 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp +93 -220
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional_fwd.hpp +14 -4
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional_io.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/random/binomial_distribution.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/random/uniform_int_distribution.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/rational.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/static_assert.hpp +4 -6
- data/src/cxx_supportlib/vendor-modified/boost/system/api_config.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/config.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category_impl.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/detail/sync_deque_base.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/detail/sync_queue_base.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/thread.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/experimental/parallel/v2/task_region.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +30 -28
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/once.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/once_atomic.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/pthread_helpers.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/shared_mutex.hpp +16 -16
- data/src/cxx_supportlib/vendor-modified/boost/thread/v2/shared_mutex.hpp +26 -26
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map.hpp +196 -6
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set.hpp +191 -6
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_node_map.hpp +196 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_node_set.hpp +192 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/concurrent_table.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/core.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/table.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +52 -16
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/ranges_support.hpp +104 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/type_traits.hpp +1 -14
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/unordered_printers.hpp +10 -4
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +121 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +118 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map.hpp +338 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map.hpp +121 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set.hpp +118 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set.hpp +333 -1
- data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/jsoncpp/json-forwards.h +276 -143
- data/src/cxx_supportlib/vendor-modified/jsoncpp/json.h +1262 -771
- data/src/cxx_supportlib/vendor-modified/jsoncpp/jsoncpp.cpp +1704 -1586
- data/src/cxx_supportlib/vendor-modified/libev/Changes +109 -0
- data/src/cxx_supportlib/vendor-modified/libev/Makefile.am +2 -1
- data/src/cxx_supportlib/vendor-modified/libev/Makefile.in +47 -33
- data/src/cxx_supportlib/vendor-modified/libev/README +2 -1
- data/src/cxx_supportlib/vendor-modified/libev/aclocal.m4 +1653 -1224
- data/src/cxx_supportlib/vendor-modified/libev/config.guess +376 -316
- data/src/cxx_supportlib/vendor-modified/libev/config.h.in +13 -2
- data/src/cxx_supportlib/vendor-modified/libev/config.sub +156 -154
- data/src/cxx_supportlib/vendor-modified/libev/configure +1431 -940
- data/src/cxx_supportlib/vendor-modified/libev/configure.ac +3 -3
- data/src/cxx_supportlib/vendor-modified/libev/depcomp +5 -5
- data/src/cxx_supportlib/vendor-modified/libev/ev++.h +109 -107
- data/src/cxx_supportlib/vendor-modified/libev/ev.c +807 -319
- data/src/cxx_supportlib/vendor-modified/libev/ev.h +111 -105
- data/src/cxx_supportlib/vendor-modified/libev/ev_epoll.c +42 -29
- data/src/cxx_supportlib/vendor-modified/libev/ev_iouring.c +694 -0
- data/src/cxx_supportlib/vendor-modified/libev/ev_kqueue.c +15 -9
- data/src/cxx_supportlib/vendor-modified/libev/ev_linuxaio.c +620 -0
- data/src/cxx_supportlib/vendor-modified/libev/ev_poll.c +19 -14
- data/src/cxx_supportlib/vendor-modified/libev/ev_port.c +8 -5
- data/src/cxx_supportlib/vendor-modified/libev/ev_select.c +6 -6
- data/src/cxx_supportlib/vendor-modified/libev/ev_vars.h +48 -3
- data/src/cxx_supportlib/vendor-modified/libev/ev_win32.c +2 -2
- data/src/cxx_supportlib/vendor-modified/libev/ev_wrap.h +72 -0
- data/src/cxx_supportlib/vendor-modified/libev/install-sh +23 -13
- data/src/cxx_supportlib/vendor-modified/libev/libev.m4 +6 -1
- data/src/cxx_supportlib/vendor-modified/libev/ltmain.sh +3581 -1993
- data/src/cxx_supportlib/vendor-modified/libev/missing +8 -8
- data/src/cxx_supportlib/vendor-modified/libev/mkinstalldirs +3 -3
- data/src/cxx_supportlib/vendor-modified/modp_b64_strict_aliasing.cpp +1 -1
- data/src/helper-scripts/backtrace-sanitizer.rb +1 -1
- data/src/helper-scripts/crash-watch.rb +1 -1
- data/src/helper-scripts/download_binaries/extconf.rb +1 -1
- data/src/helper-scripts/meteor-loader.rb +1 -1
- data/src/helper-scripts/node-loader.js +1 -1
- data/src/helper-scripts/prespawn +1 -1
- data/src/helper-scripts/rack-loader.rb +1 -1
- data/src/helper-scripts/rack-preloader.rb +1 -1
- data/src/helper-scripts/wsgi-loader.py +1 -1
- data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c +1 -1
- data/src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c.cxxcodebuilder +1 -1
- data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c +1 -1
- data/src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c.cxxcodebuilder +1 -1
- data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c +1 -1
- data/src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c.cxxcodebuilder +1 -1
- data/src/nginx_module/Configuration.c +1 -1
- data/src/nginx_module/Configuration.h +1 -1
- data/src/nginx_module/ContentHandler.c +36 -1
- data/src/nginx_module/ContentHandler.h +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedCreateFunction.c.cxxcodebuilder +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c.cxxcodebuilder +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c.cxxcodebuilder +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c.cxxcodebuilder +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h +1 -1
- data/src/nginx_module/LocationConfig/AutoGeneratedStruct.h.cxxcodebuilder +1 -1
- data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c +1 -1
- data/src/nginx_module/MainConfig/AutoGeneratedCreateFunction.c.cxxcodebuilder +1 -1
- data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c +1 -1
- data/src/nginx_module/MainConfig/AutoGeneratedManifestGeneration.c.cxxcodebuilder +1 -1
- data/src/nginx_module/MainConfig/AutoGeneratedStruct.h +1 -1
- data/src/nginx_module/MainConfig/AutoGeneratedStruct.h.cxxcodebuilder +1 -1
- data/src/nginx_module/StaticContentHandler.c +1 -1
- data/src/nginx_module/StaticContentHandler.h +1 -1
- data/src/nginx_module/ngx_http_passenger_module.c +1 -1
- data/src/nginx_module/ngx_http_passenger_module.h +1 -1
- data/src/nodejs_supportlib/phusion_passenger/line_reader.js +1 -1
- data/src/ruby_native_extension/extconf.rb +1 -1
- data/src/ruby_native_extension/passenger_native_support.c +1 -1
- data/src/ruby_supportlib/phusion_passenger/abstract_installer.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/admin_tools/instance.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/admin_tools/instance_registry.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/admin_tools/memory_stats.rb +2 -12
- data/src/ruby_supportlib/phusion_passenger/admin_tools.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/apache2/config_options.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/apache2/config_utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/common_library.rb +14 -16
- data/src/ruby_supportlib/phusion_passenger/config/about_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/agent_compiler.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/api_call_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/build_native_support_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/compile_agent_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/compile_nginx_engine_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/detach_process_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/download_agent_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/download_nginx_engine_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/install_agent_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/install_standalone_runtime_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/installation_utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/list_instances_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/main.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +3 -2
- data/src/ruby_supportlib/phusion_passenger/config/reopen_logs_command.rb +6 -1
- data/src/ruby_supportlib/phusion_passenger/config/restart_app_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/system_metrics_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/system_properties_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/validate_install_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/console_text_template.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/constants.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/debug_logging.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/message_channel.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/message_client.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/native_support.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/packaging.rb +4 -3
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache_detector.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/binary_compatibility.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +195 -11
- data/src/ruby_supportlib/phusion_passenger/platform_info/crypto.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/curl.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/linux.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/networking.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/openssl.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/operating_system.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/pcre.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/ruby.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/zlib.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/plugin.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/preloader_shared_helpers.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/public_api.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/rack/handler.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/rack/out_of_band_gc.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/rack/thread_handler_extension.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/rack_handler.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +2 -7
- data/src/ruby_supportlib/phusion_passenger/request_handler.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/ruby_core_enhancements.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/ruby_core_io_enhancements.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/simple_benchmarking.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/app_finder.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/config_options_list.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/config_utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/control_utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/main.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/nginx_engine.rb +4 -8
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/status_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/stop_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/version_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/ansi_colors.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/download.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/file_system_watcher.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/hosts_file_parser.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/json.rb +25 -2
- data/src/ruby_supportlib/phusion_passenger/utils/lock.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/native_support_utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/progress_bar.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/strscan.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/terminal_choice_menu.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/unseekable_socket.rb +3 -13
- data/src/ruby_supportlib/phusion_passenger/utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/app.rb +1 -1
- 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 +1 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/lldb_controller.rb +1 -1
- 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 +8 -6
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/spawn.rb +4 -3
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller/version.rb +6 -4
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller.rb +406 -579
- data/src/ruby_supportlib/phusion_passenger.rb +8 -8
- data/src/schema_printer/SchemaPrinterMain.cpp +1 -1
- data/src/schema_printer/SchemaPrinterMain.cpp.cxxcodebuilder +1 -1
- metadata +140 -38
- data/doc/DeveloperQuickstart.md +0 -70
- data/src/README.md +0 -7
- data/src/cxx_supportlib/vendor-copy/libuv/README.md +0 -245
- data/src/cxx_supportlib/vendor-copy/libuv/checksparse.sh +0 -234
- data/src/cxx_supportlib/vendor-copy/libuv/common.gypi +0 -210
- data/src/cxx_supportlib/vendor-copy/libuv/gyp_uv.py +0 -93
- data/src/cxx_supportlib/vendor-copy/libuv/include/android-ifaddrs.h +0 -54
- data/src/cxx_supportlib/vendor-copy/libuv/include/pthread-fixes.h +0 -72
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/android-ifaddrs.c +0 -703
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/atomic-ops.h +0 -77
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/linux-core.c +0 -899
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/linux-inotify.c +0 -285
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/linux-syscalls.c +0 -471
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/linux-syscalls.h +0 -158
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/pthread-fixes.c +0 -104
- data/src/cxx_supportlib/vendor-copy/libuv/src/unix/spinlock.h +0 -53
- data/src/cxx_supportlib/vendor-copy/libuv/uv.gyp +0 -508
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_utility.hpp +0 -41
- /data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-aix.h → uv/aix.h} +0 -0
- /data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-bsd.h → uv/bsd.h} +0 -0
- /data/src/cxx_supportlib/vendor-copy/libuv/include/{uv-sunos.h → uv/sunos.h} +0 -0
- /data/src/cxx_supportlib/{ServerKit/llhttp_http.c → vendor-copy/llhttp/http.c} +0 -0
|
@@ -0,0 +1,905 @@
|
|
|
1
|
+
//////////////////////////////////////////////////////////////////////////////
|
|
2
|
+
//
|
|
3
|
+
// (C) Copyright Ion Gaztanaga 2026. Distributed under the Boost
|
|
4
|
+
// Software License, Version 1.0. (See accompanying file
|
|
5
|
+
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
|
6
|
+
//
|
|
7
|
+
// See http://www.boost.org/libs/container for documentation.
|
|
8
|
+
//
|
|
9
|
+
//////////////////////////////////////////////////////////////////////////////
|
|
10
|
+
|
|
11
|
+
#ifndef BOOST_CONTAINER_SEGTOR_HPP
|
|
12
|
+
#define BOOST_CONTAINER_SEGTOR_HPP
|
|
13
|
+
|
|
14
|
+
#ifndef BOOST_CONFIG_HPP
|
|
15
|
+
# include <boost/config.hpp>
|
|
16
|
+
#endif
|
|
17
|
+
|
|
18
|
+
#if defined(BOOST_HAS_PRAGMA_ONCE)
|
|
19
|
+
# pragma once
|
|
20
|
+
#endif
|
|
21
|
+
|
|
22
|
+
#include <boost/container/detail/config_begin.hpp>
|
|
23
|
+
#include <boost/container/detail/workaround.hpp>
|
|
24
|
+
#include <boost/container/detail/deque_impl.hpp>
|
|
25
|
+
|
|
26
|
+
namespace boost {
|
|
27
|
+
namespace container {
|
|
28
|
+
|
|
29
|
+
#ifdef BOOST_CONTAINER_DOXYGEN_INVOKED
|
|
30
|
+
//! A segtor (contraction of "segmented vector" is a sequence container that supports
|
|
31
|
+
//! random access to elements, constant time insertion and removal of elements at
|
|
32
|
+
//! the end, and linear time insertion and removal of elements in the middle.
|
|
33
|
+
//!
|
|
34
|
+
//! It's the single-ended version of boost::container::deque: it provides
|
|
35
|
+
//! push_back, pop_back, emplace_back, etc., but does not provide push_front,
|
|
36
|
+
//! pop_front, or emplace_front.
|
|
37
|
+
//!
|
|
38
|
+
//! \tparam T The type of object that is stored in the segtor
|
|
39
|
+
//! \tparam Allocator The allocator used for all internal memory management, use void
|
|
40
|
+
//! for the default allocator
|
|
41
|
+
//! \tparam Options A type produced from \c boost::container::segtor_options.
|
|
42
|
+
template <class T, class Allocator = void, class Options = void>
|
|
43
|
+
#else
|
|
44
|
+
template <class T, class Allocator, class Options>
|
|
45
|
+
#endif
|
|
46
|
+
class segtor : public deque_impl<T, Allocator, true, Options>
|
|
47
|
+
{
|
|
48
|
+
#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
|
49
|
+
BOOST_COPYABLE_AND_MOVABLE(segtor)
|
|
50
|
+
typedef deque_impl<T, Allocator, true, Options> base_type;
|
|
51
|
+
#endif
|
|
52
|
+
|
|
53
|
+
public:
|
|
54
|
+
//////////////////////////////////////////////
|
|
55
|
+
//
|
|
56
|
+
// types
|
|
57
|
+
//
|
|
58
|
+
//////////////////////////////////////////////
|
|
59
|
+
|
|
60
|
+
typedef T value_type;
|
|
61
|
+
typedef typename base_type::allocator_type allocator_type;
|
|
62
|
+
typedef typename base_type::pointer pointer;
|
|
63
|
+
typedef typename base_type::const_pointer const_pointer;
|
|
64
|
+
typedef typename base_type::reference reference;
|
|
65
|
+
typedef typename base_type::const_reference const_reference;
|
|
66
|
+
typedef typename base_type::size_type size_type;
|
|
67
|
+
typedef typename base_type::difference_type difference_type;
|
|
68
|
+
typedef typename base_type::iterator iterator;
|
|
69
|
+
typedef typename base_type::const_iterator const_iterator;
|
|
70
|
+
typedef typename base_type::reverse_iterator reverse_iterator;
|
|
71
|
+
typedef typename base_type::const_reverse_iterator const_reverse_iterator;
|
|
72
|
+
typedef typename base_type::stored_allocator_type stored_allocator_type;
|
|
73
|
+
|
|
74
|
+
using base_type::get_block_size;
|
|
75
|
+
#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
|
76
|
+
using base_type::get_segment_size;
|
|
77
|
+
#endif //#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
|
78
|
+
static const std::size_t is_reservable = base_type::is_reservable;
|
|
79
|
+
|
|
80
|
+
//////////////////////////////////////////////
|
|
81
|
+
//
|
|
82
|
+
// construct/copy/destroy
|
|
83
|
+
//
|
|
84
|
+
//////////////////////////////////////////////
|
|
85
|
+
|
|
86
|
+
//! <b>Effects</b>: Default constructs a segtor.
|
|
87
|
+
//!
|
|
88
|
+
//! <b>Throws</b>: If allocator_type's default constructor throws.
|
|
89
|
+
//!
|
|
90
|
+
//! <b>Complexity</b>: Constant.
|
|
91
|
+
segtor()
|
|
92
|
+
BOOST_NOEXCEPT_IF(dtl::is_nothrow_default_constructible<allocator_type>::value)
|
|
93
|
+
: base_type()
|
|
94
|
+
{}
|
|
95
|
+
|
|
96
|
+
//! <b>Effects</b>: Constructs a segtor taking the allocator as parameter.
|
|
97
|
+
//!
|
|
98
|
+
//! <b>Throws</b>: Nothing
|
|
99
|
+
//!
|
|
100
|
+
//! <b>Complexity</b>: Constant.
|
|
101
|
+
explicit segtor(const allocator_type& a) BOOST_NOEXCEPT_OR_NOTHROW
|
|
102
|
+
: base_type(a)
|
|
103
|
+
{}
|
|
104
|
+
|
|
105
|
+
//! <b>Effects</b>: Constructs a segtor
|
|
106
|
+
//! and inserts n value initialized values.
|
|
107
|
+
//!
|
|
108
|
+
//! <b>Throws</b>: If allocator_type's default constructor
|
|
109
|
+
//! throws or T's value initialization throws.
|
|
110
|
+
//!
|
|
111
|
+
//! <b>Complexity</b>: Linear to n.
|
|
112
|
+
explicit segtor(size_type n)
|
|
113
|
+
: base_type(n)
|
|
114
|
+
{}
|
|
115
|
+
|
|
116
|
+
//! <b>Effects</b>: Constructs a segtor
|
|
117
|
+
//! and inserts n default initialized values.
|
|
118
|
+
//!
|
|
119
|
+
//! <b>Throws</b>: If allocator_type's default constructor
|
|
120
|
+
//! throws or T's default initialization or copy constructor throws.
|
|
121
|
+
//!
|
|
122
|
+
//! <b>Complexity</b>: Linear to n.
|
|
123
|
+
//!
|
|
124
|
+
//! <b>Note</b>: Non-standard extension
|
|
125
|
+
segtor(size_type n, default_init_t)
|
|
126
|
+
: base_type(n, default_init)
|
|
127
|
+
{}
|
|
128
|
+
|
|
129
|
+
//! <b>Effects</b>: Constructs a segtor that will use a copy of allocator a
|
|
130
|
+
//! and inserts n value initialized values.
|
|
131
|
+
//!
|
|
132
|
+
//! <b>Throws</b>: If allocator_type's default constructor
|
|
133
|
+
//! throws or T's value initialization throws.
|
|
134
|
+
//!
|
|
135
|
+
//! <b>Complexity</b>: Linear to n.
|
|
136
|
+
explicit segtor(size_type n, const allocator_type& a)
|
|
137
|
+
: base_type(n, a)
|
|
138
|
+
{}
|
|
139
|
+
|
|
140
|
+
//! <b>Effects</b>: Constructs a segtor that will use a copy of allocator a
|
|
141
|
+
//! and inserts n default initialized values.
|
|
142
|
+
//!
|
|
143
|
+
//! <b>Throws</b>: If allocator_type's default constructor
|
|
144
|
+
//! throws or T's default initialization or copy constructor throws.
|
|
145
|
+
//!
|
|
146
|
+
//! <b>Complexity</b>: Linear to n.
|
|
147
|
+
//!
|
|
148
|
+
//! <b>Note</b>: Non-standard extension
|
|
149
|
+
segtor(size_type n, default_init_t, const allocator_type& a)
|
|
150
|
+
: base_type(n, default_init, a)
|
|
151
|
+
{}
|
|
152
|
+
|
|
153
|
+
//! <b>Effects</b>: Constructs a segtor that will use a copy of allocator a
|
|
154
|
+
//! and inserts n copies of value.
|
|
155
|
+
//!
|
|
156
|
+
//! <b>Throws</b>: If allocator_type's default constructor
|
|
157
|
+
//! throws or T's copy constructor throws.
|
|
158
|
+
//!
|
|
159
|
+
//! <b>Complexity</b>: Linear to n.
|
|
160
|
+
segtor(size_type n, const value_type& value)
|
|
161
|
+
: base_type(n, value)
|
|
162
|
+
{}
|
|
163
|
+
|
|
164
|
+
//! <b>Effects</b>: Constructs a segtor that will use a copy of allocator a
|
|
165
|
+
//! and inserts n copies of value.
|
|
166
|
+
//!
|
|
167
|
+
//! <b>Throws</b>: If allocator_type's default constructor
|
|
168
|
+
//! throws or T's copy constructor throws.
|
|
169
|
+
//!
|
|
170
|
+
//! <b>Complexity</b>: Linear to n.
|
|
171
|
+
segtor(size_type n, const value_type& value, const allocator_type& a)
|
|
172
|
+
: base_type(n, value, a)
|
|
173
|
+
{}
|
|
174
|
+
|
|
175
|
+
//! <b>Effects</b>: Constructs a segtor that will use a copy of allocator a
|
|
176
|
+
//! and inserts a copy of the range [first, last).
|
|
177
|
+
//!
|
|
178
|
+
//! <b>Throws</b>: If allocator_type's default constructor
|
|
179
|
+
//! throws or T's constructor taking a dereferenced InIt throws.
|
|
180
|
+
//!
|
|
181
|
+
//! <b>Complexity</b>: Linear to the range [first, last).
|
|
182
|
+
template <class InIt>
|
|
183
|
+
segtor(InIt first, InIt last
|
|
184
|
+
#if !defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
|
185
|
+
, typename dtl::disable_if_convertible<InIt, size_type>::type* = 0
|
|
186
|
+
#endif
|
|
187
|
+
)
|
|
188
|
+
: base_type(first, last)
|
|
189
|
+
{}
|
|
190
|
+
|
|
191
|
+
//! <b>Effects</b>: Constructs a segtor that will use a copy of allocator a
|
|
192
|
+
//! and inserts a copy of the range [first, last).
|
|
193
|
+
//!
|
|
194
|
+
//! <b>Throws</b>: If allocator_type's default constructor
|
|
195
|
+
//! throws or T's constructor taking a dereferenced InIt throws.
|
|
196
|
+
//!
|
|
197
|
+
//! <b>Complexity</b>: Linear to the range [first, last).
|
|
198
|
+
template <class InIt>
|
|
199
|
+
segtor(InIt first, InIt last, const allocator_type& a
|
|
200
|
+
#if !defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
|
|
201
|
+
, typename dtl::disable_if_convertible<InIt, size_type>::type* = 0
|
|
202
|
+
#endif
|
|
203
|
+
)
|
|
204
|
+
: base_type(first, last, a)
|
|
205
|
+
{}
|
|
206
|
+
|
|
207
|
+
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
208
|
+
//! <b>Effects</b>: Constructs a segtor that will use a copy of allocator a
|
|
209
|
+
//! and inserts a copy of the range [il.begin(), il.end()).
|
|
210
|
+
//!
|
|
211
|
+
//! <b>Throws</b>: If allocator_type's default constructor
|
|
212
|
+
//! throws or T's constructor taking a dereferenced std::initializer_list iterator throws.
|
|
213
|
+
//!
|
|
214
|
+
//! <b>Complexity</b>: Linear to the range [il.begin(), il.end()).
|
|
215
|
+
segtor(std::initializer_list<value_type> il, const allocator_type& a = allocator_type())
|
|
216
|
+
: base_type(il, a)
|
|
217
|
+
{}
|
|
218
|
+
#endif
|
|
219
|
+
|
|
220
|
+
//! <b>Effects</b>: Copy constructs a segtor.
|
|
221
|
+
//!
|
|
222
|
+
//! <b>Postcondition</b>: x == *this.
|
|
223
|
+
//!
|
|
224
|
+
//! <b>Complexity</b>: Linear to the elements x contains.
|
|
225
|
+
segtor(const segtor& x)
|
|
226
|
+
: base_type(x)
|
|
227
|
+
{}
|
|
228
|
+
|
|
229
|
+
//! <b>Effects</b>: Move constructor. Moves x's resources to *this.
|
|
230
|
+
//!
|
|
231
|
+
//! <b>Throws</b>: If allocator_type's copy constructor throws.
|
|
232
|
+
//!
|
|
233
|
+
//! <b>Complexity</b>: Constant.
|
|
234
|
+
segtor(BOOST_RV_REF(segtor) x) BOOST_NOEXCEPT_OR_NOTHROW
|
|
235
|
+
: base_type(boost::move(static_cast<base_type&>(x)))
|
|
236
|
+
{}
|
|
237
|
+
|
|
238
|
+
//! <b>Effects</b>: Copy constructs a segtor using the specified allocator.
|
|
239
|
+
//!
|
|
240
|
+
//! <b>Postcondition</b>: x == *this.
|
|
241
|
+
//!
|
|
242
|
+
//! <b>Throws</b>: If allocation
|
|
243
|
+
//! throws or T's copy constructor throws.
|
|
244
|
+
//!
|
|
245
|
+
//! <b>Complexity</b>: Linear to the elements x contains.
|
|
246
|
+
segtor(const segtor& x, const BOOST_CONTAINER_DOC1ST(allocator_type, typename dtl::type_identity<allocator_type>::type)& a)
|
|
247
|
+
: base_type(x, a)
|
|
248
|
+
{}
|
|
249
|
+
|
|
250
|
+
//! <b>Effects</b>: Move constructor using the specified allocator.
|
|
251
|
+
//! Moves x's resources to *this if a == allocator_type().
|
|
252
|
+
//! Otherwise copies values from x to *this.
|
|
253
|
+
//!
|
|
254
|
+
//! <b>Throws</b>: If allocation or T's copy constructor throws.
|
|
255
|
+
//!
|
|
256
|
+
//! <b>Complexity</b>: Constant if a == x.get_allocator(), linear otherwise.
|
|
257
|
+
segtor(BOOST_RV_REF(segtor) x, const BOOST_CONTAINER_DOC1ST(allocator_type, typename dtl::type_identity<allocator_type>::type)& a)
|
|
258
|
+
: base_type(boost::move(static_cast<base_type&>(x)), a)
|
|
259
|
+
{}
|
|
260
|
+
|
|
261
|
+
//! <b>Effects</b>: Destroys the segtor. All stored values are destroyed
|
|
262
|
+
//! and used memory is deallocated.
|
|
263
|
+
//!
|
|
264
|
+
//! <b>Throws</b>: Nothing.
|
|
265
|
+
//!
|
|
266
|
+
//! <b>Complexity</b>: Linear to the number of elements.
|
|
267
|
+
~segtor() BOOST_NOEXCEPT_OR_NOTHROW
|
|
268
|
+
{}
|
|
269
|
+
|
|
270
|
+
//! <b>Effects</b>: Makes *this contain the same elements as x.
|
|
271
|
+
//!
|
|
272
|
+
//! <b>Postcondition</b>: this->size() == x.size(). *this contains a copy
|
|
273
|
+
//! of each of x's elements.
|
|
274
|
+
//!
|
|
275
|
+
//! <b>Throws</b>: If memory allocation throws or T's copy constructor throws.
|
|
276
|
+
//!
|
|
277
|
+
//! <b>Complexity</b>: Linear to the number of elements in x.
|
|
278
|
+
segtor& operator=(BOOST_COPY_ASSIGN_REF(segtor) x)
|
|
279
|
+
{
|
|
280
|
+
base_type::operator=(static_cast<const base_type&>(x));
|
|
281
|
+
return *this;
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
//! <b>Effects</b>: Move assignment. All x's values are transferred to *this.
|
|
285
|
+
//!
|
|
286
|
+
//! <b>Throws</b>: If allocator_traits_type::propagate_on_container_move_assignment
|
|
287
|
+
//! is false and (allocation throws or value_type's move constructor throws)
|
|
288
|
+
//!
|
|
289
|
+
//! <b>Complexity</b>: Constant if allocator_traits_type::
|
|
290
|
+
//! propagate_on_container_move_assignment is true or
|
|
291
|
+
//! this->get_allocator() == x.get_allocator(). Linear otherwise.
|
|
292
|
+
segtor& operator=(BOOST_RV_REF(segtor) x)
|
|
293
|
+
BOOST_NOEXCEPT_IF(allocator_traits<allocator_type>::propagate_on_container_move_assignment::value
|
|
294
|
+
|| allocator_traits<allocator_type>::is_always_equal::value)
|
|
295
|
+
{
|
|
296
|
+
base_type::operator=(BOOST_MOVE_BASE(base_type, x));
|
|
297
|
+
return *this;
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
301
|
+
//! <b>Effects</b>: Makes *this contain the same elements as il.
|
|
302
|
+
//!
|
|
303
|
+
//! <b>Postcondition</b>: this->size() == il.size(). *this contains a copy
|
|
304
|
+
//! of each of il's elements.
|
|
305
|
+
//!
|
|
306
|
+
//! <b>Throws</b>: If memory allocation throws or T's copy constructor throws.
|
|
307
|
+
//!
|
|
308
|
+
//! <b>Complexity</b>: Linear to the number of elements in il.
|
|
309
|
+
segtor& operator=(std::initializer_list<value_type> il)
|
|
310
|
+
{
|
|
311
|
+
base_type::operator=(il);
|
|
312
|
+
return *this;
|
|
313
|
+
}
|
|
314
|
+
#endif
|
|
315
|
+
|
|
316
|
+
//////////////////////////////////////////////
|
|
317
|
+
//
|
|
318
|
+
// capacity
|
|
319
|
+
//
|
|
320
|
+
//////////////////////////////////////////////
|
|
321
|
+
|
|
322
|
+
//! <b>Requires</b>: The container must be "reservable" (is_reservable == true)
|
|
323
|
+
//!
|
|
324
|
+
//! <b>Effects</b>: If n is less than or equal to capacity() or the container is not reservable,
|
|
325
|
+
//! this call has no effect. Otherwise, it is a request for allocation of additional memory.
|
|
326
|
+
//! If the request is successful, then capacity() is greater than or equal to
|
|
327
|
+
//! n; otherwise, capacity() is unchanged. In either case, size() is unchanged.
|
|
328
|
+
//!
|
|
329
|
+
//! <b>Throws</b>: If memory allocation throws.
|
|
330
|
+
//!
|
|
331
|
+
//! <b>Complexity</b>: Linear to n.
|
|
332
|
+
//!
|
|
333
|
+
//! <b>Note</b>: Non-standard extension.
|
|
334
|
+
void reserve(size_type n)
|
|
335
|
+
{
|
|
336
|
+
this->reserve_back(n);
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
//! <b>Effects</b>: Returns the number of elements that can be inserted
|
|
340
|
+
//! at the back without allocating additional memory.
|
|
341
|
+
//!
|
|
342
|
+
//! <b>Throws</b>: Nothing.
|
|
343
|
+
//!
|
|
344
|
+
//! <b>Complexity</b>: Constant.
|
|
345
|
+
//!
|
|
346
|
+
//! <b>Note</b>: Non-standard extension.
|
|
347
|
+
BOOST_CONTAINER_NODISCARD size_type capacity() const BOOST_NOEXCEPT_OR_NOTHROW
|
|
348
|
+
{
|
|
349
|
+
return this->back_capacity();
|
|
350
|
+
}
|
|
351
|
+
|
|
352
|
+
#ifdef BOOST_CONTAINER_DOXYGEN_INVOKED
|
|
353
|
+
|
|
354
|
+
//! <b>Effects</b>: Returns the number of continguous elements per segment/block.
|
|
355
|
+
//! Same as get_block_size().
|
|
356
|
+
//!
|
|
357
|
+
//! <b>Throws</b>: Nothing.
|
|
358
|
+
//!
|
|
359
|
+
//! <b>Complexity</b>: Constant.
|
|
360
|
+
static size_type get_segment_size() BOOST_NOEXCEPT_OR_NOTHROW;
|
|
361
|
+
|
|
362
|
+
//! <b>Effects</b>: Returns the number of continguous elements per segment/block.
|
|
363
|
+
//! Same as get_segment_size().
|
|
364
|
+
//!
|
|
365
|
+
//! <b>Throws</b>: Nothing.
|
|
366
|
+
//!
|
|
367
|
+
//! <b>Complexity</b>: Constant.
|
|
368
|
+
static size_type get_block_size() BOOST_NOEXCEPT_OR_NOTHROW;
|
|
369
|
+
|
|
370
|
+
//////////////////////////////////////////////
|
|
371
|
+
//
|
|
372
|
+
// iterators
|
|
373
|
+
//
|
|
374
|
+
//////////////////////////////////////////////
|
|
375
|
+
|
|
376
|
+
//! <b>Effects</b>: Returns an iterator to the first element contained in the container.
|
|
377
|
+
//!
|
|
378
|
+
//! <b>Throws</b>: Nothing.
|
|
379
|
+
//!
|
|
380
|
+
//! <b>Complexity</b>: Constant.
|
|
381
|
+
BOOST_CONTAINER_NODISCARD iterator begin() BOOST_NOEXCEPT_OR_NOTHROW;
|
|
382
|
+
|
|
383
|
+
//! <b>Effects</b>: Returns a const_iterator to the first element contained in the container.
|
|
384
|
+
//!
|
|
385
|
+
//! <b>Throws</b>: Nothing.
|
|
386
|
+
//!
|
|
387
|
+
//! <b>Complexity</b>: Constant.
|
|
388
|
+
BOOST_CONTAINER_NODISCARD const_iterator begin() const BOOST_NOEXCEPT_OR_NOTHROW;
|
|
389
|
+
|
|
390
|
+
//! <b>Effects</b>: Returns an iterator to the end of the container.
|
|
391
|
+
//!
|
|
392
|
+
//! <b>Throws</b>: Nothing.
|
|
393
|
+
//!
|
|
394
|
+
//! <b>Complexity</b>: Constant.
|
|
395
|
+
BOOST_CONTAINER_NODISCARD iterator end() BOOST_NOEXCEPT_OR_NOTHROW;
|
|
396
|
+
|
|
397
|
+
//! <b>Effects</b>: Returns a const_iterator to the end of the container.
|
|
398
|
+
//!
|
|
399
|
+
//! <b>Throws</b>: Nothing.
|
|
400
|
+
//!
|
|
401
|
+
//! <b>Complexity</b>: Constant.
|
|
402
|
+
BOOST_CONTAINER_NODISCARD const_iterator end() const BOOST_NOEXCEPT_OR_NOTHROW;
|
|
403
|
+
|
|
404
|
+
//! <b>Effects</b>: Returns a reverse_iterator pointing to the beginning
|
|
405
|
+
//! of the reversed container.
|
|
406
|
+
//!
|
|
407
|
+
//! <b>Throws</b>: Nothing.
|
|
408
|
+
//!
|
|
409
|
+
//! <b>Complexity</b>: Constant.
|
|
410
|
+
BOOST_CONTAINER_NODISCARD reverse_iterator rbegin() BOOST_NOEXCEPT_OR_NOTHROW;
|
|
411
|
+
|
|
412
|
+
//! <b>Effects</b>: Returns a const_reverse_iterator pointing to the beginning
|
|
413
|
+
//! of the reversed container.
|
|
414
|
+
//!
|
|
415
|
+
//! <b>Throws</b>: Nothing.
|
|
416
|
+
//!
|
|
417
|
+
//! <b>Complexity</b>: Constant.
|
|
418
|
+
BOOST_CONTAINER_NODISCARD const_reverse_iterator rbegin() const BOOST_NOEXCEPT_OR_NOTHROW;
|
|
419
|
+
|
|
420
|
+
//! <b>Effects</b>: Returns a reverse_iterator pointing to the end
|
|
421
|
+
//! of the reversed container.
|
|
422
|
+
//!
|
|
423
|
+
//! <b>Throws</b>: Nothing.
|
|
424
|
+
//!
|
|
425
|
+
//! <b>Complexity</b>: Constant.
|
|
426
|
+
BOOST_CONTAINER_NODISCARD reverse_iterator rend() BOOST_NOEXCEPT_OR_NOTHROW;
|
|
427
|
+
|
|
428
|
+
//! <b>Effects</b>: Returns a const_reverse_iterator pointing to the end
|
|
429
|
+
//! of the reversed container.
|
|
430
|
+
//!
|
|
431
|
+
//! <b>Throws</b>: Nothing.
|
|
432
|
+
//!
|
|
433
|
+
//! <b>Complexity</b>: Constant.
|
|
434
|
+
BOOST_CONTAINER_NODISCARD const_reverse_iterator rend() const BOOST_NOEXCEPT_OR_NOTHROW;
|
|
435
|
+
|
|
436
|
+
//! <b>Effects</b>: Returns a const_iterator to the first element contained in the container.
|
|
437
|
+
//!
|
|
438
|
+
//! <b>Throws</b>: Nothing.
|
|
439
|
+
//!
|
|
440
|
+
//! <b>Complexity</b>: Constant.
|
|
441
|
+
BOOST_CONTAINER_NODISCARD const_iterator cbegin() const BOOST_NOEXCEPT_OR_NOTHROW;
|
|
442
|
+
|
|
443
|
+
//! <b>Effects</b>: Returns a const_iterator to the end of the container.
|
|
444
|
+
//!
|
|
445
|
+
//! <b>Throws</b>: Nothing.
|
|
446
|
+
//!
|
|
447
|
+
//! <b>Complexity</b>: Constant.
|
|
448
|
+
BOOST_CONTAINER_NODISCARD const_iterator cend() const BOOST_NOEXCEPT_OR_NOTHROW;
|
|
449
|
+
|
|
450
|
+
//! <b>Effects</b>: Returns a const_reverse_iterator pointing to the beginning
|
|
451
|
+
//! of the reversed container.
|
|
452
|
+
//!
|
|
453
|
+
//! <b>Throws</b>: Nothing.
|
|
454
|
+
//!
|
|
455
|
+
//! <b>Complexity</b>: Constant.
|
|
456
|
+
BOOST_CONTAINER_NODISCARD const_reverse_iterator crbegin() const BOOST_NOEXCEPT_OR_NOTHROW;
|
|
457
|
+
|
|
458
|
+
//! <b>Effects</b>: Returns a const_reverse_iterator pointing to the end
|
|
459
|
+
//! of the reversed container.
|
|
460
|
+
//!
|
|
461
|
+
//! <b>Throws</b>: Nothing.
|
|
462
|
+
//!
|
|
463
|
+
//! <b>Complexity</b>: Constant.
|
|
464
|
+
BOOST_CONTAINER_NODISCARD const_reverse_iterator crend() const BOOST_NOEXCEPT_OR_NOTHROW;
|
|
465
|
+
|
|
466
|
+
//////////////////////////////////////////////
|
|
467
|
+
//
|
|
468
|
+
// element access
|
|
469
|
+
//
|
|
470
|
+
//////////////////////////////////////////////
|
|
471
|
+
|
|
472
|
+
//! <b>Effects</b>: Returns true if the container contains no elements.
|
|
473
|
+
//!
|
|
474
|
+
//! <b>Throws</b>: Nothing.
|
|
475
|
+
//!
|
|
476
|
+
//! <b>Complexity</b>: Constant.
|
|
477
|
+
BOOST_CONTAINER_NODISCARD bool empty() const BOOST_NOEXCEPT_OR_NOTHROW;
|
|
478
|
+
|
|
479
|
+
//! <b>Effects</b>: Returns the number of the elements contained in the container.
|
|
480
|
+
//!
|
|
481
|
+
//! <b>Throws</b>: Nothing.
|
|
482
|
+
//!
|
|
483
|
+
//! <b>Complexity</b>: Constant.
|
|
484
|
+
BOOST_CONTAINER_NODISCARD size_type size() const BOOST_NOEXCEPT_OR_NOTHROW;
|
|
485
|
+
|
|
486
|
+
//! <b>Effects</b>: Returns the largest possible size of the container.
|
|
487
|
+
//!
|
|
488
|
+
//! <b>Throws</b>: Nothing.
|
|
489
|
+
//!
|
|
490
|
+
//! <b>Complexity</b>: Constant.
|
|
491
|
+
BOOST_CONTAINER_NODISCARD size_type max_size() const BOOST_NOEXCEPT_OR_NOTHROW;
|
|
492
|
+
|
|
493
|
+
//! <b>Requires</b>: !empty()
|
|
494
|
+
//!
|
|
495
|
+
//! <b>Effects</b>: Returns a reference to the first element of the container.
|
|
496
|
+
//!
|
|
497
|
+
//! <b>Throws</b>: Nothing.
|
|
498
|
+
//!
|
|
499
|
+
//! <b>Complexity</b>: Constant.
|
|
500
|
+
BOOST_CONTAINER_NODISCARD reference front();
|
|
501
|
+
|
|
502
|
+
//! <b>Requires</b>: !empty()
|
|
503
|
+
//!
|
|
504
|
+
//! <b>Effects</b>: Returns a const reference to the first element from the beginning of the container.
|
|
505
|
+
//!
|
|
506
|
+
//! <b>Throws</b>: Nothing.
|
|
507
|
+
//!
|
|
508
|
+
//! <b>Complexity</b>: Constant.
|
|
509
|
+
BOOST_CONTAINER_NODISCARD const_reference front() const;
|
|
510
|
+
|
|
511
|
+
//! <b>Requires</b>: !empty()
|
|
512
|
+
//!
|
|
513
|
+
//! <b>Effects</b>: Returns a reference to the last element of the container.
|
|
514
|
+
//!
|
|
515
|
+
//! <b>Throws</b>: Nothing.
|
|
516
|
+
//!
|
|
517
|
+
//! <b>Complexity</b>: Constant.
|
|
518
|
+
BOOST_CONTAINER_NODISCARD reference back();
|
|
519
|
+
|
|
520
|
+
//! <b>Requires</b>: !empty()
|
|
521
|
+
//!
|
|
522
|
+
//! <b>Effects</b>: Returns a const reference to the last element of the container.
|
|
523
|
+
//!
|
|
524
|
+
//! <b>Throws</b>: Nothing.
|
|
525
|
+
//!
|
|
526
|
+
//! <b>Complexity</b>: Constant.
|
|
527
|
+
BOOST_CONTAINER_NODISCARD const_reference back() const;
|
|
528
|
+
|
|
529
|
+
//! <b>Requires</b>: size() > n.
|
|
530
|
+
//!
|
|
531
|
+
//! <b>Effects</b>: Returns a reference to the nth element from the beginning of the container.
|
|
532
|
+
//!
|
|
533
|
+
//! <b>Throws</b>: Nothing.
|
|
534
|
+
//!
|
|
535
|
+
//! <b>Complexity</b>: Constant.
|
|
536
|
+
BOOST_CONTAINER_NODISCARD reference operator[](size_type n);
|
|
537
|
+
|
|
538
|
+
//! <b>Requires</b>: size() > n.
|
|
539
|
+
//!
|
|
540
|
+
//! <b>Effects</b>: Returns a const reference to the nth element from the beginning of the container.
|
|
541
|
+
//!
|
|
542
|
+
//! <b>Throws</b>: Nothing.
|
|
543
|
+
//!
|
|
544
|
+
//! <b>Complexity</b>: Constant.
|
|
545
|
+
BOOST_CONTAINER_NODISCARD const_reference operator[](size_type n) const;
|
|
546
|
+
|
|
547
|
+
//! <b>Requires</b>: size() > n.
|
|
548
|
+
//!
|
|
549
|
+
//! <b>Effects</b>: Returns a reference to the nth element from the beginning of the container.
|
|
550
|
+
//!
|
|
551
|
+
//! <b>Throws</b>: range_error if n >= size()
|
|
552
|
+
//!
|
|
553
|
+
//! <b>Complexity</b>: Constant.
|
|
554
|
+
BOOST_CONTAINER_NODISCARD reference at(size_type n);
|
|
555
|
+
|
|
556
|
+
//! <b>Requires</b>: size() > n.
|
|
557
|
+
//!
|
|
558
|
+
//! <b>Effects</b>: Returns a const reference to the nth element from the beginning of the container.
|
|
559
|
+
//!
|
|
560
|
+
//! <b>Throws</b>: range_error if n >= size()
|
|
561
|
+
//!
|
|
562
|
+
//! <b>Complexity</b>: Constant.
|
|
563
|
+
BOOST_CONTAINER_NODISCARD const_reference at(size_type n) const;
|
|
564
|
+
|
|
565
|
+
//////////////////////////////////////////////
|
|
566
|
+
//
|
|
567
|
+
// allocator
|
|
568
|
+
//
|
|
569
|
+
//////////////////////////////////////////////
|
|
570
|
+
|
|
571
|
+
//! <b>Effects</b>: Returns a copy of the internal allocator.
|
|
572
|
+
//!
|
|
573
|
+
//! <b>Throws</b>: If allocator's copy constructor throws.
|
|
574
|
+
//!
|
|
575
|
+
//! <b>Complexity</b>: Constant.
|
|
576
|
+
BOOST_CONTAINER_NODISCARD allocator_type get_allocator() const BOOST_NOEXCEPT_OR_NOTHROW;
|
|
577
|
+
|
|
578
|
+
//! <b>Effects</b>: Returns a reference to the internal allocator.
|
|
579
|
+
//!
|
|
580
|
+
//! <b>Throws</b>: Nothing
|
|
581
|
+
//!
|
|
582
|
+
//! <b>Complexity</b>: Constant.
|
|
583
|
+
//!
|
|
584
|
+
//! <b>Note</b>: Non-standard extension.
|
|
585
|
+
BOOST_CONTAINER_NODISCARD const stored_allocator_type& get_stored_allocator() const BOOST_NOEXCEPT_OR_NOTHROW;
|
|
586
|
+
|
|
587
|
+
//! <b>Effects</b>: Returns a reference to the internal allocator.
|
|
588
|
+
//!
|
|
589
|
+
//! <b>Throws</b>: Nothing
|
|
590
|
+
//!
|
|
591
|
+
//! <b>Complexity</b>: Constant.
|
|
592
|
+
//!
|
|
593
|
+
//! <b>Note</b>: Non-standard extension.
|
|
594
|
+
BOOST_CONTAINER_NODISCARD stored_allocator_type& get_stored_allocator() BOOST_NOEXCEPT_OR_NOTHROW;
|
|
595
|
+
|
|
596
|
+
//////////////////////////////////////////////
|
|
597
|
+
//
|
|
598
|
+
// modifiers
|
|
599
|
+
//
|
|
600
|
+
//////////////////////////////////////////////
|
|
601
|
+
|
|
602
|
+
//! <b>Effects</b>: Assigns the n copies of val to *this.
|
|
603
|
+
//!
|
|
604
|
+
//! <b>Throws</b>: If memory allocation throws or T's copy constructor throws.
|
|
605
|
+
//!
|
|
606
|
+
//! <b>Complexity</b>: Linear to n.
|
|
607
|
+
void assign(size_type n, const value_type& value);
|
|
608
|
+
|
|
609
|
+
//! <b>Effects</b>: Assigns the range [first, last) to *this.
|
|
610
|
+
//!
|
|
611
|
+
//! <b>Throws</b>: If memory allocation throws or
|
|
612
|
+
//! T's constructor from dereferencing InIt throws.
|
|
613
|
+
//!
|
|
614
|
+
//! <b>Complexity</b>: Linear to the distance [first, last).
|
|
615
|
+
template <class InIt>
|
|
616
|
+
void assign(InIt first, InIt last);
|
|
617
|
+
|
|
618
|
+
//! <b>Effects</b>: Assigns the range [il.begin(), il.end()) to *this.
|
|
619
|
+
//!
|
|
620
|
+
//! <b>Throws</b>: If memory allocation throws or
|
|
621
|
+
//! T's constructor from dereferencing std::initializer_list iterator throws.
|
|
622
|
+
//!
|
|
623
|
+
//! <b>Complexity</b>: Linear to il.size().
|
|
624
|
+
void assign(std::initializer_list<value_type> il);
|
|
625
|
+
|
|
626
|
+
//! <b>Effects</b>: Erases all the elements of the container.
|
|
627
|
+
//!
|
|
628
|
+
//! <b>Throws</b>: Nothing.
|
|
629
|
+
//!
|
|
630
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
|
631
|
+
void clear() BOOST_NOEXCEPT_OR_NOTHROW;
|
|
632
|
+
|
|
633
|
+
//! <b>Requires</b>: p must be a valid iterator of *this.
|
|
634
|
+
//!
|
|
635
|
+
//! <b>Effects</b>: Inserts an object of type T constructed with
|
|
636
|
+
//! std::forward<Args>(args)... before p
|
|
637
|
+
//!
|
|
638
|
+
//! <b>Throws</b>: If memory allocation throws or the in-place constructor throws.
|
|
639
|
+
//!
|
|
640
|
+
//! <b>Complexity</b>: If p is end(), amortized constant time
|
|
641
|
+
//! Linear time otherwise.
|
|
642
|
+
template <class... Args>
|
|
643
|
+
iterator emplace(const_iterator p, BOOST_FWD_REF(Args)... args);
|
|
644
|
+
|
|
645
|
+
//! <b>Effects</b>: Inserts an object of type T constructed with
|
|
646
|
+
//! std::forward<Args>(args)... at the end of the container.
|
|
647
|
+
//!
|
|
648
|
+
//! <b>Returns</b>: A reference to the created object.
|
|
649
|
+
//!
|
|
650
|
+
//! <b>Throws</b>: If memory allocation throws or the in-place constructor throws.
|
|
651
|
+
//!
|
|
652
|
+
//! <b>Complexity</b>: Amortized constant time
|
|
653
|
+
template <class... Args>
|
|
654
|
+
reference emplace_back(BOOST_FWD_REF(Args)... args);
|
|
655
|
+
|
|
656
|
+
//! <b>Requires</b>: p must be a valid iterator of *this.
|
|
657
|
+
//!
|
|
658
|
+
//! <b>Effects</b>: Insert a copy of x before p.
|
|
659
|
+
//!
|
|
660
|
+
//! <b>Returns</b>: an iterator to the inserted element.
|
|
661
|
+
//!
|
|
662
|
+
//! <b>Throws</b>: If memory allocation throws or x's copy constructor throws.
|
|
663
|
+
//!
|
|
664
|
+
//! <b>Complexity</b>: If p is end(), amortized constant time
|
|
665
|
+
//! Linear time otherwise.
|
|
666
|
+
iterator insert(const_iterator p, const value_type& x);
|
|
667
|
+
|
|
668
|
+
//! <b>Requires</b>: p must be a valid iterator of *this.
|
|
669
|
+
//!
|
|
670
|
+
//! <b>Effects</b>: Insert a new element before p with x's resources.
|
|
671
|
+
//!
|
|
672
|
+
//! <b>Returns</b>: an iterator to the inserted element.
|
|
673
|
+
//!
|
|
674
|
+
//! <b>Throws</b>: If memory allocation throws.
|
|
675
|
+
//!
|
|
676
|
+
//! <b>Complexity</b>: If p is end(), amortized constant time
|
|
677
|
+
//! Linear time otherwise.
|
|
678
|
+
iterator insert(const_iterator p, BOOST_RV_REF(value_type) x);
|
|
679
|
+
|
|
680
|
+
//! <b>Requires</b>: pos must be a valid iterator of *this.
|
|
681
|
+
//!
|
|
682
|
+
//! <b>Effects</b>: Insert n copies of x before pos.
|
|
683
|
+
//!
|
|
684
|
+
//! <b>Returns</b>: an iterator to the first inserted element or pos if n is 0.
|
|
685
|
+
//!
|
|
686
|
+
//! <b>Throws</b>: If memory allocation throws or T's copy constructor throws.
|
|
687
|
+
//!
|
|
688
|
+
//! <b>Complexity</b>: Linear to n.
|
|
689
|
+
iterator insert(const_iterator pos, size_type n, const value_type& x),
|
|
690
|
+
|
|
691
|
+
//! <b>Requires</b>: pos must be a valid iterator of *this.
|
|
692
|
+
//!
|
|
693
|
+
//! <b>Effects</b>: Insert a copy of the [first, last) range before pos.
|
|
694
|
+
//!
|
|
695
|
+
//! <b>Returns</b>: an iterator to the first inserted element or pos if first == last.
|
|
696
|
+
//!
|
|
697
|
+
//! <b>Throws</b>: If memory allocation throws, T's constructor from a
|
|
698
|
+
//! dereferenced InIt throws or T's copy constructor throws.
|
|
699
|
+
//!
|
|
700
|
+
//! <b>Complexity</b>: Linear to distance [first, last).
|
|
701
|
+
template <class InIt>
|
|
702
|
+
iterator insert(const_iterator pos, InIt first, InIt last);
|
|
703
|
+
|
|
704
|
+
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
|
705
|
+
//! <b>Requires</b>: pos must be a valid iterator of *this.
|
|
706
|
+
//!
|
|
707
|
+
//! <b>Effects</b>: Insert a copy of the [il.begin(), il.end()) range before pos.
|
|
708
|
+
//!
|
|
709
|
+
//! <b>Returns</b>: an iterator to the first inserted element or pos if il.begin() == il.end().
|
|
710
|
+
//!
|
|
711
|
+
//! <b>Throws</b>: If memory allocation throws, T's constructor from a
|
|
712
|
+
//! dereferenced std::initializer_list throws or T's copy constructor throws.
|
|
713
|
+
//!
|
|
714
|
+
//! <b>Complexity</b>: Linear to distance [il.begin(), il.end()).
|
|
715
|
+
iterator insert(const_iterator pos, std::initializer_list<value_type> il);
|
|
716
|
+
#endif
|
|
717
|
+
|
|
718
|
+
//! <b>Effects</b>: Erases the element at p.
|
|
719
|
+
//!
|
|
720
|
+
//! <b>Throws</b>: Nothing.
|
|
721
|
+
//!
|
|
722
|
+
//! <b>Complexity</b>: Linear to the elements between pos and the
|
|
723
|
+
//! last element (if pos is near the end) or the first element
|
|
724
|
+
//! if (pos is near the beginning).
|
|
725
|
+
//! Constant if pos is the first or the last element.
|
|
726
|
+
iterator erase(const_iterator p) BOOST_NOEXCEPT_OR_NOTHROW;
|
|
727
|
+
|
|
728
|
+
//! <b>Effects</b>: Erases the elements pointed by [first, last).
|
|
729
|
+
//!
|
|
730
|
+
//! <b>Throws</b>: Nothing.
|
|
731
|
+
//!
|
|
732
|
+
//! <b>Complexity</b>: Linear to the distance between first and
|
|
733
|
+
//! last plus the elements between pos and the
|
|
734
|
+
//! last element (if pos is near the end) or the first element
|
|
735
|
+
//! if (pos is near the beginning).
|
|
736
|
+
iterator erase(const_iterator first, const_iterator last) BOOST_NOEXCEPT_OR_NOTHROW;
|
|
737
|
+
|
|
738
|
+
//! <b>Effects</b>: Inserts a copy of x at the end of the container.
|
|
739
|
+
//!
|
|
740
|
+
//! <b>Throws</b>: If memory allocation throws or
|
|
741
|
+
//! T's copy constructor throws.
|
|
742
|
+
//!
|
|
743
|
+
//! <b>Complexity</b>: Amortized constant time.
|
|
744
|
+
void push_back(const value_type& x);
|
|
745
|
+
|
|
746
|
+
//! <b>Effects</b>: Constructs a new element at the end of the container
|
|
747
|
+
//! and moves the resources of x to this new element.
|
|
748
|
+
//!
|
|
749
|
+
//! <b>Throws</b>: If memory allocation throws.
|
|
750
|
+
//!
|
|
751
|
+
//! <b>Complexity</b>: Amortized constant time.
|
|
752
|
+
void push_back(BOOST_RV_REF(value_type) x);
|
|
753
|
+
|
|
754
|
+
//! <b>Effects</b>: Removes the last element from the container.
|
|
755
|
+
//!
|
|
756
|
+
//! <b>Throws</b>: Nothing.
|
|
757
|
+
//!
|
|
758
|
+
//! <b>Complexity</b>: Constant time.
|
|
759
|
+
void pop_back() BOOST_NOEXCEPT_OR_NOTHROW;
|
|
760
|
+
|
|
761
|
+
//! <b>Effects</b>: Inserts or erases elements at the end such that
|
|
762
|
+
//! the size becomes n. New elements are value initialized.
|
|
763
|
+
//!
|
|
764
|
+
//! <b>Throws</b>: If memory allocation throws, or T's constructor throws.
|
|
765
|
+
//!
|
|
766
|
+
//! <b>Complexity</b>: Linear to the difference between size() and new_size.
|
|
767
|
+
void resize(size_type new_size);
|
|
768
|
+
|
|
769
|
+
//! <b>Effects</b>: Inserts or erases elements at the end such that
|
|
770
|
+
//! the size becomes n. New elements are default initialized.
|
|
771
|
+
//!
|
|
772
|
+
//! <b>Throws</b>: If memory allocation throws, or T's constructor throws.
|
|
773
|
+
//!
|
|
774
|
+
//! <b>Complexity</b>: Linear to the difference between size() and new_size.
|
|
775
|
+
//!
|
|
776
|
+
//! <b>Note</b>: Non-standard extension
|
|
777
|
+
void resize(size_type new_size, default_init_t);
|
|
778
|
+
|
|
779
|
+
//! <b>Effects</b>: Inserts or erases elements at the end such that
|
|
780
|
+
//! the size becomes n. New elements are copy constructed from x.
|
|
781
|
+
//!
|
|
782
|
+
//! <b>Throws</b>: If memory allocation throws, or T's copy constructor throws.
|
|
783
|
+
//!
|
|
784
|
+
//! <b>Complexity</b>: Linear to the difference between size() and new_size.
|
|
785
|
+
void resize(size_type new_size, const value_type& x);
|
|
786
|
+
|
|
787
|
+
//! <b>Effects</b>: Swaps the contents of *this and x.
|
|
788
|
+
//!
|
|
789
|
+
//! <b>Throws</b>: Nothing.
|
|
790
|
+
//!
|
|
791
|
+
//! <b>Complexity</b>: Constant.
|
|
792
|
+
void swap(segtor& x);
|
|
793
|
+
#endif //#ifdef BOOST_CONTAINER_DOXYGEN_INVOKED
|
|
794
|
+
|
|
795
|
+
//! <b>Effects</b>: Returns true if x and y are equal
|
|
796
|
+
//!
|
|
797
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
|
798
|
+
BOOST_CONTAINER_NODISCARD inline
|
|
799
|
+
friend bool operator==(const segtor& x, const segtor& y)
|
|
800
|
+
{ return static_cast<const base_type&>(x) == static_cast<const base_type&>(y); }
|
|
801
|
+
|
|
802
|
+
//! <b>Effects</b>: Returns true if x and y are unequal
|
|
803
|
+
//!
|
|
804
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
|
805
|
+
BOOST_CONTAINER_NODISCARD inline
|
|
806
|
+
friend bool operator!=(const segtor& x, const segtor& y)
|
|
807
|
+
{ return static_cast<const base_type&>(x) != static_cast<const base_type&>(y); }
|
|
808
|
+
|
|
809
|
+
//! <b>Effects</b>: Returns true if x is less than y
|
|
810
|
+
//!
|
|
811
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
|
812
|
+
BOOST_CONTAINER_NODISCARD inline
|
|
813
|
+
friend bool operator<(const segtor& x, const segtor& y)
|
|
814
|
+
{ return static_cast<const base_type&>(x) < static_cast<const base_type&>(y); }
|
|
815
|
+
|
|
816
|
+
//! <b>Effects</b>: Returns true if x is greater than y
|
|
817
|
+
//!
|
|
818
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
|
819
|
+
BOOST_CONTAINER_NODISCARD inline
|
|
820
|
+
friend bool operator>(const segtor& x, const segtor& y)
|
|
821
|
+
{ return static_cast<const base_type&>(x) > static_cast<const base_type&>(y); }
|
|
822
|
+
|
|
823
|
+
//! <b>Effects</b>: Returns true if x is equal or less than y
|
|
824
|
+
//!
|
|
825
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
|
826
|
+
BOOST_CONTAINER_NODISCARD inline
|
|
827
|
+
friend bool operator<=(const segtor& x, const segtor& y)
|
|
828
|
+
{ return static_cast<const base_type&>(x) <= static_cast<const base_type&>(y); }
|
|
829
|
+
|
|
830
|
+
//! <b>Effects</b>: Returns true if x is equal or greater than y
|
|
831
|
+
//!
|
|
832
|
+
//! <b>Complexity</b>: Linear to the number of elements in the container.
|
|
833
|
+
BOOST_CONTAINER_NODISCARD inline
|
|
834
|
+
friend bool operator>=(const segtor& x, const segtor& y)
|
|
835
|
+
{ return static_cast<const base_type&>(x) >= static_cast<const base_type&>(y); }
|
|
836
|
+
|
|
837
|
+
//! <b>Effects</b>: x.swap(y)
|
|
838
|
+
//!
|
|
839
|
+
//! <b>Complexity</b>: Constant.
|
|
840
|
+
inline friend void swap(segtor& x, segtor& y)
|
|
841
|
+
BOOST_NOEXCEPT_IF(BOOST_NOEXCEPT(x.swap(y)))
|
|
842
|
+
{ static_cast<base_type&>(x).swap(static_cast<base_type&>(y)); }
|
|
843
|
+
|
|
844
|
+
};
|
|
845
|
+
|
|
846
|
+
|
|
847
|
+
#ifndef BOOST_CONTAINER_NO_CXX17_CTAD
|
|
848
|
+
|
|
849
|
+
//! <b>Deduction guide</b>: allows a `segtor` to be constructed from the iterator
|
|
850
|
+
//! range <code>[first, last)</code>, deducing the element type from the value type
|
|
851
|
+
//! of `InputIterator` and using the default allocator.
|
|
852
|
+
template <typename InputIterator>
|
|
853
|
+
segtor(InputIterator, InputIterator) ->
|
|
854
|
+
segtor<typename iter_value<InputIterator>::type>;
|
|
855
|
+
|
|
856
|
+
//! <b>Deduction guide</b>: allows a `segtor` to be constructed from the iterator
|
|
857
|
+
//! range <code>[first, last)</code>, deducing the element type from the value type
|
|
858
|
+
//! of `InputIterator` and taking the allocator type from the supplied allocator.
|
|
859
|
+
template <typename InputIterator, typename Allocator>
|
|
860
|
+
segtor(InputIterator, InputIterator, Allocator const&) ->
|
|
861
|
+
segtor<typename iter_value<InputIterator>::type, Allocator>;
|
|
862
|
+
|
|
863
|
+
#endif
|
|
864
|
+
|
|
865
|
+
//! <b>Effects</b>: Erases all elements that compare equal to v from the container c.
|
|
866
|
+
//!
|
|
867
|
+
//! <b>Complexity</b>: Linear.
|
|
868
|
+
template <class T, class A, class O, class U>
|
|
869
|
+
inline typename segtor<T, A, O>::size_type erase(segtor<T, A, O>& c, const U& v)
|
|
870
|
+
{
|
|
871
|
+
typename segtor<T, A, O>::size_type old_size = c.size();
|
|
872
|
+
c.erase(boost::container::remove(c.begin(), c.end(), v), c.end());
|
|
873
|
+
return old_size - c.size();
|
|
874
|
+
}
|
|
875
|
+
|
|
876
|
+
//! <b>Effects</b>: Erases all elements that satisfy the predicate pred from the container c.
|
|
877
|
+
//!
|
|
878
|
+
//! <b>Complexity</b>: Linear.
|
|
879
|
+
template <class T, class A, class O, class Pred>
|
|
880
|
+
inline typename segtor<T, A, O>::size_type erase_if(segtor<T, A, O>& c, Pred pred)
|
|
881
|
+
{
|
|
882
|
+
typename segtor<T, A, O>::size_type old_size = c.size();
|
|
883
|
+
c.erase(boost::container::remove_if(c.begin(), c.end(), pred), c.end());
|
|
884
|
+
return old_size - c.size();
|
|
885
|
+
}
|
|
886
|
+
|
|
887
|
+
} //namespace container {
|
|
888
|
+
} //namespace boost {
|
|
889
|
+
|
|
890
|
+
#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
|
891
|
+
|
|
892
|
+
namespace boost {
|
|
893
|
+
|
|
894
|
+
template <class T, class Allocator, class Options>
|
|
895
|
+
struct has_trivial_destructor_after_move<boost::container::segtor<T, Allocator, Options> >
|
|
896
|
+
: has_trivial_destructor_after_move<boost::container::deque_impl<T, Allocator, true, Options> >
|
|
897
|
+
{};
|
|
898
|
+
|
|
899
|
+
} //namespace boost {
|
|
900
|
+
|
|
901
|
+
#endif //#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
|
|
902
|
+
|
|
903
|
+
#include <boost/container/detail/config_end.hpp>
|
|
904
|
+
|
|
905
|
+
#endif //#ifndef BOOST_CONTAINER_SEGTOR_HPP
|