roast-ai 1.0.2 → 1.2.0
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/.claude/commands/docs/write-comments.md +1 -1
- data/.rubocop.yml +12 -1
- data/Gemfile +2 -2
- data/Gemfile.lock +149 -34
- data/README.md +56 -3
- data/examples/agent_with_multiple_prompts.rb +27 -0
- data/examples/custom_logging.rb +4 -2
- data/examples/demo/Gemfile.lock +49 -15
- data/examples/plugin-gem-example/Gemfile.lock +19 -15
- data/examples/simple_chat.rb +1 -1
- data/examples/simple_pi_agent.rb +18 -0
- data/internal/rubocop/cop/roast/no_test_class_nesting.rb +126 -0
- data/internal/rubocop/rubocop-roast.yml +6 -0
- data/internal/workflows/maintenance/branch_docs_impact.rb +97 -0
- data/internal/workflows/maintenance/deprecated_models_docs_updater.rb +78 -0
- data/lib/roast/cog/config.rb +1 -1
- data/lib/roast/cog/output.rb +2 -1
- data/lib/roast/cog/registry.rb +3 -3
- data/lib/roast/cog_input_manager.rb +28 -7
- data/lib/roast/cogs/agent/config.rb +2 -2
- data/lib/roast/cogs/agent/input.rb +20 -22
- data/lib/roast/cogs/agent/providers/claude/claude_invocation.rb +13 -5
- data/lib/roast/cogs/agent/providers/claude/messages/result_message.rb +1 -1
- data/lib/roast/cogs/agent/providers/claude/tool_result.rb +344 -4
- data/lib/roast/cogs/agent/providers/claude/tool_use.rb +356 -1
- data/lib/roast/cogs/agent/providers/claude.rb +16 -3
- data/lib/roast/cogs/agent/providers/pi/messages/tool_call_message.rb +60 -0
- data/lib/roast/cogs/agent/providers/pi/messages/tool_result_message.rb +57 -0
- data/lib/roast/cogs/agent/providers/pi/pi_invocation.rb +352 -0
- data/lib/roast/cogs/agent/providers/pi.rb +41 -0
- data/lib/roast/cogs/agent/stats.rb +29 -0
- data/lib/roast/cogs/agent/usage.rb +22 -0
- data/lib/roast/cogs/agent.rb +5 -6
- data/lib/roast/cogs/chat/config.rb +28 -2
- data/lib/roast/cogs/chat.rb +82 -10
- data/lib/roast/event.rb +1 -0
- data/lib/roast/event_monitor.rb +35 -3
- data/lib/roast/log.rb +21 -0
- data/lib/roast/log_formatter.rb +9 -7
- data/lib/roast/version.rb +1 -1
- data/lib/roast.rb +1 -3
- data/roast-ai.gemspec +2 -1
- data/sorbet/rbi/gems/activesupport@8.0.2.rbi +549 -383
- data/sorbet/rbi/gems/addressable@2.8.7.rbi +46 -44
- data/sorbet/rbi/gems/ast@2.4.3.rbi +7 -6
- data/sorbet/rbi/gems/async@2.34.0.rbi +21 -3
- data/sorbet/rbi/gems/benchmark@0.4.1.rbi +7 -7
- data/sorbet/rbi/gems/bigdecimal@3.2.2.rbi +198 -1
- data/sorbet/rbi/gems/concurrent-ruby@1.3.5.rbi +405 -328
- data/sorbet/rbi/gems/console@1.34.2.rbi +2 -2
- data/sorbet/rbi/gems/docile@1.4.1.rbi +30 -30
- data/sorbet/rbi/gems/drb@2.2.3.rbi +25 -25
- data/sorbet/rbi/gems/erubi@1.13.1.rbi +2 -0
- data/sorbet/rbi/gems/faraday-net_http@3.4.2.rbi +2 -77
- data/sorbet/rbi/gems/faraday-retry@2.3.2.rbi +2 -57
- data/sorbet/rbi/gems/faraday@2.14.1.rbi +382 -75
- data/sorbet/rbi/gems/guard-compat@1.2.1.rbi +1 -110
- data/sorbet/rbi/gems/guard-minitest@2.4.6.rbi +0 -139
- data/sorbet/rbi/gems/guard@2.19.1.rbi +38 -38
- data/sorbet/rbi/gems/hashdiff@1.2.0.rbi +3 -3
- data/sorbet/rbi/gems/i18n@1.14.7.rbi +53 -29
- data/sorbet/rbi/gems/io-event@1.14.0.rbi +67 -10
- data/sorbet/rbi/gems/json@2.18.1.rbi +227 -5
- data/sorbet/rbi/gems/lint_roller@1.1.0.rbi +83 -0
- data/sorbet/rbi/gems/listen@3.9.0.rbi +7 -7
- data/sorbet/rbi/gems/logger@1.7.0.rbi +3 -3
- data/sorbet/rbi/gems/lumberjack@1.2.10.rbi +21 -21
- data/sorbet/rbi/gems/marcel@1.1.0.rbi +1 -1
- data/sorbet/rbi/gems/minitest-rg@5.3.0.rbi +0 -96
- data/sorbet/rbi/gems/minitest@5.25.5.rbi +1 -16
- data/sorbet/rbi/gems/net-http@0.9.1.rbi +27 -19
- data/sorbet/rbi/gems/netrc@0.11.0.rbi +18 -0
- data/sorbet/rbi/gems/notiffany@0.1.3.rbi +20 -20
- data/sorbet/rbi/gems/ostruct@0.6.2.rbi +149 -15
- data/sorbet/rbi/gems/parser@3.3.8.0.rbi +141 -139
- data/sorbet/rbi/gems/prism@1.4.0.rbi +922 -864
- data/sorbet/rbi/gems/public_suffix@6.0.2.rbi +56 -35
- data/sorbet/rbi/gems/racc@1.8.1.rbi +10 -2
- data/sorbet/rbi/gems/rainbow@3.1.1.rbi +12 -12
- data/sorbet/rbi/gems/rake@13.3.0.rbi +219 -318
- data/sorbet/rbi/gems/{rbi@0.3.6.rbi → rbi@0.3.9.rbi} +612 -2267
- data/sorbet/rbi/gems/{rbs@3.9.4.rbi → rbs@4.0.0.dev.5.rbi} +2013 -680
- data/sorbet/rbi/gems/regexp_parser@2.10.0.rbi +151 -113
- data/sorbet/rbi/gems/require-hooks@0.2.3.rbi +110 -0
- data/sorbet/rbi/gems/rexml@3.4.2.rbi +24 -51
- data/sorbet/rbi/gems/rubocop-ast@1.45.1.rbi +506 -815
- data/sorbet/rbi/gems/rubocop-sorbet@0.10.5.rbi +16 -16
- data/sorbet/rbi/gems/rubocop@1.77.0.rbi +2692 -2327
- data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +8 -8
- data/sorbet/rbi/gems/ruby_llm@1.8.2.rbi +38 -23
- data/sorbet/rbi/gems/securerandom@0.4.1.rbi +1 -1
- data/sorbet/rbi/gems/simplecov-html@0.13.2.rbi +2 -131
- data/sorbet/rbi/gems/simplecov@0.22.0.rbi +28 -127
- data/sorbet/rbi/gems/{spoom@1.6.3.rbi → spoom@1.7.11.rbi} +1139 -2246
- data/sorbet/rbi/gems/sqlite3@2.9.0.rbi +91 -1
- data/sorbet/rbi/gems/{tapioca@0.16.11.rbi → tapioca@0.17.10.rbi} +721 -835
- data/sorbet/rbi/gems/thor@1.4.0.rbi +53 -53
- data/sorbet/rbi/gems/tsort@0.2.0.rbi +393 -0
- data/sorbet/rbi/gems/type_toolkit@0.0.5.rbi +49 -0
- data/sorbet/rbi/gems/tzinfo@2.0.6.rbi +144 -143
- data/sorbet/rbi/gems/uri@1.1.1.rbi +7 -7
- data/sorbet/rbi/gems/vcr@6.3.1.rbi +53 -36
- data/sorbet/rbi/gems/webmock@3.25.1.rbi +38 -13
- data/sorbet/rbi/gems/zeitwerk@2.7.3.rbi +39 -272
- data/sorbet/rbi/shims/lib/roast/execution_context.rbi +3 -3
- data/tutorial/01_your_first_workflow/README.md +9 -5
- data/tutorial/01_your_first_workflow/configured_chat.rb +1 -1
- data/tutorial/02_chaining_cogs/README.md +2 -2
- data/tutorial/02_chaining_cogs/code_review.rb +1 -1
- data/tutorial/02_chaining_cogs/session_resumption.rb +1 -1
- data/tutorial/03_targets_and_params/README.md +1 -1
- data/tutorial/04_configuration_options/README.md +2 -2
- data/tutorial/08_iterative_workflows/README.md +1 -1
- data/tutorial/README.md +1 -1
- metadata +39 -17
- data/docs/AGENT_STEPS.md +0 -288
- data/docs/INSTRUMENTATION.md +0 -243
- data/docs/ITERATION_SYNTAX.md +0 -147
- data/docs/VALIDATION.md +0 -178
- data/lib/roast/nil_assertions.rb +0 -23
- /data/internal/documentation/{architectural-notes.md → comments/architectural-notes.md} +0 -0
- /data/internal/documentation/{doc-comments-external.md → comments/doc-comments-external.md} +0 -0
- /data/internal/documentation/{doc-comments-internal.md → comments/doc-comments-internal.md} +0 -0
- /data/internal/documentation/{doc-comments.md → comments/doc-comments.md} +0 -0
|
@@ -109,7 +109,7 @@ module Concurrent
|
|
|
109
109
|
#
|
|
110
110
|
# @raise [Transaction::AbortError]
|
|
111
111
|
#
|
|
112
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#
|
|
112
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#148
|
|
113
113
|
def abort_transaction; end
|
|
114
114
|
|
|
115
115
|
# Run a block that reads and writes `TVar`s as a single atomic transaction.
|
|
@@ -144,7 +144,7 @@ module Concurrent
|
|
|
144
144
|
# end
|
|
145
145
|
# @raise [ArgumentError]
|
|
146
146
|
#
|
|
147
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#
|
|
147
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#148
|
|
148
148
|
def atomically; end
|
|
149
149
|
|
|
150
150
|
# Number of processors cores available for process scheduling.
|
|
@@ -162,7 +162,7 @@ module Concurrent
|
|
|
162
162
|
|
|
163
163
|
# @raise [ArgumentError]
|
|
164
164
|
#
|
|
165
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#
|
|
165
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#80
|
|
166
166
|
def call_dataflow(method, executor, *inputs, &block); end
|
|
167
167
|
|
|
168
168
|
# The maximum number of processors cores available for process scheduling.
|
|
@@ -212,16 +212,16 @@ module Concurrent
|
|
|
212
212
|
# @yieldparam inputs [Future] each of the `Future` inputs to the dataflow
|
|
213
213
|
# @yieldreturn [Object] the result of the block operation
|
|
214
214
|
#
|
|
215
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#
|
|
215
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#37
|
|
216
216
|
def dataflow(*inputs, &block); end
|
|
217
217
|
|
|
218
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#
|
|
218
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#47
|
|
219
219
|
def dataflow!(*inputs, &block); end
|
|
220
220
|
|
|
221
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#
|
|
221
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#42
|
|
222
222
|
def dataflow_with(executor, *inputs, &block); end
|
|
223
223
|
|
|
224
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#
|
|
224
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#52
|
|
225
225
|
def dataflow_with!(executor, *inputs, &block); end
|
|
226
226
|
|
|
227
227
|
# Disables AtExit handlers including pool auto-termination handlers.
|
|
@@ -287,7 +287,7 @@ module Concurrent
|
|
|
287
287
|
#
|
|
288
288
|
# @raise [Transaction::LeaveError]
|
|
289
289
|
#
|
|
290
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#
|
|
290
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#148
|
|
291
291
|
def leave_transaction; end
|
|
292
292
|
|
|
293
293
|
# Returns the current time as tracked by the application monotonic clock.
|
|
@@ -298,7 +298,7 @@ module Concurrent
|
|
|
298
298
|
# @return [Float] The current monotonic time since some unspecified
|
|
299
299
|
# starting point
|
|
300
300
|
#
|
|
301
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/monotonic_time.rb#
|
|
301
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/monotonic_time.rb#18
|
|
302
302
|
def monotonic_time(unit = T.unsafe(nil)); end
|
|
303
303
|
|
|
304
304
|
# @return [Boolean]
|
|
@@ -323,10 +323,10 @@ module Concurrent
|
|
|
323
323
|
# work or an exception is raised the function will simply return 1.
|
|
324
324
|
#
|
|
325
325
|
# @return [Integer] number physical processor cores on the current system
|
|
326
|
-
# @see
|
|
326
|
+
# @see http://linux.die.net/man/8/sysctl
|
|
327
327
|
# @see http://msdn.microsoft.com/en-us/library/aa394373(v=vs.85).aspx
|
|
328
328
|
# @see http://www.unix.com/man-page/osx/1/HWPREFS/
|
|
329
|
-
# @see
|
|
329
|
+
# @see https://github.com/grosser/parallel/blob/4fc8b89d08c7091fe0419ca8fba1ec3ce5a8d185/lib/parallel.rb
|
|
330
330
|
#
|
|
331
331
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/processor_counter.rb#181
|
|
332
332
|
def physical_processor_count; end
|
|
@@ -388,8 +388,8 @@ class Concurrent::AbstractExchanger < ::Concurrent::Synchronization::Object
|
|
|
388
388
|
# signifies timeout. When `nil` is a valid value in the exchange consider
|
|
389
389
|
# using {#exchange!} or {#try_exchange} instead.
|
|
390
390
|
#
|
|
391
|
-
# @param value [Object] the value to exchange with another thread
|
|
392
391
|
# @param timeout [Numeric, nil] in seconds, `nil` blocks indefinitely
|
|
392
|
+
# @param value [Object] the value to exchange with another thread
|
|
393
393
|
# @return [Object] the value exchanged by the other thread or `nil` on timeout
|
|
394
394
|
#
|
|
395
395
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#69
|
|
@@ -405,8 +405,8 @@ class Concurrent::AbstractExchanger < ::Concurrent::Synchronization::Object
|
|
|
405
405
|
#
|
|
406
406
|
# On timeout a {Concurrent::TimeoutError} exception will be raised.
|
|
407
407
|
#
|
|
408
|
-
# @param value [Object] the value to exchange with another thread
|
|
409
408
|
# @param timeout [Numeric, nil] in seconds, `nil` blocks indefinitely
|
|
409
|
+
# @param value [Object] the value to exchange with another thread
|
|
410
410
|
# @raise [Concurrent::TimeoutError] on timeout
|
|
411
411
|
# @return [Object] the value exchanged by the other thread
|
|
412
412
|
#
|
|
@@ -435,8 +435,8 @@ class Concurrent::AbstractExchanger < ::Concurrent::Synchronization::Object
|
|
|
435
435
|
# else
|
|
436
436
|
# puts 'timeout'
|
|
437
437
|
# end
|
|
438
|
-
# @param value [Object] the value to exchange with another thread
|
|
439
438
|
# @param timeout [Numeric, nil] in seconds, `nil` blocks indefinitely
|
|
439
|
+
# @param value [Object] the value to exchange with another thread
|
|
440
440
|
# @return [Concurrent::Maybe] on success a `Just` maybe will be returned with
|
|
441
441
|
# the item exchanged by the other thread as `#value`; on timeout a
|
|
442
442
|
# `Nothing` maybe will be returned with {Concurrent::TimeoutError} as `#reason`
|
|
@@ -453,8 +453,8 @@ class Concurrent::AbstractExchanger < ::Concurrent::Synchronization::Object
|
|
|
453
453
|
# for the exchange. When the timeout value is `nil` the method will
|
|
454
454
|
# block indefinitely.
|
|
455
455
|
#
|
|
456
|
-
# @param value [Object] the value to exchange with another thread
|
|
457
456
|
# @param timeout [Numeric, nil] in seconds, `nil` blocks indefinitely
|
|
457
|
+
# @param value [Object] the value to exchange with another thread
|
|
458
458
|
# @raise [NotImplementedError]
|
|
459
459
|
# @return [Object, CANCEL] the value exchanged by the other thread; {CANCEL} on timeout
|
|
460
460
|
#
|
|
@@ -895,7 +895,7 @@ class Concurrent::Agent < ::Concurrent::Synchronization::LockableObject
|
|
|
895
895
|
#
|
|
896
896
|
# @return [Object] the current value
|
|
897
897
|
#
|
|
898
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#
|
|
898
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#233
|
|
899
899
|
def deref; end
|
|
900
900
|
|
|
901
901
|
# When {#failed?} and {#error_mode} is `:fail`, returns the error object
|
|
@@ -937,18 +937,18 @@ class Concurrent::Agent < ::Concurrent::Synchronization::LockableObject
|
|
|
937
937
|
# * {#send_via} and {#send_via!} are used when a specific executor is to
|
|
938
938
|
# be used for the action
|
|
939
939
|
#
|
|
940
|
+
# @param action [Proc] the action dispatch to be enqueued
|
|
940
941
|
# @param args [Array<Object>] zero or more arguments to be passed to
|
|
941
942
|
# the action
|
|
942
|
-
# @param action [Proc] the action dispatch to be enqueued
|
|
943
943
|
# @return [Boolean] true if the action is successfully enqueued, false if
|
|
944
944
|
# the Agent is {#failed?}
|
|
945
945
|
# @yield [agent, value, *args] process the old value and return the new
|
|
946
|
-
# @yieldparam value [Object] the current {#value} of the Agent
|
|
947
946
|
# @yieldparam args [Array<Object>] zero or more arguments to pass to the
|
|
948
947
|
# action
|
|
948
|
+
# @yieldparam value [Object] the current {#value} of the Agent
|
|
949
949
|
# @yieldreturn [Object] the new value of the Agent
|
|
950
950
|
#
|
|
951
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#
|
|
951
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#298
|
|
952
952
|
def post(*args, &action); end
|
|
953
953
|
|
|
954
954
|
# When {#failed?} and {#error_mode} is `:fail`, returns the error object
|
|
@@ -957,7 +957,7 @@ class Concurrent::Agent < ::Concurrent::Synchronization::LockableObject
|
|
|
957
957
|
#
|
|
958
958
|
# @return [nil, Error] the error which caused the failure when {#failed?}
|
|
959
959
|
#
|
|
960
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#
|
|
960
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#244
|
|
961
961
|
def reason; end
|
|
962
962
|
|
|
963
963
|
# When an Agent is {#failed?}, changes the Agent {#value} to `new_value`
|
|
@@ -995,15 +995,15 @@ class Concurrent::Agent < ::Concurrent::Synchronization::LockableObject
|
|
|
995
995
|
# * {#send_via} and {#send_via!} are used when a specific executor is to
|
|
996
996
|
# be used for the action
|
|
997
997
|
#
|
|
998
|
+
# @param action [Proc] the action dispatch to be enqueued
|
|
998
999
|
# @param args [Array<Object>] zero or more arguments to be passed to
|
|
999
1000
|
# the action
|
|
1000
|
-
# @param action [Proc] the action dispatch to be enqueued
|
|
1001
1001
|
# @return [Boolean] true if the action is successfully enqueued, false if
|
|
1002
1002
|
# the Agent is {#failed?}
|
|
1003
1003
|
# @yield [agent, value, *args] process the old value and return the new
|
|
1004
|
-
# @yieldparam value [Object] the current {#value} of the Agent
|
|
1005
1004
|
# @yieldparam args [Array<Object>] zero or more arguments to pass to the
|
|
1006
1005
|
# action
|
|
1006
|
+
# @yieldparam value [Object] the current {#value} of the Agent
|
|
1007
1007
|
# @yieldreturn [Object] the new value of the Agent
|
|
1008
1008
|
#
|
|
1009
1009
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#278
|
|
@@ -1026,15 +1026,15 @@ class Concurrent::Agent < ::Concurrent::Synchronization::LockableObject
|
|
|
1026
1026
|
# * {#send_via} and {#send_via!} are used when a specific executor is to
|
|
1027
1027
|
# be used for the action
|
|
1028
1028
|
#
|
|
1029
|
+
# @param action [Proc] the action dispatch to be enqueued
|
|
1029
1030
|
# @param args [Array<Object>] zero or more arguments to be passed to
|
|
1030
1031
|
# the action
|
|
1031
|
-
# @param action [Proc] the action dispatch to be enqueued
|
|
1032
1032
|
# @raise [Concurrent::Agent::Error] if the Agent is {#failed?}
|
|
1033
1033
|
# @return [Boolean] true if the action is successfully enqueued
|
|
1034
1034
|
# @yield [agent, value, *args] process the old value and return the new
|
|
1035
|
-
# @yieldparam value [Object] the current {#value} of the Agent
|
|
1036
1035
|
# @yieldparam args [Array<Object>] zero or more arguments to pass to the
|
|
1037
1036
|
# action
|
|
1037
|
+
# @yieldparam value [Object] the current {#value} of the Agent
|
|
1038
1038
|
# @yieldreturn [Object] the new value of the Agent
|
|
1039
1039
|
#
|
|
1040
1040
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#287
|
|
@@ -1057,15 +1057,15 @@ class Concurrent::Agent < ::Concurrent::Synchronization::LockableObject
|
|
|
1057
1057
|
# * {#send_via} and {#send_via!} are used when a specific executor is to
|
|
1058
1058
|
# be used for the action
|
|
1059
1059
|
#
|
|
1060
|
+
# @param action [Proc] the action dispatch to be enqueued
|
|
1060
1061
|
# @param args [Array<Object>] zero or more arguments to be passed to
|
|
1061
1062
|
# the action
|
|
1062
|
-
# @param action [Proc] the action dispatch to be enqueued
|
|
1063
1063
|
# @return [Boolean] true if the action is successfully enqueued, false if
|
|
1064
1064
|
# the Agent is {#failed?}
|
|
1065
1065
|
# @yield [agent, value, *args] process the old value and return the new
|
|
1066
|
-
# @yieldparam value [Object] the current {#value} of the Agent
|
|
1067
1066
|
# @yieldparam args [Array<Object>] zero or more arguments to pass to the
|
|
1068
1067
|
# action
|
|
1068
|
+
# @yieldparam value [Object] the current {#value} of the Agent
|
|
1069
1069
|
# @yieldreturn [Object] the new value of the Agent
|
|
1070
1070
|
#
|
|
1071
1071
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#294
|
|
@@ -1088,15 +1088,15 @@ class Concurrent::Agent < ::Concurrent::Synchronization::LockableObject
|
|
|
1088
1088
|
# * {#send_via} and {#send_via!} are used when a specific executor is to
|
|
1089
1089
|
# be used for the action
|
|
1090
1090
|
#
|
|
1091
|
+
# @param action [Proc] the action dispatch to be enqueued
|
|
1091
1092
|
# @param args [Array<Object>] zero or more arguments to be passed to
|
|
1092
1093
|
# the action
|
|
1093
|
-
# @param action [Proc] the action dispatch to be enqueued
|
|
1094
1094
|
# @raise [Concurrent::Agent::Error] if the Agent is {#failed?}
|
|
1095
1095
|
# @return [Boolean] true if the action is successfully enqueued
|
|
1096
1096
|
# @yield [agent, value, *args] process the old value and return the new
|
|
1097
|
-
# @yieldparam value [Object] the current {#value} of the Agent
|
|
1098
1097
|
# @yieldparam args [Array<Object>] zero or more arguments to pass to the
|
|
1099
1098
|
# action
|
|
1099
|
+
# @yieldparam value [Object] the current {#value} of the Agent
|
|
1100
1100
|
# @yieldreturn [Object] the new value of the Agent
|
|
1101
1101
|
#
|
|
1102
1102
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#302
|
|
@@ -1119,17 +1119,17 @@ class Concurrent::Agent < ::Concurrent::Synchronization::LockableObject
|
|
|
1119
1119
|
# * {#send_via} and {#send_via!} are used when a specific executor is to
|
|
1120
1120
|
# be used for the action
|
|
1121
1121
|
#
|
|
1122
|
+
# @param action [Proc] the action dispatch to be enqueued
|
|
1122
1123
|
# @param args [Array<Object>] zero or more arguments to be passed to
|
|
1123
1124
|
# the action
|
|
1124
|
-
# @param action [Proc] the action dispatch to be enqueued
|
|
1125
1125
|
# @param executor [Concurrent::ExecutorService] the executor on which the
|
|
1126
1126
|
# action is to be dispatched
|
|
1127
1127
|
# @return [Boolean] true if the action is successfully enqueued, false if
|
|
1128
1128
|
# the Agent is {#failed?}
|
|
1129
1129
|
# @yield [agent, value, *args] process the old value and return the new
|
|
1130
|
-
# @yieldparam value [Object] the current {#value} of the Agent
|
|
1131
1130
|
# @yieldparam args [Array<Object>] zero or more arguments to pass to the
|
|
1132
1131
|
# action
|
|
1132
|
+
# @yieldparam value [Object] the current {#value} of the Agent
|
|
1133
1133
|
# @yieldreturn [Object] the new value of the Agent
|
|
1134
1134
|
#
|
|
1135
1135
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#311
|
|
@@ -1152,17 +1152,17 @@ class Concurrent::Agent < ::Concurrent::Synchronization::LockableObject
|
|
|
1152
1152
|
# * {#send_via} and {#send_via!} are used when a specific executor is to
|
|
1153
1153
|
# be used for the action
|
|
1154
1154
|
#
|
|
1155
|
+
# @param action [Proc] the action dispatch to be enqueued
|
|
1155
1156
|
# @param args [Array<Object>] zero or more arguments to be passed to
|
|
1156
1157
|
# the action
|
|
1157
|
-
# @param action [Proc] the action dispatch to be enqueued
|
|
1158
1158
|
# @param executor [Concurrent::ExecutorService] the executor on which the
|
|
1159
1159
|
# action is to be dispatched
|
|
1160
1160
|
# @raise [Concurrent::Agent::Error] if the Agent is {#failed?}
|
|
1161
1161
|
# @return [Boolean] true if the action is successfully enqueued
|
|
1162
1162
|
# @yield [agent, value, *args] process the old value and return the new
|
|
1163
|
-
# @yieldparam value [Object] the current {#value} of the Agent
|
|
1164
1163
|
# @yieldparam args [Array<Object>] zero or more arguments to pass to the
|
|
1165
1164
|
# action
|
|
1165
|
+
# @yieldparam value [Object] the current {#value} of the Agent
|
|
1166
1166
|
# @yieldreturn [Object] the new value of the Agent
|
|
1167
1167
|
#
|
|
1168
1168
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#319
|
|
@@ -1173,7 +1173,7 @@ class Concurrent::Agent < ::Concurrent::Synchronization::LockableObject
|
|
|
1173
1173
|
# @return [Boolean]
|
|
1174
1174
|
# @see #restart
|
|
1175
1175
|
#
|
|
1176
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#
|
|
1176
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#406
|
|
1177
1177
|
def stopped?; end
|
|
1178
1178
|
|
|
1179
1179
|
# The current value (state) of the Agent, irrespective of any pending or
|
|
@@ -1266,8 +1266,8 @@ class Concurrent::Agent < ::Concurrent::Synchronization::LockableObject
|
|
|
1266
1266
|
# Calling either {#await} or {#wait} (with a timeout of `nil`) will
|
|
1267
1267
|
# hopelessly deadlock the Agent with no possibility of recovery.
|
|
1268
1268
|
#
|
|
1269
|
-
# @param timeout [Float] the maximum number of seconds to wait
|
|
1270
1269
|
# @param agents [Array<Concurrent::Agent>] the Agents on which to wait
|
|
1270
|
+
# @param timeout [Float] the maximum number of seconds to wait
|
|
1271
1271
|
# @return [Boolean] true if all actions complete before timeout else false
|
|
1272
1272
|
#
|
|
1273
1273
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#463
|
|
@@ -1284,8 +1284,8 @@ class Concurrent::Agent < ::Concurrent::Synchronization::LockableObject
|
|
|
1284
1284
|
# Calling either {#await} or {#wait} (with a timeout of `nil`) will
|
|
1285
1285
|
# hopelessly deadlock the Agent with no possibility of recovery.
|
|
1286
1286
|
#
|
|
1287
|
-
# @param timeout [Float] the maximum number of seconds to wait
|
|
1288
1287
|
# @param agents [Array<Concurrent::Agent>] the Agents on which to wait
|
|
1288
|
+
# @param timeout [Float] the maximum number of seconds to wait
|
|
1289
1289
|
# @raise [Concurrent::TimeoutError] when timeout is reached
|
|
1290
1290
|
# @return [Boolean] true if all actions complete before timeout
|
|
1291
1291
|
#
|
|
@@ -1324,52 +1324,77 @@ class Concurrent::Agent::Job < ::Struct
|
|
|
1324
1324
|
# Returns the value of attribute action
|
|
1325
1325
|
#
|
|
1326
1326
|
# @return [Object] the current value of action
|
|
1327
|
+
#
|
|
1328
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#163
|
|
1327
1329
|
def action; end
|
|
1328
1330
|
|
|
1329
1331
|
# Sets the attribute action
|
|
1330
1332
|
#
|
|
1331
1333
|
# @param value [Object] the value to set the attribute action to.
|
|
1332
1334
|
# @return [Object] the newly set value
|
|
1335
|
+
#
|
|
1336
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#163
|
|
1333
1337
|
def action=(_); end
|
|
1334
1338
|
|
|
1335
1339
|
# Returns the value of attribute args
|
|
1336
1340
|
#
|
|
1337
1341
|
# @return [Object] the current value of args
|
|
1342
|
+
#
|
|
1343
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#163
|
|
1338
1344
|
def args; end
|
|
1339
1345
|
|
|
1340
1346
|
# Sets the attribute args
|
|
1341
1347
|
#
|
|
1342
1348
|
# @param value [Object] the value to set the attribute args to.
|
|
1343
1349
|
# @return [Object] the newly set value
|
|
1350
|
+
#
|
|
1351
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#163
|
|
1344
1352
|
def args=(_); end
|
|
1345
1353
|
|
|
1346
1354
|
# Returns the value of attribute caller
|
|
1347
1355
|
#
|
|
1348
1356
|
# @return [Object] the current value of caller
|
|
1357
|
+
#
|
|
1358
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#163
|
|
1349
1359
|
def caller; end
|
|
1350
1360
|
|
|
1351
1361
|
# Sets the attribute caller
|
|
1352
1362
|
#
|
|
1353
1363
|
# @param value [Object] the value to set the attribute caller to.
|
|
1354
1364
|
# @return [Object] the newly set value
|
|
1365
|
+
#
|
|
1366
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#163
|
|
1355
1367
|
def caller=(_); end
|
|
1356
1368
|
|
|
1357
1369
|
# Returns the value of attribute executor
|
|
1358
1370
|
#
|
|
1359
1371
|
# @return [Object] the current value of executor
|
|
1372
|
+
#
|
|
1373
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#163
|
|
1360
1374
|
def executor; end
|
|
1361
1375
|
|
|
1362
1376
|
# Sets the attribute executor
|
|
1363
1377
|
#
|
|
1364
1378
|
# @param value [Object] the value to set the attribute executor to.
|
|
1365
1379
|
# @return [Object] the newly set value
|
|
1380
|
+
#
|
|
1381
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#163
|
|
1366
1382
|
def executor=(_); end
|
|
1367
1383
|
|
|
1368
1384
|
class << self
|
|
1385
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#163
|
|
1369
1386
|
def [](*_arg0); end
|
|
1387
|
+
|
|
1388
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#163
|
|
1370
1389
|
def inspect; end
|
|
1390
|
+
|
|
1391
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#163
|
|
1371
1392
|
def keyword_init?; end
|
|
1393
|
+
|
|
1394
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#163
|
|
1372
1395
|
def members; end
|
|
1396
|
+
|
|
1397
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#163
|
|
1373
1398
|
def new(*_arg0); end
|
|
1374
1399
|
end
|
|
1375
1400
|
end
|
|
@@ -1609,9 +1634,9 @@ Concurrent::ArrayImplementation = Array
|
|
|
1609
1634
|
# horn.await.echo('two') # synchronous, blocking, thread-safe
|
|
1610
1635
|
# # returns an IVar in the :complete state
|
|
1611
1636
|
# @see Concurrent::Actor
|
|
1612
|
-
# @see https://en.wikipedia.org/wiki/Actor_model "Actor Model" at Wikipedia
|
|
1613
|
-
# @see http://www.erlang.org/doc/man/gen_server.html Erlang gen_server
|
|
1614
1637
|
# @see http://c2.com/cgi/wiki?LetItCrash "Let It Crash" at http://c2.com/
|
|
1638
|
+
# @see http://www.erlang.org/doc/man/gen_server.html Erlang gen_server
|
|
1639
|
+
# @see https://en.wikipedia.org/wiki/Actor_model "Actor Model" at Wikipedia
|
|
1615
1640
|
#
|
|
1616
1641
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#217
|
|
1617
1642
|
module Concurrent::Async
|
|
@@ -1674,7 +1699,7 @@ module Concurrent::Async
|
|
|
1674
1699
|
# requested method
|
|
1675
1700
|
# @return [Concurrent::IVar] the completed result of the synchronous operation
|
|
1676
1701
|
#
|
|
1677
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#
|
|
1702
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#433
|
|
1678
1703
|
def call; end
|
|
1679
1704
|
|
|
1680
1705
|
# Causes the chained method call to be performed asynchronously on the
|
|
@@ -1694,7 +1719,7 @@ module Concurrent::Async
|
|
|
1694
1719
|
# the requested method
|
|
1695
1720
|
# @return [Concurrent::IVar] the pending result of the asynchronous operation
|
|
1696
1721
|
#
|
|
1697
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#
|
|
1722
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#415
|
|
1698
1723
|
def cast; end
|
|
1699
1724
|
|
|
1700
1725
|
# Initialize the internal serializer and other stnchronization mechanisms.
|
|
@@ -1719,14 +1744,14 @@ module Concurrent::Async
|
|
|
1719
1744
|
# if too few arguments are given but impossible to determine if too many
|
|
1720
1745
|
# arguments are given. This check may also fail to recognize dynamic behavior
|
|
1721
1746
|
# of the object, such as methods simulated with `method_missing`.
|
|
1722
|
-
# @param obj [Object] the object to check against
|
|
1723
|
-
# @param method [Symbol] the method to check the object for
|
|
1724
1747
|
# @param args [Array] zero or more arguments for the arity check
|
|
1748
|
+
# @param method [Symbol] the method to check the object for
|
|
1749
|
+
# @param obj [Object] the object to check against
|
|
1725
1750
|
# @raise [NameError] the object does not respond to `method` method
|
|
1726
1751
|
# @raise [ArgumentError] the given `args` do not match the arity of `method`
|
|
1727
|
-
# @see http://www.ruby-doc.org/core-2.1.1/Method.html#method-i-arity Method#arity
|
|
1728
1752
|
# @see http://ruby-doc.org/core-2.1.0/Object.html#method-i-respond_to-3F Object#respond_to?
|
|
1729
1753
|
# @see http://www.ruby-doc.org/core-2.1.0/BasicObject.html#method-i-method_missing BasicObject#method_missing
|
|
1754
|
+
# @see http://www.ruby-doc.org/core-2.1.1/Method.html#method-i-arity Method#arity
|
|
1730
1755
|
#
|
|
1731
1756
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#250
|
|
1732
1757
|
def validate_argc(obj, method, *args); end
|
|
@@ -1747,8 +1772,8 @@ class Concurrent::Async::AsyncDelegator < ::Concurrent::Synchronization::Lockabl
|
|
|
1747
1772
|
|
|
1748
1773
|
# Delegates method calls to the wrapped object.
|
|
1749
1774
|
#
|
|
1750
|
-
# @param method [Symbol] the method being called
|
|
1751
1775
|
# @param args [Array] zero or more arguments to the method
|
|
1776
|
+
# @param method [Symbol] the method being called
|
|
1752
1777
|
# @raise [NameError] the object does not respond to `method` method
|
|
1753
1778
|
# @raise [ArgumentError] the given `args` do not match the arity of `method`
|
|
1754
1779
|
# @return [IVar] the result of the method call
|
|
@@ -1792,8 +1817,8 @@ class Concurrent::Async::AwaitDelegator
|
|
|
1792
1817
|
|
|
1793
1818
|
# Delegates method calls to the wrapped object.
|
|
1794
1819
|
#
|
|
1795
|
-
# @param method [Symbol] the method being called
|
|
1796
1820
|
# @param args [Array] zero or more arguments to the method
|
|
1821
|
+
# @param method [Symbol] the method being called
|
|
1797
1822
|
# @raise [NameError] the object does not respond to `method` method
|
|
1798
1823
|
# @raise [ArgumentError] the given `args` do not match the arity of `method`
|
|
1799
1824
|
# @return [IVar] the result of the method call
|
|
@@ -1910,15 +1935,15 @@ class Concurrent::Atom < ::Concurrent::Synchronization::Object
|
|
|
1910
1935
|
# Create a new atom with the given initial value.
|
|
1911
1936
|
#
|
|
1912
1937
|
# @option opts
|
|
1913
|
-
# @param value [Object] The initial value
|
|
1914
1938
|
# @param opts [Hash] The options used to configure the atom
|
|
1939
|
+
# @param value [Object] The initial value
|
|
1915
1940
|
# @raise [ArgumentError] if the validator is not a `Proc` (when given)
|
|
1916
1941
|
# @return [Atom] a new instance of Atom
|
|
1917
1942
|
#
|
|
1918
1943
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atom.rb#121
|
|
1919
1944
|
def initialize(value, opts = T.unsafe(nil)); end
|
|
1920
1945
|
|
|
1921
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
1946
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atom.rb#99
|
|
1922
1947
|
def __initialize_atomic_fields__; end
|
|
1923
1948
|
|
|
1924
1949
|
# Atomically sets the value of atom to the new value if and only if the
|
|
@@ -1926,14 +1951,14 @@ class Concurrent::Atom < ::Concurrent::Synchronization::Object
|
|
|
1926
1951
|
# value successfully validates against the (optional) validator given
|
|
1927
1952
|
# at construction.
|
|
1928
1953
|
#
|
|
1929
|
-
# @param old_value [Object] The expected current value.
|
|
1930
1954
|
# @param new_value [Object] The intended new value.
|
|
1955
|
+
# @param old_value [Object] The expected current value.
|
|
1931
1956
|
# @return [Boolean] True if the value is changed else false.
|
|
1932
1957
|
#
|
|
1933
1958
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atom.rb#181
|
|
1934
1959
|
def compare_and_set(old_value, new_value); end
|
|
1935
1960
|
|
|
1936
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
1961
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atom.rb#102
|
|
1937
1962
|
def deref; end
|
|
1938
1963
|
|
|
1939
1964
|
# Atomically sets the value of atom to the new value without regard for the
|
|
@@ -1969,8 +1994,8 @@ class Concurrent::Atom < ::Concurrent::Synchronization::Object
|
|
|
1969
1994
|
# validations are complete.
|
|
1970
1995
|
# @yield [value, args] Calculates a new value for the atom based on the
|
|
1971
1996
|
# current value and any supplied arguments.
|
|
1972
|
-
# @yieldparam value [Object] The current value of the atom.
|
|
1973
1997
|
# @yieldparam args [Object] All arguments passed to the function, in order.
|
|
1998
|
+
# @yieldparam value [Object] The current value of the atom.
|
|
1974
1999
|
# @yieldreturn [Object] The intended new value of the atom.
|
|
1975
2000
|
#
|
|
1976
2001
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atom.rb#157
|
|
@@ -1980,18 +2005,18 @@ class Concurrent::Atom < ::Concurrent::Synchronization::Object
|
|
|
1980
2005
|
#
|
|
1981
2006
|
# @return [Object] The current value.
|
|
1982
2007
|
#
|
|
1983
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2008
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atom.rb#99
|
|
1984
2009
|
def value; end
|
|
1985
2010
|
|
|
1986
2011
|
private
|
|
1987
2012
|
|
|
1988
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2013
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atom.rb#99
|
|
1989
2014
|
def compare_and_set_value(expected, value); end
|
|
1990
2015
|
|
|
1991
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2016
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atom.rb#99
|
|
1992
2017
|
def swap_value(value); end
|
|
1993
2018
|
|
|
1994
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2019
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atom.rb#99
|
|
1995
2020
|
def update_value(&block); end
|
|
1996
2021
|
|
|
1997
2022
|
# Is the new value valid?
|
|
@@ -2003,7 +2028,7 @@ class Concurrent::Atom < ::Concurrent::Synchronization::Object
|
|
|
2003
2028
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atom.rb#216
|
|
2004
2029
|
def valid?(new_value); end
|
|
2005
2030
|
|
|
2006
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2031
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atom.rb#99
|
|
2007
2032
|
def value=(value); end
|
|
2008
2033
|
end
|
|
2009
2034
|
|
|
@@ -2065,7 +2090,7 @@ end
|
|
|
2065
2090
|
class Concurrent::AtomicBoolean < ::Concurrent::MutexAtomicBoolean
|
|
2066
2091
|
# @return [String] Short string representation.
|
|
2067
2092
|
#
|
|
2068
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_boolean.rb#
|
|
2093
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_boolean.rb#125
|
|
2069
2094
|
def inspect; end
|
|
2070
2095
|
|
|
2071
2096
|
# @return [String] Short string representation.
|
|
@@ -2149,7 +2174,7 @@ end
|
|
|
2149
2174
|
class Concurrent::AtomicFixnum < ::Concurrent::MutexAtomicFixnum
|
|
2150
2175
|
# @return [String] Short string representation.
|
|
2151
2176
|
#
|
|
2152
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_fixnum.rb#
|
|
2177
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_fixnum.rb#142
|
|
2153
2178
|
def inspect; end
|
|
2154
2179
|
|
|
2155
2180
|
# @return [String] Short string representation.
|
|
@@ -2175,7 +2200,7 @@ class Concurrent::AtomicMarkableReference < ::Concurrent::Synchronization::Objec
|
|
|
2175
2200
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#15
|
|
2176
2201
|
def initialize(value = T.unsafe(nil), mark = T.unsafe(nil)); end
|
|
2177
2202
|
|
|
2178
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2203
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#12
|
|
2179
2204
|
def __initialize_atomic_fields__; end
|
|
2180
2205
|
|
|
2181
2206
|
# Atomically sets the value and mark to the given updated value and
|
|
@@ -2186,10 +2211,10 @@ class Concurrent::AtomicMarkableReference < ::Concurrent::Synchronization::Objec
|
|
|
2186
2211
|
# that the actual value was not equal to the expected value or the
|
|
2187
2212
|
# actual mark was not equal to the expected mark
|
|
2188
2213
|
#
|
|
2189
|
-
# @param expected_val [Object] the expected value
|
|
2190
|
-
# @param new_val [Object] the new value
|
|
2191
2214
|
# @param expected_mark [Boolean] the expected mark
|
|
2215
|
+
# @param expected_val [Object] the expected value
|
|
2192
2216
|
# @param new_mark [Boolean] the new mark
|
|
2217
|
+
# @param new_val [Object] the new value
|
|
2193
2218
|
# @return [Boolean] `true` if successful. A `false` return indicates
|
|
2194
2219
|
#
|
|
2195
2220
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#33
|
|
@@ -2203,13 +2228,13 @@ class Concurrent::AtomicMarkableReference < ::Concurrent::Synchronization::Objec
|
|
|
2203
2228
|
# that the actual value was not equal to the expected value or the
|
|
2204
2229
|
# actual mark was not equal to the expected mark
|
|
2205
2230
|
#
|
|
2206
|
-
# @param expected_val [Object] the expected value
|
|
2207
|
-
# @param new_val [Object] the new value
|
|
2208
2231
|
# @param expected_mark [Boolean] the expected mark
|
|
2232
|
+
# @param expected_val [Object] the expected value
|
|
2209
2233
|
# @param new_mark [Boolean] the new mark
|
|
2234
|
+
# @param new_val [Object] the new value
|
|
2210
2235
|
# @return [Boolean] `true` if successful. A `false` return indicates
|
|
2211
2236
|
#
|
|
2212
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#
|
|
2237
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#59
|
|
2213
2238
|
def compare_and_swap(expected_val, new_val, expected_mark, new_mark); end
|
|
2214
2239
|
|
|
2215
2240
|
# Gets the current reference and marked values.
|
|
@@ -2230,14 +2255,14 @@ class Concurrent::AtomicMarkableReference < ::Concurrent::Synchronization::Objec
|
|
|
2230
2255
|
#
|
|
2231
2256
|
# @return [Boolean] the current marked value
|
|
2232
2257
|
#
|
|
2233
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#
|
|
2258
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#82
|
|
2234
2259
|
def marked?; end
|
|
2235
2260
|
|
|
2236
2261
|
# _Unconditionally_ sets to the given value of both the reference and
|
|
2237
2262
|
# the mark.
|
|
2238
2263
|
#
|
|
2239
|
-
# @param new_val [Object] the new value
|
|
2240
2264
|
# @param new_mark [Boolean] the new mark
|
|
2265
|
+
# @param new_val [Object] the new value
|
|
2241
2266
|
# @return [Array] both the new value and the new mark
|
|
2242
2267
|
#
|
|
2243
2268
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#91
|
|
@@ -2251,8 +2276,8 @@ class Concurrent::AtomicMarkableReference < ::Concurrent::Synchronization::Objec
|
|
|
2251
2276
|
# @return [Array] the new value and marked state, or nil if
|
|
2252
2277
|
# @yield [Object] Calculate a new value and marked state for the atomic
|
|
2253
2278
|
# reference using given (old) value and (old) marked
|
|
2254
|
-
# @yieldparam old_val [Object] the starting value of the atomic reference
|
|
2255
2279
|
# @yieldparam old_mark [Boolean] the starting state of marked
|
|
2280
|
+
# @yieldparam old_val [Object] the starting value of the atomic reference
|
|
2256
2281
|
#
|
|
2257
2282
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#152
|
|
2258
2283
|
def try_update; end
|
|
@@ -2265,8 +2290,8 @@ class Concurrent::AtomicMarkableReference < ::Concurrent::Synchronization::Objec
|
|
|
2265
2290
|
# @return [Array] the new value and marked state
|
|
2266
2291
|
# @yield [Object] Calculate a new value and marked state for the atomic
|
|
2267
2292
|
# reference using given (old) value and (old) marked
|
|
2268
|
-
# @yieldparam old_val [Object] the starting value of the atomic reference
|
|
2269
2293
|
# @yieldparam old_mark [Boolean] the starting state of marked
|
|
2294
|
+
# @yieldparam old_val [Object] the starting value of the atomic reference
|
|
2270
2295
|
#
|
|
2271
2296
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#128
|
|
2272
2297
|
def try_update!; end
|
|
@@ -2278,8 +2303,8 @@ class Concurrent::AtomicMarkableReference < ::Concurrent::Synchronization::Objec
|
|
|
2278
2303
|
# @return [Array] the new value and new mark
|
|
2279
2304
|
# @yield [Object] Calculate a new value and marked state for the atomic
|
|
2280
2305
|
# reference using given (old) value and (old) marked
|
|
2281
|
-
# @yieldparam old_val [Object] the starting value of the atomic reference
|
|
2282
2306
|
# @yieldparam old_mark [Boolean] the starting state of marked
|
|
2307
|
+
# @yieldparam old_val [Object] the starting value of the atomic reference
|
|
2283
2308
|
#
|
|
2284
2309
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#105
|
|
2285
2310
|
def update; end
|
|
@@ -2293,22 +2318,22 @@ class Concurrent::AtomicMarkableReference < ::Concurrent::Synchronization::Objec
|
|
|
2293
2318
|
|
|
2294
2319
|
private
|
|
2295
2320
|
|
|
2296
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2321
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#12
|
|
2297
2322
|
def compare_and_set_reference(expected, value); end
|
|
2298
2323
|
|
|
2299
2324
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#163
|
|
2300
2325
|
def immutable_array(*args); end
|
|
2301
2326
|
|
|
2302
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2327
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#12
|
|
2303
2328
|
def reference; end
|
|
2304
2329
|
|
|
2305
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2330
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#12
|
|
2306
2331
|
def reference=(value); end
|
|
2307
2332
|
|
|
2308
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2333
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#12
|
|
2309
2334
|
def swap_reference(value); end
|
|
2310
2335
|
|
|
2311
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2336
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#12
|
|
2312
2337
|
def update_reference(&block); end
|
|
2313
2338
|
end
|
|
2314
2339
|
|
|
@@ -2321,8 +2346,8 @@ module Concurrent::AtomicNumericCompareAndSetWrapper
|
|
|
2321
2346
|
#
|
|
2322
2347
|
# that the actual value was not equal to the expected value.
|
|
2323
2348
|
#
|
|
2324
|
-
# @param old_value [Object] the expected value
|
|
2325
2349
|
# @param new_value [Object] the new value
|
|
2350
|
+
# @param old_value [Object] the expected value
|
|
2326
2351
|
# @return [Boolean] `true` if successful. A `false` return indicates
|
|
2327
2352
|
#
|
|
2328
2353
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/numeric_cas_wrapper.rb#10
|
|
@@ -2372,7 +2397,7 @@ end
|
|
|
2372
2397
|
class Concurrent::AtomicReference < ::Concurrent::MutexAtomicReference
|
|
2373
2398
|
# @return [String] Short string representation.
|
|
2374
2399
|
#
|
|
2375
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb#
|
|
2400
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb#133
|
|
2376
2401
|
def inspect; end
|
|
2377
2402
|
|
|
2378
2403
|
# @return [String] Short string representation.
|
|
@@ -2386,195 +2411,195 @@ Concurrent::AtomicReferenceImplementation = Concurrent::MutexAtomicReference
|
|
|
2386
2411
|
|
|
2387
2412
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#30
|
|
2388
2413
|
class Concurrent::CRubySet < ::Set
|
|
2389
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2414
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2390
2415
|
def initialize(*args, &block); end
|
|
2391
2416
|
|
|
2392
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2417
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2393
2418
|
def &(*args); end
|
|
2394
2419
|
|
|
2395
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2420
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2396
2421
|
def +(*args); end
|
|
2397
2422
|
|
|
2398
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2423
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2399
2424
|
def -(*args); end
|
|
2400
2425
|
|
|
2401
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2426
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2402
2427
|
def <(*args); end
|
|
2403
2428
|
|
|
2404
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2429
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2405
2430
|
def <<(*args); end
|
|
2406
2431
|
|
|
2407
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2432
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2408
2433
|
def <=(*args); end
|
|
2409
2434
|
|
|
2410
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2435
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2411
2436
|
def <=>(*args); end
|
|
2412
2437
|
|
|
2413
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2438
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2414
2439
|
def ==(*args); end
|
|
2415
2440
|
|
|
2416
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2441
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2417
2442
|
def ===(*args); end
|
|
2418
2443
|
|
|
2419
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2444
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2420
2445
|
def >(*args); end
|
|
2421
2446
|
|
|
2422
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2447
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2423
2448
|
def >=(*args); end
|
|
2424
2449
|
|
|
2425
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2450
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2426
2451
|
def ^(*args); end
|
|
2427
2452
|
|
|
2428
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2453
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2429
2454
|
def add(*args); end
|
|
2430
2455
|
|
|
2431
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2456
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2432
2457
|
def add?(*args); end
|
|
2433
2458
|
|
|
2434
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2459
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2435
2460
|
def classify(*args); end
|
|
2436
2461
|
|
|
2437
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2462
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2438
2463
|
def clear(*args); end
|
|
2439
2464
|
|
|
2440
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2465
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2441
2466
|
def collect!(*args); end
|
|
2442
2467
|
|
|
2443
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2468
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2444
2469
|
def compare_by_identity(*args); end
|
|
2445
2470
|
|
|
2446
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2471
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2447
2472
|
def compare_by_identity?(*args); end
|
|
2448
2473
|
|
|
2449
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2474
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2450
2475
|
def delete(*args); end
|
|
2451
2476
|
|
|
2452
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2477
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2453
2478
|
def delete?(*args); end
|
|
2454
2479
|
|
|
2455
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2480
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2456
2481
|
def delete_if(*args); end
|
|
2457
2482
|
|
|
2458
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2483
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2459
2484
|
def difference(*args); end
|
|
2460
2485
|
|
|
2461
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2486
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2462
2487
|
def disjoint?(*args); end
|
|
2463
2488
|
|
|
2464
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2489
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2465
2490
|
def divide(*args); end
|
|
2466
2491
|
|
|
2467
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2492
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2468
2493
|
def each(*args); end
|
|
2469
2494
|
|
|
2470
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2495
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2471
2496
|
def empty?(*args); end
|
|
2472
2497
|
|
|
2473
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2498
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2474
2499
|
def eql?(*args); end
|
|
2475
2500
|
|
|
2476
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2501
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2477
2502
|
def filter!(*args); end
|
|
2478
2503
|
|
|
2479
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2504
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2480
2505
|
def flatten(*args); end
|
|
2481
2506
|
|
|
2482
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2507
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2483
2508
|
def flatten!(*args); end
|
|
2484
2509
|
|
|
2485
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2510
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2486
2511
|
def flatten_merge(*args); end
|
|
2487
2512
|
|
|
2488
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2513
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2489
2514
|
def freeze(*args); end
|
|
2490
2515
|
|
|
2491
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2516
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2492
2517
|
def hash(*args); end
|
|
2493
2518
|
|
|
2494
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2519
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2495
2520
|
def include?(*args); end
|
|
2496
2521
|
|
|
2497
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2522
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2498
2523
|
def inspect(*args); end
|
|
2499
2524
|
|
|
2500
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2525
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2501
2526
|
def intersect?(*args); end
|
|
2502
2527
|
|
|
2503
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2528
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2504
2529
|
def intersection(*args); end
|
|
2505
2530
|
|
|
2506
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2531
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2507
2532
|
def join(*args); end
|
|
2508
2533
|
|
|
2509
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2534
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2510
2535
|
def keep_if(*args); end
|
|
2511
2536
|
|
|
2512
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2537
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2513
2538
|
def length(*args); end
|
|
2514
2539
|
|
|
2515
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2540
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2516
2541
|
def map!(*args); end
|
|
2517
2542
|
|
|
2518
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2543
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2519
2544
|
def member?(*args); end
|
|
2520
2545
|
|
|
2521
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2546
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2522
2547
|
def merge(*args); end
|
|
2523
2548
|
|
|
2524
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2549
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2525
2550
|
def pretty_print(*args); end
|
|
2526
2551
|
|
|
2527
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2552
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2528
2553
|
def pretty_print_cycle(*args); end
|
|
2529
2554
|
|
|
2530
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2555
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2531
2556
|
def proper_subset?(*args); end
|
|
2532
2557
|
|
|
2533
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2558
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2534
2559
|
def proper_superset?(*args); end
|
|
2535
2560
|
|
|
2536
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2561
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2537
2562
|
def reject!(*args); end
|
|
2538
2563
|
|
|
2539
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2564
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2540
2565
|
def replace(*args); end
|
|
2541
2566
|
|
|
2542
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2567
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2543
2568
|
def reset(*args); end
|
|
2544
2569
|
|
|
2545
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2570
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2546
2571
|
def select!(*args); end
|
|
2547
2572
|
|
|
2548
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2573
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2549
2574
|
def size(*args); end
|
|
2550
2575
|
|
|
2551
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2576
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2552
2577
|
def subset?(*args); end
|
|
2553
2578
|
|
|
2554
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2579
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2555
2580
|
def subtract(*args); end
|
|
2556
2581
|
|
|
2557
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2582
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2558
2583
|
def superset?(*args); end
|
|
2559
2584
|
|
|
2560
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2585
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2561
2586
|
def to_a(*args); end
|
|
2562
2587
|
|
|
2563
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2588
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2564
2589
|
def to_s(*args); end
|
|
2565
2590
|
|
|
2566
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2591
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2567
2592
|
def to_set(*args); end
|
|
2568
2593
|
|
|
2569
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2594
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2570
2595
|
def union(*args); end
|
|
2571
2596
|
|
|
2572
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2597
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2573
2598
|
def |(*args); end
|
|
2574
2599
|
|
|
2575
2600
|
private
|
|
2576
2601
|
|
|
2577
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
2602
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#33
|
|
2578
2603
|
def initialize_copy(other); end
|
|
2579
2604
|
end
|
|
2580
2605
|
|
|
@@ -2940,30 +2965,30 @@ end
|
|
|
2940
2965
|
# When running under all other interpreters it extends `RubyNonConcurrentPriorityQueue`.
|
|
2941
2966
|
#
|
|
2942
2967
|
# @note This implementation is *not* thread safe.
|
|
2943
|
-
# @see http://en.wikipedia.org/wiki/Priority_queue
|
|
2944
|
-
# @see http://ruby-doc.org/stdlib-2.0.0/libdoc/thread/rdoc/Queue.html
|
|
2945
|
-
# @see http://algs4.cs.princeton.edu/24pq/index.php#2.6
|
|
2946
2968
|
# @see http://algs4.cs.princeton.edu/24pq/MaxPQ.java.html
|
|
2969
|
+
# @see http://algs4.cs.princeton.edu/24pq/index.php#2.6
|
|
2947
2970
|
# @see http://docs.oracle.com/javase/7/docs/api/java/util/PriorityQueue.html
|
|
2971
|
+
# @see http://en.wikipedia.org/wiki/Priority_queue
|
|
2972
|
+
# @see http://ruby-doc.org/stdlib-2.0.0/libdoc/thread/rdoc/Queue.html
|
|
2948
2973
|
#
|
|
2949
2974
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/non_concurrent_priority_queue.rb#50
|
|
2950
2975
|
class Concurrent::Collection::NonConcurrentPriorityQueue < ::Concurrent::Collection::RubyNonConcurrentPriorityQueue
|
|
2951
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/
|
|
2976
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/non_concurrent_priority_queue.rb#59
|
|
2952
2977
|
def <<(item); end
|
|
2953
2978
|
|
|
2954
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/
|
|
2979
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/non_concurrent_priority_queue.rb#56
|
|
2955
2980
|
def deq; end
|
|
2956
2981
|
|
|
2957
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/
|
|
2982
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/non_concurrent_priority_queue.rb#60
|
|
2958
2983
|
def enq(item); end
|
|
2959
2984
|
|
|
2960
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/
|
|
2985
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/non_concurrent_priority_queue.rb#52
|
|
2961
2986
|
def has_priority?(item); end
|
|
2962
2987
|
|
|
2963
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/
|
|
2988
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/non_concurrent_priority_queue.rb#57
|
|
2964
2989
|
def shift; end
|
|
2965
2990
|
|
|
2966
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/
|
|
2991
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/non_concurrent_priority_queue.rb#54
|
|
2967
2992
|
def size; end
|
|
2968
2993
|
end
|
|
2969
2994
|
|
|
@@ -2990,11 +3015,11 @@ Concurrent::Collection::NonConcurrentPriorityQueueImplementation = Concurrent::C
|
|
|
2990
3015
|
# When running under all other interpreters it extends `RubyNonConcurrentPriorityQueue`.
|
|
2991
3016
|
#
|
|
2992
3017
|
# @note This implementation is *not* thread safe.
|
|
2993
|
-
# @see http://en.wikipedia.org/wiki/Priority_queue
|
|
2994
|
-
# @see http://ruby-doc.org/stdlib-2.0.0/libdoc/thread/rdoc/Queue.html
|
|
2995
|
-
# @see http://algs4.cs.princeton.edu/24pq/index.php#2.6
|
|
2996
3018
|
# @see http://algs4.cs.princeton.edu/24pq/MaxPQ.java.html
|
|
3019
|
+
# @see http://algs4.cs.princeton.edu/24pq/index.php#2.6
|
|
2997
3020
|
# @see http://docs.oracle.com/javase/7/docs/api/java/util/PriorityQueue.html
|
|
3021
|
+
# @see http://en.wikipedia.org/wiki/Priority_queue
|
|
3022
|
+
# @see http://ruby-doc.org/stdlib-2.0.0/libdoc/thread/rdoc/Queue.html
|
|
2998
3023
|
#
|
|
2999
3024
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#8
|
|
3000
3025
|
class Concurrent::Collection::RubyNonConcurrentPriorityQueue
|
|
@@ -3012,7 +3037,7 @@ class Concurrent::Collection::RubyNonConcurrentPriorityQueue
|
|
|
3012
3037
|
# @param item [Object] the item to insert onto the queue
|
|
3013
3038
|
# @raise [ArgumentError]
|
|
3014
3039
|
#
|
|
3015
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#
|
|
3040
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#85
|
|
3016
3041
|
def <<(item); end
|
|
3017
3042
|
|
|
3018
3043
|
# Removes all of the elements from this priority queue.
|
|
@@ -3033,7 +3058,7 @@ class Concurrent::Collection::RubyNonConcurrentPriorityQueue
|
|
|
3033
3058
|
#
|
|
3034
3059
|
# @return [Object] the head of the queue or `nil` when empty
|
|
3035
3060
|
#
|
|
3036
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#
|
|
3061
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#74
|
|
3037
3062
|
def deq; end
|
|
3038
3063
|
|
|
3039
3064
|
# Returns `true` if `self` contains no elements.
|
|
@@ -3048,7 +3073,7 @@ class Concurrent::Collection::RubyNonConcurrentPriorityQueue
|
|
|
3048
3073
|
# @param item [Object] the item to insert onto the queue
|
|
3049
3074
|
# @raise [ArgumentError]
|
|
3050
3075
|
#
|
|
3051
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#
|
|
3076
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#86
|
|
3052
3077
|
def enq(item); end
|
|
3053
3078
|
|
|
3054
3079
|
# Returns `true` if the given item is present in `self` (that is, if any
|
|
@@ -3057,7 +3082,7 @@ class Concurrent::Collection::RubyNonConcurrentPriorityQueue
|
|
|
3057
3082
|
# @param item [Object] the item to search for
|
|
3058
3083
|
# @return [Boolean] true if the item is found else false
|
|
3059
3084
|
#
|
|
3060
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#
|
|
3085
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#51
|
|
3061
3086
|
def has_priority?(item); end
|
|
3062
3087
|
|
|
3063
3088
|
# Returns `true` if the given item is present in `self` (that is, if any
|
|
@@ -3105,14 +3130,14 @@ class Concurrent::Collection::RubyNonConcurrentPriorityQueue
|
|
|
3105
3130
|
#
|
|
3106
3131
|
# @return [Object] the head of the queue or `nil` when empty
|
|
3107
3132
|
#
|
|
3108
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#
|
|
3133
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#75
|
|
3109
3134
|
def shift; end
|
|
3110
3135
|
|
|
3111
3136
|
# The current length of the queue.
|
|
3112
3137
|
#
|
|
3113
3138
|
# @return [Fixnum] the number of items in the queue
|
|
3114
3139
|
#
|
|
3115
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#
|
|
3140
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#57
|
|
3116
3141
|
def size; end
|
|
3117
3142
|
|
|
3118
3143
|
private
|
|
@@ -3187,7 +3212,7 @@ module Concurrent::Concern::Dereferenceable
|
|
|
3187
3212
|
#
|
|
3188
3213
|
# @return [Object] the current value of the object
|
|
3189
3214
|
#
|
|
3190
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/dereferenceable.rb#
|
|
3215
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/dereferenceable.rb#24
|
|
3191
3216
|
def deref; end
|
|
3192
3217
|
|
|
3193
3218
|
# Return the value this object represents after applying the options specified
|
|
@@ -3246,8 +3271,8 @@ module Concurrent::Concern::Logging
|
|
|
3246
3271
|
# Logs through {Concurrent.global_logger}, it can be overridden by setting @logger
|
|
3247
3272
|
#
|
|
3248
3273
|
# @param level [Integer] one of Concurrent::Concern::Logging constants
|
|
3249
|
-
# @param progname [String] e.g. a path of an Actor
|
|
3250
3274
|
# @param message [String, nil] when nil block is used to generate the message
|
|
3275
|
+
# @param progname [String] e.g. a path of an Actor
|
|
3251
3276
|
# @yieldreturn [String] a message
|
|
3252
3277
|
#
|
|
3253
3278
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/logging.rb#19
|
|
@@ -3315,7 +3340,7 @@ module Concurrent::Concern::Obligation
|
|
|
3315
3340
|
# @raise [Exception] raises the reason when rejected
|
|
3316
3341
|
# @return [Obligation] self
|
|
3317
3342
|
#
|
|
3318
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#
|
|
3343
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#89
|
|
3319
3344
|
def no_error!(timeout = T.unsafe(nil)); end
|
|
3320
3345
|
|
|
3321
3346
|
# Is obligation completion still pending?
|
|
@@ -3329,7 +3354,7 @@ module Concurrent::Concern::Obligation
|
|
|
3329
3354
|
#
|
|
3330
3355
|
# @return [Boolean]
|
|
3331
3356
|
#
|
|
3332
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#
|
|
3357
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#23
|
|
3333
3358
|
def realized?; end
|
|
3334
3359
|
|
|
3335
3360
|
# If an exception was raised during processing this will return the
|
|
@@ -3406,8 +3431,8 @@ module Concurrent::Concern::Obligation
|
|
|
3406
3431
|
# Atomic compare and set operation
|
|
3407
3432
|
# State is set to `next_state` only if `current state == expected_current`.
|
|
3408
3433
|
#
|
|
3409
|
-
# @param next_state [Symbol]
|
|
3410
3434
|
# @param expected_current [Symbol]
|
|
3435
|
+
# @param next_state [Symbol]
|
|
3411
3436
|
# @return [Boolean] true is state is changed, false otherwise
|
|
3412
3437
|
#
|
|
3413
3438
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#174
|
|
@@ -3496,9 +3521,9 @@ module Concurrent::Concern::Observable
|
|
|
3496
3521
|
# Adds an observer to this set. If a block is passed, the observer will be
|
|
3497
3522
|
# created by this method and no other params should be passed.
|
|
3498
3523
|
#
|
|
3499
|
-
# @param observer [Object] the observer to add
|
|
3500
3524
|
# @param func [Symbol] the function to call on the observer during notification.
|
|
3501
3525
|
# Default is :update
|
|
3526
|
+
# @param observer [Object] the observer to add
|
|
3502
3527
|
# @return [Object] the added observer
|
|
3503
3528
|
#
|
|
3504
3529
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/observable.rb#61
|
|
@@ -3529,8 +3554,8 @@ module Concurrent::Concern::Observable
|
|
|
3529
3554
|
|
|
3530
3555
|
# As `#add_observer` but can be used for chaining.
|
|
3531
3556
|
#
|
|
3532
|
-
# @param observer [Object] the observer to add
|
|
3533
3557
|
# @param func [Symbol] the function to call on the observer during notification.
|
|
3558
|
+
# @param observer [Object] the observer to add
|
|
3534
3559
|
# @return [Observable] self
|
|
3535
3560
|
#
|
|
3536
3561
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/observable.rb#70
|
|
@@ -3699,19 +3724,32 @@ class Concurrent::CyclicBarrier::Generation < ::Struct
|
|
|
3699
3724
|
# Returns the value of attribute status
|
|
3700
3725
|
#
|
|
3701
3726
|
# @return [Object] the current value of status
|
|
3727
|
+
#
|
|
3728
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#30
|
|
3702
3729
|
def status; end
|
|
3703
3730
|
|
|
3704
3731
|
# Sets the attribute status
|
|
3705
3732
|
#
|
|
3706
3733
|
# @param value [Object] the value to set the attribute status to.
|
|
3707
3734
|
# @return [Object] the newly set value
|
|
3735
|
+
#
|
|
3736
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#30
|
|
3708
3737
|
def status=(_); end
|
|
3709
3738
|
|
|
3710
3739
|
class << self
|
|
3740
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#30
|
|
3711
3741
|
def [](*_arg0); end
|
|
3742
|
+
|
|
3743
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#30
|
|
3712
3744
|
def inspect; end
|
|
3745
|
+
|
|
3746
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#30
|
|
3713
3747
|
def keyword_init?; end
|
|
3748
|
+
|
|
3749
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#30
|
|
3714
3750
|
def members; end
|
|
3751
|
+
|
|
3752
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#30
|
|
3715
3753
|
def new(*_arg0); end
|
|
3716
3754
|
end
|
|
3717
3755
|
end
|
|
@@ -4179,9 +4217,9 @@ end
|
|
|
4179
4217
|
#
|
|
4180
4218
|
# @note Failure to properly shutdown a thread pool can lead to unpredictable results.
|
|
4181
4219
|
# Please read *Shutting Down Thread Pools* for more information.
|
|
4182
|
-
# @see http://docs.oracle.com/javase/tutorial/essential/concurrency/pools.html Java Tutorials: Thread Pools
|
|
4183
4220
|
# @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executors.html Java Executors class
|
|
4184
4221
|
# @see http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutorService.html Java ExecutorService interface
|
|
4222
|
+
# @see http://docs.oracle.com/javase/tutorial/essential/concurrency/pools.html Java Tutorials: Thread Pools
|
|
4185
4223
|
# @see https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html#setDaemon-boolean-
|
|
4186
4224
|
#
|
|
4187
4225
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/fixed_thread_pool.rb#201
|
|
@@ -4202,9 +4240,9 @@ end
|
|
|
4202
4240
|
|
|
4203
4241
|
# {include:file:docs-source/future.md}
|
|
4204
4242
|
#
|
|
4205
|
-
# @see http://ruby-doc.org/stdlib-2.1.1/libdoc/observer/rdoc/Observable.html Ruby Observable module
|
|
4206
4243
|
# @see http://clojuredocs.org/clojure_core/clojure.core/future Clojure's future function
|
|
4207
4244
|
# @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Future.html java.util.concurrent.Future
|
|
4245
|
+
# @see http://ruby-doc.org/stdlib-2.1.1/libdoc/observer/rdoc/Observable.html Ruby Observable module
|
|
4208
4246
|
#
|
|
4209
4247
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/future.rb#21
|
|
4210
4248
|
class Concurrent::Future < ::Concurrent::IVar
|
|
@@ -4239,14 +4277,14 @@ class Concurrent::Future < ::Concurrent::IVar
|
|
|
4239
4277
|
# passes the block to a new thread/thread pool for eventual execution.
|
|
4240
4278
|
# Does nothing if the `Future` is in any state other than `:unscheduled`.
|
|
4241
4279
|
#
|
|
4280
|
+
# @example Instance and execute in one line
|
|
4281
|
+
# future = Concurrent::Future.new{ sleep(1); 42 }.execute
|
|
4282
|
+
# future.state #=> :pending
|
|
4242
4283
|
# @example Instance and execute in separate steps
|
|
4243
4284
|
# future = Concurrent::Future.new{ sleep(1); 42 }
|
|
4244
4285
|
# future.state #=> :unscheduled
|
|
4245
4286
|
# future.execute
|
|
4246
4287
|
# future.state #=> :pending
|
|
4247
|
-
# @example Instance and execute in one line
|
|
4248
|
-
# future = Concurrent::Future.new{ sleep(1); 42 }.execute
|
|
4249
|
-
# future.state #=> :pending
|
|
4250
4288
|
# @return [Future] a reference to `self`
|
|
4251
4289
|
#
|
|
4252
4290
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/future.rb#53
|
|
@@ -4365,8 +4403,8 @@ class Concurrent::IVar < ::Concurrent::Synchronization::LockableObject
|
|
|
4365
4403
|
# @option opts
|
|
4366
4404
|
# @option opts
|
|
4367
4405
|
# @option opts
|
|
4368
|
-
# @param value [Object] the initial value
|
|
4369
4406
|
# @param opts [Hash] the options to create a message with
|
|
4407
|
+
# @param value [Object] the initial value
|
|
4370
4408
|
# @return [IVar] a new instance of IVar
|
|
4371
4409
|
#
|
|
4372
4410
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#62
|
|
@@ -4380,9 +4418,9 @@ class Concurrent::IVar < ::Concurrent::Synchronization::LockableObject
|
|
|
4380
4418
|
# final `value` (or `nil` on rejection), and the final `reason` (or `nil` on
|
|
4381
4419
|
# fulfillment).
|
|
4382
4420
|
#
|
|
4383
|
-
# @param observer [Object] the object that will be notified of changes
|
|
4384
4421
|
# @param func [Symbol] symbol naming the method to call when this
|
|
4385
4422
|
# `Observable` has changes`
|
|
4423
|
+
# @param observer [Object] the object that will be notified of changes
|
|
4386
4424
|
# @raise [ArgumentError]
|
|
4387
4425
|
#
|
|
4388
4426
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#81
|
|
@@ -4489,7 +4527,7 @@ class Concurrent::ImmediateExecutor < ::Concurrent::AbstractExecutorService
|
|
|
4489
4527
|
# but no new tasks will be accepted. Has no additional effect if the
|
|
4490
4528
|
# thread pool is not running.
|
|
4491
4529
|
#
|
|
4492
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/immediate_executor.rb#
|
|
4530
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/immediate_executor.rb#59
|
|
4493
4531
|
def kill; end
|
|
4494
4532
|
|
|
4495
4533
|
# Submit a task to the executor for asynchronous processing.
|
|
@@ -4577,13 +4615,13 @@ module Concurrent::ImmutableStruct
|
|
|
4577
4615
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#68
|
|
4578
4616
|
def select(&block); end
|
|
4579
4617
|
|
|
4580
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#
|
|
4618
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#21
|
|
4581
4619
|
def to_a; end
|
|
4582
4620
|
|
|
4583
4621
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#41
|
|
4584
4622
|
def to_h; end
|
|
4585
4623
|
|
|
4586
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#
|
|
4624
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#33
|
|
4587
4625
|
def to_s; end
|
|
4588
4626
|
|
|
4589
4627
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#17
|
|
@@ -4670,7 +4708,7 @@ class Concurrent::LockFreeStack < ::Concurrent::Synchronization::Object
|
|
|
4670
4708
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#51
|
|
4671
4709
|
def initialize(head = T.unsafe(nil)); end
|
|
4672
4710
|
|
|
4673
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
4711
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#37
|
|
4674
4712
|
def __initialize_atomic_fields__; end
|
|
4675
4713
|
|
|
4676
4714
|
# @return [true, false]
|
|
@@ -4724,7 +4762,7 @@ class Concurrent::LockFreeStack < ::Concurrent::Synchronization::Object
|
|
|
4724
4762
|
|
|
4725
4763
|
# @return [String] Short string representation.
|
|
4726
4764
|
#
|
|
4727
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#
|
|
4765
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#158
|
|
4728
4766
|
def inspect; end
|
|
4729
4767
|
|
|
4730
4768
|
# @return [Node]
|
|
@@ -4757,19 +4795,19 @@ class Concurrent::LockFreeStack < ::Concurrent::Synchronization::Object
|
|
|
4757
4795
|
|
|
4758
4796
|
private
|
|
4759
4797
|
|
|
4760
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
4798
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#37
|
|
4761
4799
|
def compare_and_set_head(expected, value); end
|
|
4762
4800
|
|
|
4763
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
4801
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#37
|
|
4764
4802
|
def head; end
|
|
4765
4803
|
|
|
4766
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
4804
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#37
|
|
4767
4805
|
def head=(value); end
|
|
4768
4806
|
|
|
4769
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
4807
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#37
|
|
4770
4808
|
def swap_head(value); end
|
|
4771
4809
|
|
|
4772
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
4810
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#37
|
|
4773
4811
|
def update_head(&block); end
|
|
4774
4812
|
|
|
4775
4813
|
class << self
|
|
@@ -4809,6 +4847,7 @@ class Concurrent::LockFreeStack::Node
|
|
|
4809
4847
|
def value=(_arg0); end
|
|
4810
4848
|
|
|
4811
4849
|
class << self
|
|
4850
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#28
|
|
4812
4851
|
def [](*_arg0); end
|
|
4813
4852
|
end
|
|
4814
4853
|
end
|
|
@@ -4994,7 +5033,7 @@ class Concurrent::Map < ::Concurrent::Collection::MriMapBackend
|
|
|
4994
5033
|
# @yieldparam key [Object]
|
|
4995
5034
|
# @yieldparam value [Object]
|
|
4996
5035
|
#
|
|
4997
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#
|
|
5036
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#279
|
|
4998
5037
|
def each; end
|
|
4999
5038
|
|
|
5000
5039
|
# Iterates over each key.
|
|
@@ -5052,8 +5091,8 @@ class Concurrent::Map < ::Concurrent::Collection::MriMapBackend
|
|
|
5052
5091
|
# between the fetch operation and yielding to the block. Additionally,
|
|
5053
5092
|
# this method does not support recursion. This is due to internal
|
|
5054
5093
|
# constraints that are very unlikely to change in the near future.
|
|
5055
|
-
# @param key [Object]
|
|
5056
5094
|
# @param default_value [Object]
|
|
5095
|
+
# @param key [Object]
|
|
5057
5096
|
# @raise [KeyError] when key is missing and no default_value is provided
|
|
5058
5097
|
# @return [Object] the value or default value
|
|
5059
5098
|
# @yield default value for a key
|
|
@@ -5068,8 +5107,8 @@ class Concurrent::Map < ::Concurrent::Collection::MriMapBackend
|
|
|
5068
5107
|
# therefore not atomic. The store can overwrite other concurrently
|
|
5069
5108
|
# stored value.
|
|
5070
5109
|
#
|
|
5071
|
-
# @param key [Object]
|
|
5072
5110
|
# @param default_value [Object]
|
|
5111
|
+
# @param key [Object]
|
|
5073
5112
|
# @return [Object] the value or default value
|
|
5074
5113
|
# @yield default value for a key
|
|
5075
5114
|
# @yieldparam key [Object]
|
|
@@ -5083,7 +5122,7 @@ class Concurrent::Map < ::Concurrent::Collection::MriMapBackend
|
|
|
5083
5122
|
# @param key [Object]
|
|
5084
5123
|
# @return [Object] the value
|
|
5085
5124
|
#
|
|
5086
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
5125
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#162
|
|
5087
5126
|
def get(key); end
|
|
5088
5127
|
|
|
5089
5128
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#321
|
|
@@ -5118,7 +5157,7 @@ class Concurrent::Map < ::Concurrent::Collection::MriMapBackend
|
|
|
5118
5157
|
# @param value [Object]
|
|
5119
5158
|
# @return [Object] the new value
|
|
5120
5159
|
#
|
|
5121
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
5160
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#163
|
|
5122
5161
|
def put(key, value); end
|
|
5123
5162
|
|
|
5124
5163
|
# Insert value into map with key if key is absent in one atomic step.
|
|
@@ -5263,8 +5302,8 @@ class Concurrent::MaxRestartFrequencyError < ::Concurrent::Error; end
|
|
|
5263
5302
|
# # In a Rails controller...
|
|
5264
5303
|
# result = ClientService.new(10).find # returns a Maybe
|
|
5265
5304
|
# render json: result.or(NullClient.new)
|
|
5266
|
-
# @see https://hackage.haskell.org/package/base-4.2.0.1/docs/Data-Maybe.html Haskell Data.Maybe
|
|
5267
5305
|
# @see https://github.com/purescript/purescript-maybe/blob/master/docs/Data.Maybe.md PureScript Data.Maybe
|
|
5306
|
+
# @see https://hackage.haskell.org/package/base-4.2.0.1/docs/Data-Maybe.html Haskell Data.Maybe
|
|
5268
5307
|
#
|
|
5269
5308
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#104
|
|
5270
5309
|
class Concurrent::Maybe < ::Concurrent::Synchronization::Object
|
|
@@ -5294,7 +5333,7 @@ class Concurrent::Maybe < ::Concurrent::Synchronization::Object
|
|
|
5294
5333
|
#
|
|
5295
5334
|
# @return [Boolean] True if `Just` or false if `Nothing`.
|
|
5296
5335
|
#
|
|
5297
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#
|
|
5336
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#179
|
|
5298
5337
|
def fulfilled?; end
|
|
5299
5338
|
|
|
5300
5339
|
# The value of a `Maybe` when `Just`. Will be `NONE` when `Nothing`.
|
|
@@ -5330,19 +5369,19 @@ class Concurrent::Maybe < ::Concurrent::Synchronization::Object
|
|
|
5330
5369
|
|
|
5331
5370
|
# The reason for the `Maybe` when `Nothing`. Will be `NONE` when `Just`.
|
|
5332
5371
|
#
|
|
5333
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#
|
|
5372
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#191
|
|
5334
5373
|
def reason; end
|
|
5335
5374
|
|
|
5336
5375
|
# Is this `Maybe` a `nothing` (rejected with an exception upon fulfillment)?
|
|
5337
5376
|
#
|
|
5338
5377
|
# @return [Boolean] True if `Nothing` or false if `Just`.
|
|
5339
5378
|
#
|
|
5340
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#
|
|
5379
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#187
|
|
5341
5380
|
def rejected?; end
|
|
5342
5381
|
|
|
5343
5382
|
# The value of a `Maybe` when `Just`. Will be `NONE` when `Nothing`.
|
|
5344
5383
|
#
|
|
5345
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#
|
|
5384
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#189
|
|
5346
5385
|
def value; end
|
|
5347
5386
|
|
|
5348
5387
|
class << self
|
|
@@ -5385,7 +5424,7 @@ class Concurrent::Maybe < ::Concurrent::Synchronization::Object
|
|
|
5385
5424
|
|
|
5386
5425
|
private
|
|
5387
5426
|
|
|
5388
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
5427
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#119
|
|
5389
5428
|
def new(*args, &block); end
|
|
5390
5429
|
end
|
|
5391
5430
|
end
|
|
@@ -5509,8 +5548,8 @@ module Concurrent::MutableStruct
|
|
|
5509
5548
|
# @return [Synchronization::AbstractStruct] a new struct with the new values
|
|
5510
5549
|
# @yield an options block for resolving duplicate keys
|
|
5511
5550
|
# @yieldparam member [String, Symbol] the name of the member which is duplicated
|
|
5512
|
-
# @yieldparam selfvalue [Object] the value of the member in `self`
|
|
5513
5551
|
# @yieldparam othervalue [Object] the value of the member in `other`
|
|
5552
|
+
# @yieldparam selfvalue [Object] the value of the member in `self`
|
|
5514
5553
|
#
|
|
5515
5554
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#94
|
|
5516
5555
|
def merge(other, &block); end
|
|
@@ -5530,7 +5569,7 @@ module Concurrent::MutableStruct
|
|
|
5530
5569
|
#
|
|
5531
5570
|
# @return [Array] the values for this struct
|
|
5532
5571
|
#
|
|
5533
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#
|
|
5572
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#54
|
|
5534
5573
|
def to_a; end
|
|
5535
5574
|
|
|
5536
5575
|
# Returns a hash containing the names and values for the struct’s members.
|
|
@@ -5544,7 +5583,7 @@ module Concurrent::MutableStruct
|
|
|
5544
5583
|
#
|
|
5545
5584
|
# @return [String] the contents of this struct in a string
|
|
5546
5585
|
#
|
|
5547
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#
|
|
5586
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#75
|
|
5548
5587
|
def to_s; end
|
|
5549
5588
|
|
|
5550
5589
|
# Returns the values for this struct as an Array.
|
|
@@ -5817,7 +5856,7 @@ class Concurrent::MutexAtomicFixnum
|
|
|
5817
5856
|
# @param delta [Fixnum] the amount by which to decrease the current value
|
|
5818
5857
|
# @return [Fixnum] the current value after decrementation
|
|
5819
5858
|
#
|
|
5820
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb#
|
|
5859
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb#41
|
|
5821
5860
|
def down(delta = T.unsafe(nil)); end
|
|
5822
5861
|
|
|
5823
5862
|
# Increases the current value by the given amount (defaults to 1).
|
|
@@ -5833,7 +5872,7 @@ class Concurrent::MutexAtomicFixnum
|
|
|
5833
5872
|
# @param delta [Fixnum] the amount by which to increase the current value
|
|
5834
5873
|
# @return [Fixnum] the current value after incrementation
|
|
5835
5874
|
#
|
|
5836
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb#
|
|
5875
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb#34
|
|
5837
5876
|
def up(delta = T.unsafe(nil)); end
|
|
5838
5877
|
|
|
5839
5878
|
# Pass the current value to the given block, replacing it
|
|
@@ -5892,14 +5931,14 @@ class Concurrent::MutexAtomicReference
|
|
|
5892
5931
|
#
|
|
5893
5932
|
# that the actual value was not equal to the expected value.
|
|
5894
5933
|
#
|
|
5895
|
-
# @param old_value [Object] the expected value
|
|
5896
5934
|
# @param new_value [Object] the new value
|
|
5935
|
+
# @param old_value [Object] the expected value
|
|
5897
5936
|
# @return [Boolean] `true` if successful. A `false` return indicates
|
|
5898
5937
|
#
|
|
5899
5938
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#45
|
|
5900
5939
|
def _compare_and_set(old_value, new_value); end
|
|
5901
5940
|
|
|
5902
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/
|
|
5941
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#13
|
|
5903
5942
|
def compare_and_swap(old_value, new_value); end
|
|
5904
5943
|
|
|
5905
5944
|
# Gets the current value.
|
|
@@ -5930,14 +5969,14 @@ class Concurrent::MutexAtomicReference
|
|
|
5930
5969
|
# @param new_value [Object] the new value
|
|
5931
5970
|
# @return [Object] the old value
|
|
5932
5971
|
#
|
|
5933
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#
|
|
5972
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#42
|
|
5934
5973
|
def swap(new_value); end
|
|
5935
5974
|
|
|
5936
5975
|
# Gets the current value.
|
|
5937
5976
|
#
|
|
5938
5977
|
# @return [Object] the current value
|
|
5939
5978
|
#
|
|
5940
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#
|
|
5979
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#26
|
|
5941
5980
|
def value; end
|
|
5942
5981
|
|
|
5943
5982
|
# Sets to the given value.
|
|
@@ -5945,7 +5984,7 @@ class Concurrent::MutexAtomicReference
|
|
|
5945
5984
|
# @param new_value [Object] the new value
|
|
5946
5985
|
# @return [Object] the new value
|
|
5947
5986
|
#
|
|
5948
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#
|
|
5987
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#32
|
|
5949
5988
|
def value=(new_value); end
|
|
5950
5989
|
|
|
5951
5990
|
protected
|
|
@@ -6266,8 +6305,8 @@ class Concurrent::Promise < ::Concurrent::IVar
|
|
|
6266
6305
|
# @param opts [Hash] a customizable set of options
|
|
6267
6306
|
# @raise [ArgumentError] if no block is given
|
|
6268
6307
|
# @return [Promise] a new instance of Promise
|
|
6269
|
-
# @see http://wiki.commonjs.org/wiki/Promises/A
|
|
6270
6308
|
# @see http://promises-aplus.github.io/promises-spec/
|
|
6309
|
+
# @see http://wiki.commonjs.org/wiki/Promises/A
|
|
6271
6310
|
# @yield The block operation to be performed asynchronously.
|
|
6272
6311
|
#
|
|
6273
6312
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#210
|
|
@@ -6279,7 +6318,7 @@ class Concurrent::Promise < ::Concurrent::IVar
|
|
|
6279
6318
|
# @return [Promise] self
|
|
6280
6319
|
# @yield The block to execute
|
|
6281
6320
|
#
|
|
6282
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#
|
|
6321
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#364
|
|
6283
6322
|
def catch(&block); end
|
|
6284
6323
|
|
|
6285
6324
|
# Execute an `:unscheduled` `Promise`. Immediately sets the state to `:pending` and
|
|
@@ -6319,7 +6358,7 @@ class Concurrent::Promise < ::Concurrent::IVar
|
|
|
6319
6358
|
# @return [Promise] self
|
|
6320
6359
|
# @yield The block to execute
|
|
6321
6360
|
#
|
|
6322
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#
|
|
6361
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#365
|
|
6323
6362
|
def on_error(&block); end
|
|
6324
6363
|
|
|
6325
6364
|
# Chain onto this promise an action to be undertaken on success
|
|
@@ -6552,7 +6591,7 @@ class Concurrent::Promises::AbstractEventFuture < ::Concurrent::Synchronization:
|
|
|
6552
6591
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#522
|
|
6553
6592
|
def initialize(promise, default_executor); end
|
|
6554
6593
|
|
|
6555
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
6594
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#515
|
|
6556
6595
|
def __initialize_atomic_fields__; end
|
|
6557
6596
|
|
|
6558
6597
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#738
|
|
@@ -6583,12 +6622,12 @@ class Concurrent::Promises::AbstractEventFuture < ::Concurrent::Synchronization:
|
|
|
6583
6622
|
|
|
6584
6623
|
# Chains the task to be executed asynchronously on executor after it is resolved.
|
|
6585
6624
|
#
|
|
6586
|
-
# @overload an_event.chain_on
|
|
6587
6625
|
# @overload a_future.chain_on
|
|
6588
|
-
# @
|
|
6589
|
-
# global executor. The task is executed on it, default executor remains unchanged.
|
|
6626
|
+
# @overload an_event.chain_on
|
|
6590
6627
|
# @param args [Object] arguments which are passed to the task when it's executed.
|
|
6591
6628
|
# (It might be prepended with other arguments, see the @yield section).
|
|
6629
|
+
# @param executor [Executor, :io, :fast] Instance of an executor or a name of the
|
|
6630
|
+
# global executor. The task is executed on it, default executor remains unchanged.
|
|
6592
6631
|
# @return [Future]
|
|
6593
6632
|
# @yieldreturn will become result of the returned Future.
|
|
6594
6633
|
# Its returned value becomes {Future#value} fulfilling it,
|
|
@@ -6609,9 +6648,9 @@ class Concurrent::Promises::AbstractEventFuture < ::Concurrent::Synchronization:
|
|
|
6609
6648
|
#
|
|
6610
6649
|
# @return [Executor] default executor
|
|
6611
6650
|
# @see #with_default_executor
|
|
6651
|
+
# @see FactoryMethods#any_fulfilled_future_on
|
|
6612
6652
|
# @see FactoryMethods#future_on
|
|
6613
6653
|
# @see FactoryMethods#resolvable_future
|
|
6614
|
-
# @see FactoryMethods#any_fulfilled_future_on
|
|
6615
6654
|
# @see similar
|
|
6616
6655
|
#
|
|
6617
6656
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#590
|
|
@@ -6619,10 +6658,10 @@ class Concurrent::Promises::AbstractEventFuture < ::Concurrent::Synchronization:
|
|
|
6619
6658
|
|
|
6620
6659
|
# @return [String] Short string representation.
|
|
6621
6660
|
#
|
|
6622
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#
|
|
6661
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#623
|
|
6623
6662
|
def inspect; end
|
|
6624
6663
|
|
|
6625
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
6664
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#515
|
|
6626
6665
|
def internal_state; end
|
|
6627
6666
|
|
|
6628
6667
|
# Shortcut of {#on_resolution_using} with default `:io` executor supplied.
|
|
@@ -6636,8 +6675,8 @@ class Concurrent::Promises::AbstractEventFuture < ::Concurrent::Synchronization:
|
|
|
6636
6675
|
# Stores the callback to be executed synchronously on resolving thread after it is
|
|
6637
6676
|
# resolved.
|
|
6638
6677
|
#
|
|
6639
|
-
# @overload an_event.on_resolution!
|
|
6640
6678
|
# @overload a_future.on_resolution!
|
|
6679
|
+
# @overload an_event.on_resolution!
|
|
6641
6680
|
# @param args [Object] arguments which are passed to the task when it's executed.
|
|
6642
6681
|
# (It might be prepended with other arguments, see the @yield section).
|
|
6643
6682
|
# @return [self]
|
|
@@ -6648,12 +6687,12 @@ class Concurrent::Promises::AbstractEventFuture < ::Concurrent::Synchronization:
|
|
|
6648
6687
|
|
|
6649
6688
|
# Stores the callback to be executed asynchronously on executor after it is resolved.
|
|
6650
6689
|
#
|
|
6651
|
-
# @overload an_event.on_resolution_using
|
|
6652
6690
|
# @overload a_future.on_resolution_using
|
|
6653
|
-
# @
|
|
6654
|
-
# global executor. The task is executed on it, default executor remains unchanged.
|
|
6691
|
+
# @overload an_event.on_resolution_using
|
|
6655
6692
|
# @param args [Object] arguments which are passed to the task when it's executed.
|
|
6656
6693
|
# (It might be prepended with other arguments, see the @yield section).
|
|
6694
|
+
# @param executor [Executor, :io, :fast] Instance of an executor or a name of the
|
|
6695
|
+
# global executor. The task is executed on it, default executor remains unchanged.
|
|
6657
6696
|
# @return [self]
|
|
6658
6697
|
# @yieldreturn is forgotten.
|
|
6659
6698
|
#
|
|
@@ -6684,8 +6723,8 @@ class Concurrent::Promises::AbstractEventFuture < ::Concurrent::Synchronization:
|
|
|
6684
6723
|
|
|
6685
6724
|
# Returns its state.
|
|
6686
6725
|
#
|
|
6687
|
-
# @overload an_event.state
|
|
6688
6726
|
# @overload a_future.state
|
|
6727
|
+
# @overload an_event.state
|
|
6689
6728
|
# @return [Symbol]
|
|
6690
6729
|
#
|
|
6691
6730
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#543
|
|
@@ -6696,7 +6735,7 @@ class Concurrent::Promises::AbstractEventFuture < ::Concurrent::Synchronization:
|
|
|
6696
6735
|
# @param resolvable [Resolvable]
|
|
6697
6736
|
# @return [self]
|
|
6698
6737
|
#
|
|
6699
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#
|
|
6738
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#633
|
|
6700
6739
|
def tangle(resolvable); end
|
|
6701
6740
|
|
|
6702
6741
|
# @return [String] Short string representation.
|
|
@@ -6771,16 +6810,16 @@ class Concurrent::Promises::AbstractEventFuture < ::Concurrent::Synchronization:
|
|
|
6771
6810
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#818
|
|
6772
6811
|
def callback_notify_blocked(state, promise, index); end
|
|
6773
6812
|
|
|
6774
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
6813
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#515
|
|
6775
6814
|
def compare_and_set_internal_state(expected, value); end
|
|
6776
6815
|
|
|
6777
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
6816
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#515
|
|
6778
6817
|
def internal_state=(value); end
|
|
6779
6818
|
|
|
6780
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
6819
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#515
|
|
6781
6820
|
def swap_internal_state(value); end
|
|
6782
6821
|
|
|
6783
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
6822
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#515
|
|
6784
6823
|
def update_internal_state(&block); end
|
|
6785
6824
|
|
|
6786
6825
|
# @return [Boolean]
|
|
@@ -6840,13 +6879,13 @@ class Concurrent::Promises::AbstractPromise < ::Concurrent::Synchronization::Obj
|
|
|
6840
6879
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1581
|
|
6841
6880
|
def delayed_because; end
|
|
6842
6881
|
|
|
6843
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#
|
|
6882
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1562
|
|
6844
6883
|
def event; end
|
|
6845
6884
|
|
|
6846
6885
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1558
|
|
6847
6886
|
def future; end
|
|
6848
6887
|
|
|
6849
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#
|
|
6888
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1579
|
|
6850
6889
|
def inspect; end
|
|
6851
6890
|
|
|
6852
6891
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1568
|
|
@@ -6971,7 +7010,7 @@ class Concurrent::Promises::BlockedPromise < ::Concurrent::Promises::InnerPromis
|
|
|
6971
7010
|
|
|
6972
7011
|
private
|
|
6973
7012
|
|
|
6974
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
7013
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1621
|
|
6975
7014
|
def new(*args, &block); end
|
|
6976
7015
|
end
|
|
6977
7016
|
end
|
|
@@ -7026,7 +7065,7 @@ class Concurrent::Promises::Event < ::Concurrent::Promises::AbstractEventFuture
|
|
|
7026
7065
|
#
|
|
7027
7066
|
# @return [Future, Event]
|
|
7028
7067
|
#
|
|
7029
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#
|
|
7068
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#847
|
|
7030
7069
|
def &(other); end
|
|
7031
7070
|
|
|
7032
7071
|
# Creates a new event which will be resolved when the first of receiver, `event_or_future`
|
|
@@ -7056,7 +7095,7 @@ class Concurrent::Promises::Event < ::Concurrent::Promises::AbstractEventFuture
|
|
|
7056
7095
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#875
|
|
7057
7096
|
def schedule(intended_time); end
|
|
7058
7097
|
|
|
7059
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#
|
|
7098
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#828
|
|
7060
7099
|
def then(*args, &task); end
|
|
7061
7100
|
|
|
7062
7101
|
# Returns self, since this is event
|
|
@@ -7097,7 +7136,7 @@ class Concurrent::Promises::Event < ::Concurrent::Promises::AbstractEventFuture
|
|
|
7097
7136
|
#
|
|
7098
7137
|
# @return [Event]
|
|
7099
7138
|
#
|
|
7100
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#
|
|
7139
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#857
|
|
7101
7140
|
def |(event_or_future); end
|
|
7102
7141
|
|
|
7103
7142
|
private
|
|
@@ -7139,7 +7178,7 @@ module Concurrent::Promises::FactoryMethods
|
|
|
7139
7178
|
# @return [Future]
|
|
7140
7179
|
# @see #any_resolved_future_on
|
|
7141
7180
|
#
|
|
7142
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#
|
|
7181
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#282
|
|
7143
7182
|
def any(*futures_and_or_events); end
|
|
7144
7183
|
|
|
7145
7184
|
# Shortcut of {#any_event_on} with default `:io` executor supplied.
|
|
@@ -7254,11 +7293,11 @@ module Concurrent::Promises::FactoryMethods
|
|
|
7254
7293
|
# Constructs a new Future which will be resolved after block is evaluated on default executor.
|
|
7255
7294
|
# Evaluation begins immediately.
|
|
7256
7295
|
#
|
|
7296
|
+
# @param args [Object] arguments which are passed to the task when it's executed.
|
|
7297
|
+
# (It might be prepended with other arguments, see the @yield section).
|
|
7257
7298
|
# @param default_executor [Executor, :io, :fast] Instance of an executor or a name of the
|
|
7258
7299
|
# global executor. Default executor propagates to chained futures unless overridden with
|
|
7259
7300
|
# executor parameter or changed with {AbstractEventFuture#with_default_executor}.
|
|
7260
|
-
# @param args [Object] arguments which are passed to the task when it's executed.
|
|
7261
|
-
# (It might be prepended with other arguments, see the @yield section).
|
|
7262
7301
|
# @return [Future]
|
|
7263
7302
|
# @yield [*args] to the task.
|
|
7264
7303
|
# @yieldreturn will become result of the returned Future.
|
|
@@ -7348,12 +7387,12 @@ module Concurrent::Promises::FactoryMethods
|
|
|
7348
7387
|
# Creates a resolved future with will be either fulfilled with the given value or rejected with
|
|
7349
7388
|
# the given reason.
|
|
7350
7389
|
#
|
|
7351
|
-
# @param fulfilled [true, false]
|
|
7352
|
-
# @param value [Object]
|
|
7353
|
-
# @param reason [Object]
|
|
7354
7390
|
# @param default_executor [Executor, :io, :fast] Instance of an executor or a name of the
|
|
7355
7391
|
# global executor. Default executor propagates to chained futures unless overridden with
|
|
7356
7392
|
# executor parameter or changed with {AbstractEventFuture#with_default_executor}.
|
|
7393
|
+
# @param fulfilled [true, false]
|
|
7394
|
+
# @param reason [Object]
|
|
7395
|
+
# @param value [Object]
|
|
7357
7396
|
# @return [Future]
|
|
7358
7397
|
#
|
|
7359
7398
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#118
|
|
@@ -7385,7 +7424,7 @@ module Concurrent::Promises::FactoryMethods
|
|
|
7385
7424
|
# @return [Future]
|
|
7386
7425
|
# @see #zip_futures_on
|
|
7387
7426
|
#
|
|
7388
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#
|
|
7427
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#258
|
|
7389
7428
|
def zip(*futures_and_or_events); end
|
|
7390
7429
|
|
|
7391
7430
|
# Shortcut of {#zip_events_on} with default `:io` executor supplied.
|
|
@@ -7482,7 +7521,7 @@ class Concurrent::Promises::Future < ::Concurrent::Promises::AbstractEventFuture
|
|
|
7482
7521
|
#
|
|
7483
7522
|
# @return [Future]
|
|
7484
7523
|
#
|
|
7485
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#
|
|
7524
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1078
|
|
7486
7525
|
def &(other); end
|
|
7487
7526
|
|
|
7488
7527
|
# Creates a new event which will be resolved when the first of receiver, `event_or_future`
|
|
@@ -7523,7 +7562,7 @@ class Concurrent::Promises::Future < ::Concurrent::Promises::AbstractEventFuture
|
|
|
7523
7562
|
# @param level [Integer] how many levels of futures should flatten
|
|
7524
7563
|
# @return [Future]
|
|
7525
7564
|
#
|
|
7526
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#
|
|
7565
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1124
|
|
7527
7566
|
def flat(level = T.unsafe(nil)); end
|
|
7528
7567
|
|
|
7529
7568
|
# Creates new event which will be resolved when the returned event by receiver is.
|
|
@@ -7552,7 +7591,7 @@ class Concurrent::Promises::Future < ::Concurrent::Promises::AbstractEventFuture
|
|
|
7552
7591
|
|
|
7553
7592
|
# @return [String] Short string representation.
|
|
7554
7593
|
#
|
|
7555
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#
|
|
7594
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1243
|
|
7556
7595
|
def inspect; end
|
|
7557
7596
|
|
|
7558
7597
|
# Shortcut of {#on_fulfillment_using} with default `:io` executor supplied.
|
|
@@ -7578,10 +7617,10 @@ class Concurrent::Promises::Future < ::Concurrent::Promises::AbstractEventFuture
|
|
|
7578
7617
|
# Stores the callback to be executed asynchronously on executor after it is
|
|
7579
7618
|
# fulfilled. Does nothing on rejection.
|
|
7580
7619
|
#
|
|
7581
|
-
# @param executor [Executor, :io, :fast] Instance of an executor or a name of the
|
|
7582
|
-
# global executor. The task is executed on it, default executor remains unchanged.
|
|
7583
7620
|
# @param args [Object] arguments which are passed to the task when it's executed.
|
|
7584
7621
|
# (It might be prepended with other arguments, see the @yield section).
|
|
7622
|
+
# @param executor [Executor, :io, :fast] Instance of an executor or a name of the
|
|
7623
|
+
# global executor. The task is executed on it, default executor remains unchanged.
|
|
7585
7624
|
# @return [self]
|
|
7586
7625
|
# @yield [value, *args] to the callback.
|
|
7587
7626
|
# @yieldreturn is forgotten.
|
|
@@ -7612,10 +7651,10 @@ class Concurrent::Promises::Future < ::Concurrent::Promises::AbstractEventFuture
|
|
|
7612
7651
|
# Stores the callback to be executed asynchronously on executor after it is
|
|
7613
7652
|
# rejected. Does nothing on fulfillment.
|
|
7614
7653
|
#
|
|
7615
|
-
# @param executor [Executor, :io, :fast] Instance of an executor or a name of the
|
|
7616
|
-
# global executor. The task is executed on it, default executor remains unchanged.
|
|
7617
7654
|
# @param args [Object] arguments which are passed to the task when it's executed.
|
|
7618
7655
|
# (It might be prepended with other arguments, see the @yield section).
|
|
7656
|
+
# @param executor [Executor, :io, :fast] Instance of an executor or a name of the
|
|
7657
|
+
# global executor. The task is executed on it, default executor remains unchanged.
|
|
7619
7658
|
# @return [self]
|
|
7620
7659
|
# @yield [reason, *args] to the callback.
|
|
7621
7660
|
# @yieldreturn is forgotten.
|
|
@@ -7656,10 +7695,10 @@ class Concurrent::Promises::Future < ::Concurrent::Promises::AbstractEventFuture
|
|
|
7656
7695
|
# Chains the task to be executed asynchronously on executor after it rejects. Does not run
|
|
7657
7696
|
# the task if it fulfills. It will resolve though, triggering any dependent futures.
|
|
7658
7697
|
#
|
|
7659
|
-
# @param executor [Executor, :io, :fast] Instance of an executor or a name of the
|
|
7660
|
-
# global executor. The task is executed on it, default executor remains unchanged.
|
|
7661
7698
|
# @param args [Object] arguments which are passed to the task when it's executed.
|
|
7662
7699
|
# (It might be prepended with other arguments, see the @yield section).
|
|
7700
|
+
# @param executor [Executor, :io, :fast] Instance of an executor or a name of the
|
|
7701
|
+
# global executor. The task is executed on it, default executor remains unchanged.
|
|
7663
7702
|
# @return [Future]
|
|
7664
7703
|
# @yield [reason, *args] to the task.
|
|
7665
7704
|
# @yieldreturn will become result of the returned Future.
|
|
@@ -7724,10 +7763,10 @@ class Concurrent::Promises::Future < ::Concurrent::Promises::AbstractEventFuture
|
|
|
7724
7763
|
# Chains the task to be executed asynchronously on executor after it fulfills. Does not run
|
|
7725
7764
|
# the task if it rejects. It will resolve though, triggering any dependent futures.
|
|
7726
7765
|
#
|
|
7727
|
-
# @param executor [Executor, :io, :fast] Instance of an executor or a name of the
|
|
7728
|
-
# global executor. The task is executed on it, default executor remains unchanged.
|
|
7729
7766
|
# @param args [Object] arguments which are passed to the task when it's executed.
|
|
7730
7767
|
# (It might be prepended with other arguments, see the @yield section).
|
|
7768
|
+
# @param executor [Executor, :io, :fast] Instance of an executor or a name of the
|
|
7769
|
+
# global executor. The task is executed on it, default executor remains unchanged.
|
|
7731
7770
|
# @return [Future]
|
|
7732
7771
|
# @yield [value, *args] to the task.
|
|
7733
7772
|
# @yieldreturn will become result of the returned Future.
|
|
@@ -7829,7 +7868,7 @@ class Concurrent::Promises::Future < ::Concurrent::Promises::AbstractEventFuture
|
|
|
7829
7868
|
#
|
|
7830
7869
|
# @return [Future]
|
|
7831
7870
|
#
|
|
7832
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#
|
|
7871
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1089
|
|
7833
7872
|
def |(event_or_future); end
|
|
7834
7873
|
|
|
7835
7874
|
private
|
|
@@ -8147,11 +8186,11 @@ class Concurrent::Promises::ResolvableFuture < ::Concurrent::Promises::Future
|
|
|
8147
8186
|
# Makes the future fulfilled with `value`,
|
|
8148
8187
|
# which triggers all dependent futures.
|
|
8149
8188
|
#
|
|
8150
|
-
# @param value [Object]
|
|
8151
8189
|
# @param raise_on_reassign [Boolean] should method raise exception if already resolved
|
|
8152
8190
|
# @param reserved [true, false] Set to true if the resolvable is {#reserve}d by you,
|
|
8153
8191
|
# marks resolution of reserved resolvable events and futures explicitly.
|
|
8154
8192
|
# Advanced feature, ignore unless you use {Resolvable#reserve} from edge.
|
|
8193
|
+
# @param value [Object]
|
|
8155
8194
|
# @return [self, false] false is returned when raise_on_reassign is false and the receiver
|
|
8156
8195
|
# is already resolved.
|
|
8157
8196
|
#
|
|
@@ -8172,8 +8211,8 @@ class Concurrent::Promises::ResolvableFuture < ::Concurrent::Promises::Future
|
|
|
8172
8211
|
# Makes the future rejected with `reason`,
|
|
8173
8212
|
# which triggers all dependent futures.
|
|
8174
8213
|
#
|
|
8175
|
-
# @param reason [Object]
|
|
8176
8214
|
# @param raise_on_reassign [Boolean] should method raise exception if already resolved
|
|
8215
|
+
# @param reason [Object]
|
|
8177
8216
|
# @param reserved [true, false] Set to true if the resolvable is {#reserve}d by you,
|
|
8178
8217
|
# marks resolution of reserved resolvable events and futures explicitly.
|
|
8179
8218
|
# Advanced feature, ignore unless you use {Resolvable#reserve} from edge.
|
|
@@ -8187,12 +8226,12 @@ class Concurrent::Promises::ResolvableFuture < ::Concurrent::Promises::Future
|
|
|
8187
8226
|
# which triggers all dependent futures.
|
|
8188
8227
|
#
|
|
8189
8228
|
# @param fulfilled [true, false]
|
|
8190
|
-
# @param value [Object]
|
|
8191
|
-
# @param reason [Object]
|
|
8192
8229
|
# @param raise_on_reassign [Boolean] should method raise exception if already resolved
|
|
8230
|
+
# @param reason [Object]
|
|
8193
8231
|
# @param reserved [true, false] Set to true if the resolvable is {#reserve}d by you,
|
|
8194
8232
|
# marks resolution of reserved resolvable events and futures explicitly.
|
|
8195
8233
|
# Advanced feature, ignore unless you use {Resolvable#reserve} from edge.
|
|
8234
|
+
# @param value [Object]
|
|
8196
8235
|
# @return [self, false] false is returned when raise_on_reassign is false and the receiver
|
|
8197
8236
|
# is already resolved.
|
|
8198
8237
|
#
|
|
@@ -8271,7 +8310,7 @@ class Concurrent::Promises::ResolvableFuturePromise < ::Concurrent::Promises::Ab
|
|
|
8271
8310
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1607
|
|
8272
8311
|
def initialize(default_executor); end
|
|
8273
8312
|
|
|
8274
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#
|
|
8313
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1611
|
|
8275
8314
|
def evaluate_to(*args, block); end
|
|
8276
8315
|
end
|
|
8277
8316
|
|
|
@@ -8773,22 +8812,22 @@ class Concurrent::RubyExchanger < ::Concurrent::AbstractExchanger
|
|
|
8773
8812
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#159
|
|
8774
8813
|
def initialize; end
|
|
8775
8814
|
|
|
8776
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
8815
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#165
|
|
8777
8816
|
def __initialize_atomic_fields__; end
|
|
8778
8817
|
|
|
8779
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
8818
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#165
|
|
8780
8819
|
def compare_and_set_slot(expected, value); end
|
|
8781
8820
|
|
|
8782
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
8821
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#165
|
|
8783
8822
|
def slot; end
|
|
8784
8823
|
|
|
8785
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
8824
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#165
|
|
8786
8825
|
def slot=(value); end
|
|
8787
8826
|
|
|
8788
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
8827
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#165
|
|
8789
8828
|
def swap_slot(value); end
|
|
8790
8829
|
|
|
8791
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
8830
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#165
|
|
8792
8831
|
def update_slot(&block); end
|
|
8793
8832
|
|
|
8794
8833
|
private
|
|
@@ -8800,8 +8839,8 @@ class Concurrent::RubyExchanger < ::Concurrent::AbstractExchanger
|
|
|
8800
8839
|
# for the exchange. When the timeout value is `nil` the method will
|
|
8801
8840
|
# block indefinitely.
|
|
8802
8841
|
#
|
|
8803
|
-
# @param value [Object] the value to exchange with another thread
|
|
8804
8842
|
# @param timeout [Numeric, nil] in seconds, `nil` blocks indefinitely
|
|
8843
|
+
# @param value [Object] the value to exchange with another thread
|
|
8805
8844
|
# @return [Object, CANCEL] the value exchanged by the other thread; {CANCEL} on timeout
|
|
8806
8845
|
#
|
|
8807
8846
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#170
|
|
@@ -8817,10 +8856,10 @@ class Concurrent::RubyExchanger::Node < ::Concurrent::Synchronization::Object
|
|
|
8817
8856
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#142
|
|
8818
8857
|
def initialize(item); end
|
|
8819
8858
|
|
|
8820
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
8859
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#139
|
|
8821
8860
|
def __initialize_atomic_fields__; end
|
|
8822
8861
|
|
|
8823
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
8862
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#139
|
|
8824
8863
|
def compare_and_set_value(expected, value); end
|
|
8825
8864
|
|
|
8826
8865
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#153
|
|
@@ -8829,16 +8868,16 @@ class Concurrent::RubyExchanger::Node < ::Concurrent::Synchronization::Object
|
|
|
8829
8868
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#149
|
|
8830
8869
|
def latch; end
|
|
8831
8870
|
|
|
8832
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
8871
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#139
|
|
8833
8872
|
def swap_value(value); end
|
|
8834
8873
|
|
|
8835
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
8874
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#139
|
|
8836
8875
|
def update_value(&block); end
|
|
8837
8876
|
|
|
8838
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
8877
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#139
|
|
8839
8878
|
def value; end
|
|
8840
8879
|
|
|
8841
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
8880
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#139
|
|
8842
8881
|
def value=(value); end
|
|
8843
8882
|
end
|
|
8844
8883
|
|
|
@@ -8967,9 +9006,9 @@ end
|
|
|
8967
9006
|
#
|
|
8968
9007
|
# @note Failure to properly shutdown a thread pool can lead to unpredictable results.
|
|
8969
9008
|
# Please read *Shutting Down Thread Pools* for more information.
|
|
8970
|
-
# @see http://docs.oracle.com/javase/tutorial/essential/concurrency/pools.html Java Tutorials: Thread Pools
|
|
8971
9009
|
# @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executors.html Java Executors class
|
|
8972
9010
|
# @see http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutorService.html Java ExecutorService interface
|
|
9011
|
+
# @see http://docs.oracle.com/javase/tutorial/essential/concurrency/pools.html Java Tutorials: Thread Pools
|
|
8973
9012
|
# @see https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html#setDaemon-boolean-
|
|
8974
9013
|
#
|
|
8975
9014
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#12
|
|
@@ -9319,21 +9358,20 @@ end
|
|
|
9319
9358
|
# price.state #=> :fulfilled
|
|
9320
9359
|
# price.fulfilled? #=> true
|
|
9321
9360
|
# price.value #=> 63.65
|
|
9322
|
-
# @example
|
|
9361
|
+
# @example Failed task execution
|
|
9323
9362
|
#
|
|
9324
|
-
# task = Concurrent::ScheduledTask.
|
|
9325
|
-
# task.
|
|
9326
|
-
# task.execute
|
|
9327
|
-
# task.state #=> pending
|
|
9363
|
+
# task = Concurrent::ScheduledTask.execute(2){ raise StandardError.new('Call me maybe?') }
|
|
9364
|
+
# task.pending? #=> true
|
|
9328
9365
|
#
|
|
9329
9366
|
# # wait for it...
|
|
9330
9367
|
# sleep(3)
|
|
9331
9368
|
#
|
|
9332
9369
|
# task.unscheduled? #=> false
|
|
9333
9370
|
# task.pending? #=> false
|
|
9334
|
-
# task.fulfilled? #=>
|
|
9335
|
-
# task.rejected? #=>
|
|
9336
|
-
# task.value #=>
|
|
9371
|
+
# task.fulfilled? #=> false
|
|
9372
|
+
# task.rejected? #=> true
|
|
9373
|
+
# task.value #=> nil
|
|
9374
|
+
# task.reason #=> #<StandardError: Call me maybe?>
|
|
9337
9375
|
# @example One line creation and execution
|
|
9338
9376
|
#
|
|
9339
9377
|
# task = Concurrent::ScheduledTask.new(2){ 'What does the fox say?' }.execute
|
|
@@ -9341,20 +9379,21 @@ end
|
|
|
9341
9379
|
#
|
|
9342
9380
|
# task = Concurrent::ScheduledTask.execute(2){ 'What do you get when you multiply 6 by 9?' }
|
|
9343
9381
|
# task.state #=> pending
|
|
9344
|
-
# @example
|
|
9382
|
+
# @example Successful task execution
|
|
9345
9383
|
#
|
|
9346
|
-
# task = Concurrent::ScheduledTask.
|
|
9347
|
-
# task.
|
|
9384
|
+
# task = Concurrent::ScheduledTask.new(2){ 'What does the fox say?' }
|
|
9385
|
+
# task.state #=> :unscheduled
|
|
9386
|
+
# task.execute
|
|
9387
|
+
# task.state #=> pending
|
|
9348
9388
|
#
|
|
9349
9389
|
# # wait for it...
|
|
9350
9390
|
# sleep(3)
|
|
9351
9391
|
#
|
|
9352
9392
|
# task.unscheduled? #=> false
|
|
9353
9393
|
# task.pending? #=> false
|
|
9354
|
-
# task.fulfilled? #=>
|
|
9355
|
-
# task.rejected? #=>
|
|
9356
|
-
# task.value #=>
|
|
9357
|
-
# task.reason #=> #<StandardError: Call me maybe?>
|
|
9394
|
+
# task.fulfilled? #=> true
|
|
9395
|
+
# task.rejected? #=> false
|
|
9396
|
+
# task.value #=> 'What does the fox say?'
|
|
9358
9397
|
# @example Task execution with observation
|
|
9359
9398
|
#
|
|
9360
9399
|
# observer = Class.new{
|
|
@@ -9471,7 +9510,7 @@ class Concurrent::ScheduledTask < ::Concurrent::IVar
|
|
|
9471
9510
|
|
|
9472
9511
|
protected
|
|
9473
9512
|
|
|
9474
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
9513
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#301
|
|
9475
9514
|
def fail(reason = T.unsafe(nil)); end
|
|
9476
9515
|
|
|
9477
9516
|
# Reschedule the task using the given delay and the current time.
|
|
@@ -9491,10 +9530,10 @@ class Concurrent::ScheduledTask < ::Concurrent::IVar
|
|
|
9491
9530
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#312
|
|
9492
9531
|
def ns_schedule(delay); end
|
|
9493
9532
|
|
|
9494
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
9533
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#301
|
|
9495
9534
|
def set(value = T.unsafe(nil)); end
|
|
9496
9535
|
|
|
9497
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
9536
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#301
|
|
9498
9537
|
def try_set(value = T.unsafe(nil), &block); end
|
|
9499
9538
|
|
|
9500
9539
|
class << self
|
|
@@ -9617,8 +9656,8 @@ class Concurrent::SerializedExecution < ::Concurrent::Synchronization::LockableO
|
|
|
9617
9656
|
|
|
9618
9657
|
# Submit a task to the executor for asynchronous processing.
|
|
9619
9658
|
#
|
|
9620
|
-
# @param executor [Executor] to be used for this job
|
|
9621
9659
|
# @param args [Array] zero or more arguments to be passed to the task
|
|
9660
|
+
# @param executor [Executor] to be used for this job
|
|
9622
9661
|
# @raise [ArgumentError] if no task is given
|
|
9623
9662
|
# @return [Boolean] `true` if the task is queued, `false` if the executor
|
|
9624
9663
|
# is not running
|
|
@@ -9655,23 +9694,31 @@ class Concurrent::SerializedExecution::Job < ::Struct
|
|
|
9655
9694
|
# Returns the value of attribute args
|
|
9656
9695
|
#
|
|
9657
9696
|
# @return [Object] the current value of args
|
|
9697
|
+
#
|
|
9698
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#16
|
|
9658
9699
|
def args; end
|
|
9659
9700
|
|
|
9660
9701
|
# Sets the attribute args
|
|
9661
9702
|
#
|
|
9662
9703
|
# @param value [Object] the value to set the attribute args to.
|
|
9663
9704
|
# @return [Object] the newly set value
|
|
9705
|
+
#
|
|
9706
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#16
|
|
9664
9707
|
def args=(_); end
|
|
9665
9708
|
|
|
9666
9709
|
# Returns the value of attribute block
|
|
9667
9710
|
#
|
|
9668
9711
|
# @return [Object] the current value of block
|
|
9712
|
+
#
|
|
9713
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#16
|
|
9669
9714
|
def block; end
|
|
9670
9715
|
|
|
9671
9716
|
# Sets the attribute block
|
|
9672
9717
|
#
|
|
9673
9718
|
# @param value [Object] the value to set the attribute block to.
|
|
9674
9719
|
# @return [Object] the newly set value
|
|
9720
|
+
#
|
|
9721
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#16
|
|
9675
9722
|
def block=(_); end
|
|
9676
9723
|
|
|
9677
9724
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#17
|
|
@@ -9680,19 +9727,32 @@ class Concurrent::SerializedExecution::Job < ::Struct
|
|
|
9680
9727
|
# Returns the value of attribute executor
|
|
9681
9728
|
#
|
|
9682
9729
|
# @return [Object] the current value of executor
|
|
9730
|
+
#
|
|
9731
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#16
|
|
9683
9732
|
def executor; end
|
|
9684
9733
|
|
|
9685
9734
|
# Sets the attribute executor
|
|
9686
9735
|
#
|
|
9687
9736
|
# @param value [Object] the value to set the attribute executor to.
|
|
9688
9737
|
# @return [Object] the newly set value
|
|
9738
|
+
#
|
|
9739
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#16
|
|
9689
9740
|
def executor=(_); end
|
|
9690
9741
|
|
|
9691
9742
|
class << self
|
|
9743
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#16
|
|
9692
9744
|
def [](*_arg0); end
|
|
9745
|
+
|
|
9746
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#16
|
|
9693
9747
|
def inspect; end
|
|
9748
|
+
|
|
9749
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#16
|
|
9694
9750
|
def keyword_init?; end
|
|
9751
|
+
|
|
9752
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#16
|
|
9695
9753
|
def members; end
|
|
9754
|
+
|
|
9755
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#16
|
|
9696
9756
|
def new(*_arg0); end
|
|
9697
9757
|
end
|
|
9698
9758
|
end
|
|
@@ -9700,8 +9760,8 @@ end
|
|
|
9700
9760
|
# A wrapper/delegator for any `ExecutorService` that
|
|
9701
9761
|
# guarantees serialized execution of tasks.
|
|
9702
9762
|
#
|
|
9703
|
-
# @see [SimpleDelegator](http://www.ruby-doc.org/stdlib-2.1.2/libdoc/delegate/rdoc/SimpleDelegator.html)
|
|
9704
9763
|
# @see Concurrent::SerializedExecution
|
|
9764
|
+
# @see [SimpleDelegator](http://www.ruby-doc.org/stdlib-2.1.2/libdoc/delegate/rdoc/SimpleDelegator.html)
|
|
9705
9765
|
#
|
|
9706
9766
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution_delegator.rb#12
|
|
9707
9767
|
class Concurrent::SerializedExecutionDelegator < ::SimpleDelegator
|
|
@@ -9749,8 +9809,8 @@ Concurrent::SetImplementation = Concurrent::CRubySet
|
|
|
9749
9809
|
# or any time thereafter. Attempting to assign a value to a member
|
|
9750
9810
|
# that has already been set will result in a `Concurrent::ImmutabilityError`.
|
|
9751
9811
|
#
|
|
9752
|
-
# @see http://ruby-doc.org/core/Struct.html Ruby standard library `Struct`
|
|
9753
9812
|
# @see http://en.wikipedia.org/wiki/Final_(Java) Java `final` keyword
|
|
9813
|
+
# @see http://ruby-doc.org/core/Struct.html Ruby standard library `Struct`
|
|
9754
9814
|
#
|
|
9755
9815
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#14
|
|
9756
9816
|
module Concurrent::SettableStruct
|
|
@@ -9826,8 +9886,8 @@ module Concurrent::SettableStruct
|
|
|
9826
9886
|
# @return [Synchronization::AbstractStruct] a new struct with the new values
|
|
9827
9887
|
# @yield an options block for resolving duplicate keys
|
|
9828
9888
|
# @yieldparam member [String, Symbol] the name of the member which is duplicated
|
|
9829
|
-
# @yieldparam selfvalue [Object] the value of the member in `self`
|
|
9830
9889
|
# @yieldparam othervalue [Object] the value of the member in `other`
|
|
9890
|
+
# @yieldparam selfvalue [Object] the value of the member in `self`
|
|
9831
9891
|
#
|
|
9832
9892
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#35
|
|
9833
9893
|
def merge(other, &block); end
|
|
@@ -9847,7 +9907,7 @@ module Concurrent::SettableStruct
|
|
|
9847
9907
|
#
|
|
9848
9908
|
# @return [Array] the values for this struct
|
|
9849
9909
|
#
|
|
9850
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#
|
|
9910
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#21
|
|
9851
9911
|
def to_a; end
|
|
9852
9912
|
|
|
9853
9913
|
# Returns a hash containing the names and values for the struct’s members.
|
|
@@ -9861,7 +9921,7 @@ module Concurrent::SettableStruct
|
|
|
9861
9921
|
#
|
|
9862
9922
|
# @return [String] the contents of this struct in a string
|
|
9863
9923
|
#
|
|
9864
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#
|
|
9924
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#32
|
|
9865
9925
|
def to_s; end
|
|
9866
9926
|
|
|
9867
9927
|
# Returns the values for this struct as an Array.
|
|
@@ -10184,7 +10244,7 @@ module Concurrent::Synchronization::AbstractStruct
|
|
|
10184
10244
|
#
|
|
10185
10245
|
# @return [Fixnum] the number of struct members
|
|
10186
10246
|
#
|
|
10187
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#
|
|
10247
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#22
|
|
10188
10248
|
def size; end
|
|
10189
10249
|
|
|
10190
10250
|
protected
|
|
@@ -10248,8 +10308,8 @@ module Concurrent::Synchronization::AbstractStruct
|
|
|
10248
10308
|
# @return [Synchronization::AbstractStruct] a new struct with the new values
|
|
10249
10309
|
# @yield an options block for resolving duplicate keys
|
|
10250
10310
|
# @yieldparam member [String, Symbol] the name of the member which is duplicated
|
|
10251
|
-
# @yieldparam selfvalue [Object] the value of the member in `self`
|
|
10252
10311
|
# @yieldparam othervalue [Object] the value of the member in `other`
|
|
10312
|
+
# @yieldparam selfvalue [Object] the value of the member in `self`
|
|
10253
10313
|
#
|
|
10254
10314
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#114
|
|
10255
10315
|
def ns_merge(other, &block); end
|
|
@@ -10331,12 +10391,12 @@ class Concurrent::Synchronization::Condition < ::Concurrent::Synchronization::Lo
|
|
|
10331
10391
|
def wait_until(timeout = T.unsafe(nil), &condition); end
|
|
10332
10392
|
|
|
10333
10393
|
class << self
|
|
10334
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/
|
|
10394
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/condition.rb#15
|
|
10335
10395
|
def private_new(*args, &block); end
|
|
10336
10396
|
|
|
10337
10397
|
private
|
|
10338
10398
|
|
|
10339
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/
|
|
10399
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/condition.rb#16
|
|
10340
10400
|
def new(*args, &block); end
|
|
10341
10401
|
end
|
|
10342
10402
|
end
|
|
@@ -10359,22 +10419,22 @@ class Concurrent::Synchronization::Lock < ::Concurrent::Synchronization::Lockabl
|
|
|
10359
10419
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/lock.rb#31
|
|
10360
10420
|
def broadcast; end
|
|
10361
10421
|
|
|
10362
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/
|
|
10422
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/lock.rb#35
|
|
10363
10423
|
def ns_broadcast; end
|
|
10364
10424
|
|
|
10365
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/
|
|
10425
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/lock.rb#29
|
|
10366
10426
|
def ns_signal; end
|
|
10367
10427
|
|
|
10368
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/
|
|
10428
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/lock.rb#17
|
|
10369
10429
|
def ns_wait(timeout = T.unsafe(nil)); end
|
|
10370
10430
|
|
|
10371
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/
|
|
10431
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/lock.rb#23
|
|
10372
10432
|
def ns_wait_until(timeout = T.unsafe(nil), &condition); end
|
|
10373
10433
|
|
|
10374
10434
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/lock.rb#25
|
|
10375
10435
|
def signal; end
|
|
10376
10436
|
|
|
10377
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/
|
|
10437
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/lock.rb#11
|
|
10378
10438
|
def synchronize; end
|
|
10379
10439
|
|
|
10380
10440
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/lock.rb#13
|
|
@@ -10909,9 +10969,9 @@ end
|
|
|
10909
10969
|
#
|
|
10910
10970
|
# @note Failure to properly shutdown a thread pool can lead to unpredictable results.
|
|
10911
10971
|
# Please read *Shutting Down Thread Pools* for more information.
|
|
10912
|
-
# @see http://docs.oracle.com/javase/tutorial/essential/concurrency/pools.html Java Tutorials: Thread Pools
|
|
10913
10972
|
# @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executors.html Java Executors class
|
|
10914
10973
|
# @see http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutorService.html Java ExecutorService interface
|
|
10974
|
+
# @see http://docs.oracle.com/javase/tutorial/essential/concurrency/pools.html Java Tutorials: Thread Pools
|
|
10915
10975
|
# @see https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html#setDaemon-boolean-
|
|
10916
10976
|
#
|
|
10917
10977
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/thread_pool_executor.rb#56
|
|
@@ -10982,8 +11042,8 @@ class Concurrent::TimerSet < ::Concurrent::RubyExecutorService
|
|
|
10982
11042
|
# delay is less than 1/100th of a second the task will be immediately post
|
|
10983
11043
|
# to the executor.
|
|
10984
11044
|
#
|
|
10985
|
-
# @param delay [Float] the number of seconds to wait for before executing the task.
|
|
10986
11045
|
# @param args [Array<Object>] the arguments passed to the task on execution.
|
|
11046
|
+
# @param delay [Float] the number of seconds to wait for before executing the task.
|
|
10987
11047
|
# @raise [ArgumentError] if the intended execution time is not in the future.
|
|
10988
11048
|
# @raise [ArgumentError] if no block is given.
|
|
10989
11049
|
# @return [Concurrent::ScheduledTask, false] IVar representing the task if the post
|
|
@@ -10995,7 +11055,7 @@ class Concurrent::TimerSet < ::Concurrent::RubyExecutorService
|
|
|
10995
11055
|
|
|
10996
11056
|
private
|
|
10997
11057
|
|
|
10998
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/
|
|
11058
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/timer_set.rb#66
|
|
10999
11059
|
def <<(task); end
|
|
11000
11060
|
|
|
11001
11061
|
# Initialize the object.
|
|
@@ -11109,26 +11169,11 @@ end
|
|
|
11109
11169
|
# end
|
|
11110
11170
|
#
|
|
11111
11171
|
# task.execution_interval #=> 5
|
|
11112
|
-
# @example Immediate execution with `:run_now`
|
|
11113
|
-
# task = Concurrent::TimerTask.new(run_now: true){ puts 'Boom!' }
|
|
11114
|
-
# task.execute
|
|
11115
|
-
#
|
|
11116
|
-
# #=> 'Boom!'
|
|
11117
11172
|
# @example Configuring `:interval_type` with either :fixed_delay or :fixed_rate, default is :fixed_delay
|
|
11118
11173
|
# task = Concurrent::TimerTask.new(execution_interval: 5, interval_type: :fixed_rate) do
|
|
11119
11174
|
# puts 'Boom!'
|
|
11120
11175
|
# end
|
|
11121
11176
|
# task.interval_type #=> :fixed_rate
|
|
11122
|
-
# @example Last `#value` and `Dereferenceable` mixin
|
|
11123
|
-
# task = Concurrent::TimerTask.new(
|
|
11124
|
-
# dup_on_deref: true,
|
|
11125
|
-
# execution_interval: 5
|
|
11126
|
-
# ){ Time.now }
|
|
11127
|
-
#
|
|
11128
|
-
# task.execute
|
|
11129
|
-
# Time.now #=> 2013-11-07 18:06:50 -0500
|
|
11130
|
-
# sleep(10)
|
|
11131
|
-
# task.value #=> 2013-11-07 18:06:55 -0500
|
|
11132
11177
|
# @example Controlling execution from within the block
|
|
11133
11178
|
# timer_task = Concurrent::TimerTask.new(execution_interval: 1) do |task|
|
|
11134
11179
|
# task.execution_interval.to_i.times{ print 'Boom! ' }
|
|
@@ -11147,6 +11192,21 @@ end
|
|
|
11147
11192
|
# #=> Boom! Boom! Boom! Boom!
|
|
11148
11193
|
# #=> Boom! Boom! Boom! Boom! Boom!
|
|
11149
11194
|
# #=> Stopping...
|
|
11195
|
+
# @example Immediate execution with `:run_now`
|
|
11196
|
+
# task = Concurrent::TimerTask.new(run_now: true){ puts 'Boom!' }
|
|
11197
|
+
# task.execute
|
|
11198
|
+
#
|
|
11199
|
+
# #=> 'Boom!'
|
|
11200
|
+
# @example Last `#value` and `Dereferenceable` mixin
|
|
11201
|
+
# task = Concurrent::TimerTask.new(
|
|
11202
|
+
# dup_on_deref: true,
|
|
11203
|
+
# execution_interval: 5
|
|
11204
|
+
# ){ Time.now }
|
|
11205
|
+
#
|
|
11206
|
+
# task.execute
|
|
11207
|
+
# Time.now #=> 2013-11-07 18:06:50 -0500
|
|
11208
|
+
# sleep(10)
|
|
11209
|
+
# task.value #=> 2013-11-07 18:06:55 -0500
|
|
11150
11210
|
# @example Observation
|
|
11151
11211
|
# class TaskObserver
|
|
11152
11212
|
# def update(time, result, ex)
|
|
@@ -11185,8 +11245,8 @@ end
|
|
|
11185
11245
|
# #=> (2013-10-13 19:09:38 -0400) Execution failed with error StandardError
|
|
11186
11246
|
# #=> (2013-10-13 19:09:39 -0400) Execution failed with error StandardError
|
|
11187
11247
|
# task.shutdown
|
|
11188
|
-
# @see http://ruby-doc.org/stdlib-2.0/libdoc/observer/rdoc/Observable.html
|
|
11189
11248
|
# @see http://docs.oracle.com/javase/7/docs/api/java/util/TimerTask.html
|
|
11249
|
+
# @see http://ruby-doc.org/stdlib-2.0/libdoc/observer/rdoc/Observable.html
|
|
11190
11250
|
#
|
|
11191
11251
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#165
|
|
11192
11252
|
class Concurrent::TimerTask < ::Concurrent::RubyExecutorService
|
|
@@ -11213,14 +11273,14 @@ class Concurrent::TimerTask < ::Concurrent::RubyExecutorService
|
|
|
11213
11273
|
|
|
11214
11274
|
# Execute a previously created `TimerTask`.
|
|
11215
11275
|
#
|
|
11276
|
+
# @example Instance and execute in one line
|
|
11277
|
+
# task = Concurrent::TimerTask.new(execution_interval: 10){ print "Hello World\n" }.execute
|
|
11278
|
+
# task.running? #=> true
|
|
11216
11279
|
# @example Instance and execute in separate steps
|
|
11217
11280
|
# task = Concurrent::TimerTask.new(execution_interval: 10){ print "Hello World\n" }
|
|
11218
11281
|
# task.running? #=> false
|
|
11219
11282
|
# task.execute
|
|
11220
11283
|
# task.running? #=> true
|
|
11221
|
-
# @example Instance and execute in one line
|
|
11222
|
-
# task = Concurrent::TimerTask.new(execution_interval: 10){ print "Hello World\n" }.execute
|
|
11223
|
-
# task.running? #=> true
|
|
11224
11284
|
# @return [TimerTask] a reference to `self`
|
|
11225
11285
|
#
|
|
11226
11286
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#235
|
|
@@ -11264,7 +11324,7 @@ class Concurrent::TimerTask < ::Concurrent::RubyExecutorService
|
|
|
11264
11324
|
|
|
11265
11325
|
private
|
|
11266
11326
|
|
|
11267
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
11327
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#292
|
|
11268
11328
|
def <<(task); end
|
|
11269
11329
|
|
|
11270
11330
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#352
|
|
@@ -11282,7 +11342,7 @@ class Concurrent::TimerTask < ::Concurrent::RubyExecutorService
|
|
|
11282
11342
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#318
|
|
11283
11343
|
def ns_shutdown_execution; end
|
|
11284
11344
|
|
|
11285
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/
|
|
11345
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#292
|
|
11286
11346
|
def post(*args, &task); end
|
|
11287
11347
|
|
|
11288
11348
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#330
|
|
@@ -11382,30 +11442,47 @@ class Concurrent::Transaction::OpenEntry < ::Struct
|
|
|
11382
11442
|
# Returns the value of attribute modified
|
|
11383
11443
|
#
|
|
11384
11444
|
# @return [Object] the current value of modified
|
|
11445
|
+
#
|
|
11446
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#157
|
|
11385
11447
|
def modified; end
|
|
11386
11448
|
|
|
11387
11449
|
# Sets the attribute modified
|
|
11388
11450
|
#
|
|
11389
11451
|
# @param value [Object] the value to set the attribute modified to.
|
|
11390
11452
|
# @return [Object] the newly set value
|
|
11453
|
+
#
|
|
11454
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#157
|
|
11391
11455
|
def modified=(_); end
|
|
11392
11456
|
|
|
11393
11457
|
# Returns the value of attribute value
|
|
11394
11458
|
#
|
|
11395
11459
|
# @return [Object] the current value of value
|
|
11460
|
+
#
|
|
11461
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#157
|
|
11396
11462
|
def value; end
|
|
11397
11463
|
|
|
11398
11464
|
# Sets the attribute value
|
|
11399
11465
|
#
|
|
11400
11466
|
# @param value [Object] the value to set the attribute value to.
|
|
11401
11467
|
# @return [Object] the newly set value
|
|
11468
|
+
#
|
|
11469
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#157
|
|
11402
11470
|
def value=(_); end
|
|
11403
11471
|
|
|
11404
11472
|
class << self
|
|
11473
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#157
|
|
11405
11474
|
def [](*_arg0); end
|
|
11475
|
+
|
|
11476
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#157
|
|
11406
11477
|
def inspect; end
|
|
11478
|
+
|
|
11479
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#157
|
|
11407
11480
|
def keyword_init?; end
|
|
11481
|
+
|
|
11482
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#157
|
|
11408
11483
|
def members; end
|
|
11484
|
+
|
|
11485
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#157
|
|
11409
11486
|
def new(*_arg0); end
|
|
11410
11487
|
end
|
|
11411
11488
|
end
|
|
@@ -11421,9 +11498,9 @@ end
|
|
|
11421
11498
|
# tuple.compare_and_set(0, :foo, :bar) #=> true | strong CAS
|
|
11422
11499
|
# tuple.cas(0, :foo, :baz) #=> false | strong CAS
|
|
11423
11500
|
# tuple.get(0) #=> :bar | volatile read
|
|
11424
|
-
# @see https://en.wikipedia.org/wiki/Tuple Tuple entry at Wikipedia
|
|
11425
|
-
# @see http://www.erlang.org/doc/reference_manual/data_types.html#id70396 Erlang Tuple
|
|
11426
11501
|
# @see http://ruby-doc.org/core-2.2.2/Enumerable.html Enumerable
|
|
11502
|
+
# @see http://www.erlang.org/doc/reference_manual/data_types.html#id70396 Erlang Tuple
|
|
11503
|
+
# @see https://en.wikipedia.org/wiki/Tuple Tuple entry at Wikipedia
|
|
11427
11504
|
#
|
|
11428
11505
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#20
|
|
11429
11506
|
class Concurrent::Tuple
|
|
@@ -11441,19 +11518,19 @@ class Concurrent::Tuple
|
|
|
11441
11518
|
# value matches the given old value.
|
|
11442
11519
|
#
|
|
11443
11520
|
# @param i [Integer] the index for the element to set
|
|
11444
|
-
# @param old_value [Object] the value to compare against the current value
|
|
11445
11521
|
# @param new_value [Object] the value to set at the given index
|
|
11522
|
+
# @param old_value [Object] the value to compare against the current value
|
|
11446
11523
|
# @return [Boolean] true if the value at the given element was set else false
|
|
11447
11524
|
#
|
|
11448
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#
|
|
11525
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#73
|
|
11449
11526
|
def cas(i, old_value, new_value); end
|
|
11450
11527
|
|
|
11451
11528
|
# Set the value at the given index to the new value if and only if the current
|
|
11452
11529
|
# value matches the given old value.
|
|
11453
11530
|
#
|
|
11454
11531
|
# @param i [Integer] the index for the element to set
|
|
11455
|
-
# @param old_value [Object] the value to compare against the current value
|
|
11456
11532
|
# @param new_value [Object] the value to set at the given index
|
|
11533
|
+
# @param old_value [Object] the value to compare against the current value
|
|
11457
11534
|
# @return [Boolean] true if the value at the given element was set else false
|
|
11458
11535
|
#
|
|
11459
11536
|
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#69
|
|
@@ -11493,7 +11570,7 @@ class Concurrent::Tuple
|
|
|
11493
11570
|
# @param i [Integer] the index from which to retrieve the value
|
|
11494
11571
|
# @return [Object] the value at the given index or nil if the index is out of bounds
|
|
11495
11572
|
#
|
|
11496
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#
|
|
11573
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#47
|
|
11497
11574
|
def volatile_get(i); end
|
|
11498
11575
|
|
|
11499
11576
|
# Set the element at the given index to the given value
|
|
@@ -11502,7 +11579,7 @@ class Concurrent::Tuple
|
|
|
11502
11579
|
# @param value [Object] the value to set at the given index
|
|
11503
11580
|
# @return [Object] the new value of the element at the given index or nil if the index is out of bounds
|
|
11504
11581
|
#
|
|
11505
|
-
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#
|
|
11582
|
+
# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#59
|
|
11506
11583
|
def volatile_set(i, value); end
|
|
11507
11584
|
end
|
|
11508
11585
|
|