sorbet/rbi/gems/concurrent-ruby@1.1.10.rbi in packwerk-3.2.0 vs sorbet/rbi/gems/concurrent-ruby@1.1.10.rbi in packwerk-3.2.1

- old
+ new

@@ -4,11 +4,11 @@ # This is an autogenerated file for types exported from the `concurrent-ruby` gem. # Please instead update this file by running `bin/tapioca gem concurrent-ruby`. # {include:file:README.md} # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/constants.rb:1 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/constants.rb#1 module Concurrent extend ::Concurrent::Utility::EngineDetector extend ::Concurrent::Utility::NativeExtensionLoader extend ::Logger::Severity extend ::Concurrent::Concern::Logging @@ -18,11 +18,11 @@ # Abort a currently running transaction - see `Concurrent::atomically`. # # @raise [Transaction::AbortError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:139 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#139 def abort_transaction; end # Run a block that reads and writes `TVar`s as a single atomic transaction. # With respect to the value of `TVar` objects, the transaction is atomic, in # that it either happens or it does not, consistent, in that the `TVar` @@ -53,16 +53,16 @@ # a.value -= 10 # b.value += 10 # end # @raise [ArgumentError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:82 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#82 def atomically; end # @raise [ArgumentError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/dataflow.rb:56 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#56 def call_dataflow(method, executor, *inputs, &block); end # Dataflow allows you to create a task that will be scheduled when all of its data dependencies are available. # {include:file:docs-source/dataflow.md} # @@ -72,38 +72,38 @@ # @return [Object] the result of all the operations # @yield The operation to perform once all the dependencies are met # @yieldparam inputs [Future] each of the `Future` inputs to the dataflow # @yieldreturn [Object] the result of the block operation # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/dataflow.rb:34 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#34 def dataflow(*inputs, &block); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/dataflow.rb:44 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#44 def dataflow!(*inputs, &block); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/dataflow.rb:39 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#39 def dataflow_with(executor, *inputs, &block); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/dataflow.rb:49 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#49 def dataflow_with!(executor, *inputs, &block); end # Leave a transaction without committing or aborting - see `Concurrent::atomically`. # # @raise [Transaction::LeaveError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:144 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#144 def leave_transaction; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/monotonic_time.rb:19 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/monotonic_time.rb#19 def monotonic_time(unit = T.unsafe(nil)); end class << self # Abort a currently running transaction - see `Concurrent::atomically`. # # @raise [Transaction::AbortError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:139 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#139 def abort_transaction; end # Run a block that reads and writes `TVar`s as a single atomic transaction. # With respect to the value of `TVar` objects, the transaction is atomic, in # that it either happens or it does not, consistent, in that the `TVar` @@ -134,27 +134,27 @@ # a.value -= 10 # b.value += 10 # end # @raise [ArgumentError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:82 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#82 def atomically; end # @raise [ArgumentError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/dataflow.rb:56 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#56 def call_dataflow(method, executor, *inputs, &block); end # @return [Logger] Logger with provided level and output. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:20 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#20 def create_simple_logger(level = T.unsafe(nil), output = T.unsafe(nil)); end # @deprecated # @return [Logger] Logger with provided level and output. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:52 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#52 def create_stdlib_logger(level = T.unsafe(nil), output = T.unsafe(nil)); end # Dataflow allows you to create a task that will be scheduled when all of its data dependencies are available. # {include:file:docs-source/dataflow.md} # @@ -164,20 +164,20 @@ # @return [Object] the result of all the operations # @yield The operation to perform once all the dependencies are met # @yieldparam inputs [Future] each of the `Future` inputs to the dataflow # @yieldreturn [Object] the result of the block operation # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/dataflow.rb:34 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#34 def dataflow(*inputs, &block); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/dataflow.rb:44 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#44 def dataflow!(*inputs, &block); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/dataflow.rb:39 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#39 def dataflow_with(executor, *inputs, &block); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/dataflow.rb:49 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#49 def dataflow_with!(executor, *inputs, &block); end # Disables AtExit handlers including pool auto-termination handlers. # When disabled it will be the application programmer's responsibility # to ensure that the handlers are shutdown properly prior to application @@ -191,98 +191,98 @@ # needs to be disabled and called manually after test-suite ends. # @note This method should *never* be called # from within a gem. It should *only* be used from within the main # application and even then it should be used only when necessary. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:131 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#131 def disable_at_exit_handlers!; end # General access point to global executors. # # @param executor_identifier [Symbol, Executor] symbols: # - :fast - {Concurrent.global_fast_executor} # - :io - {Concurrent.global_io_executor} # - :immediate - {Concurrent.global_immediate_executor} # @return [Executor] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:166 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#166 def executor(executor_identifier); end # Global thread pool optimized for short, fast *operations*. # # @return [ThreadPoolExecutor] the thread pool # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:138 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#138 def global_fast_executor; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:149 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#149 def global_immediate_executor; end # Global thread pool optimized for long, blocking (IO) *tasks*. # # @return [ThreadPoolExecutor] the thread pool # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:145 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#145 def global_io_executor; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:92 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#92 def global_logger; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:96 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#96 def global_logger=(value); end # Global thread pool user for global *timers*. # # @return [Concurrent::TimerSet] the thread pool # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:156 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#156 def global_timer_set; end # Leave a transaction without committing or aborting - see `Concurrent::atomically`. # # @raise [Transaction::LeaveError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:144 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#144 def leave_transaction; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/monotonic_time.rb:19 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/monotonic_time.rb#19 def monotonic_time(unit = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:170 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#170 def new_fast_executor(opts = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:181 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#181 def new_io_executor(opts = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/processor_counter.rb:127 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/processor_counter.rb#127 def physical_processor_count; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/processor_counter.rb:123 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/processor_counter.rb#123 def processor_count; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/processor_counter.rb:121 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/processor_counter.rb#121 def processor_counter; end # Use logger created by #create_simple_logger to log concurrent-ruby messages. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:46 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#46 def use_simple_logger(level = T.unsafe(nil), output = T.unsafe(nil)); end # Use logger created by #create_stdlib_logger to log concurrent-ruby messages. # # @deprecated # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:79 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#79 def use_stdlib_logger(level = T.unsafe(nil), output = T.unsafe(nil)); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/exchanger.rb:38 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#38 class Concurrent::AbstractExchanger < ::Concurrent::Synchronization::Object # @return [AbstractExchanger] a new instance of AbstractExchanger # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/exchanger.rb:44 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#44 def initialize; end # Waits for another thread to arrive at this exchange point (unless the # current thread is interrupted), and then transfers the given object to # it, receiving its object in return. The timeout value indicates the @@ -299,11 +299,11 @@ # # @param value [Object] the value to exchange with another thread # @param timeout [Numeric, nil] in seconds, `nil` blocks indefinitely # @return [Object] the value exchanged by the other thread or `nil` on timeout # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/exchanger.rb:69 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#69 def exchange(value, timeout = T.unsafe(nil)); end # Waits for another thread to arrive at this exchange point (unless the # current thread is interrupted), and then transfers the given object to # it, receiving its object in return. The timeout value indicates the @@ -317,11 +317,11 @@ # @param value [Object] the value to exchange with another thread # @param timeout [Numeric, nil] in seconds, `nil` blocks indefinitely # @raise [Concurrent::TimeoutError] on timeout # @return [Object] the value exchanged by the other thread # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/exchanger.rb:80 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#80 def exchange!(value, timeout = T.unsafe(nil)); end # Waits for another thread to arrive at this exchange point (unless the # current thread is interrupted), and then transfers the given object to # it, receiving its object in return. The timeout value indicates the @@ -348,11 +348,11 @@ # @param timeout [Numeric, nil] in seconds, `nil` blocks indefinitely # @return [Concurrent::Maybe] on success a `Just` maybe will be returned with # the item exchanged by the other thread as `#value`; on timeout a # `Nothing` maybe will be returned with {Concurrent::TimeoutError} as `#reason` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/exchanger.rb:109 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#109 def try_exchange(value, timeout = T.unsafe(nil)); end private # Waits for another thread to arrive at this exchange point (unless the @@ -365,258 +365,149 @@ # @param value [Object] the value to exchange with another thread # @param timeout [Numeric, nil] in seconds, `nil` blocks indefinitely # @raise [NotImplementedError] # @return [Object, CANCEL] the value exchanged by the other thread; {CANCEL} on timeout # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/exchanger.rb:122 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#122 def do_exchange(value, timeout); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/exchanger.rb:41 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#41 Concurrent::AbstractExchanger::CANCEL = T.let(T.unsafe(nil), Object) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:10 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#10 class Concurrent::AbstractExecutorService < ::Concurrent::Synchronization::LockableObject include ::Logger::Severity include ::Concurrent::Concern::Logging include ::Concurrent::ExecutorService include ::Concurrent::Concern::Deprecation # Create a new thread pool. # # @return [AbstractExecutorService] a new instance of AbstractExecutorService # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:23 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#23 def initialize(opts = T.unsafe(nil), &block); end - # Set the auto-terminate behavior for this executor. - # - # @deprecated Has no effect - # @param value [Boolean] The new auto-terminate value to set for this executor. - # @return [Boolean] `true` when auto-termination is enabled else `false`. - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:72 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#72 def auto_terminate=(value); end - # Is the executor auto-terminate when the application exits? + # @return [Boolean] # - # @return [Boolean] `true` when auto-termination is enabled else `false`. - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:67 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#67 def auto_terminate?; end - # @return [Symbol] The fallback policy in effect. Either `:abort`, `:discard`, or `:caller_runs`. + # Returns the value of attribute fallback_policy. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:18 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#18 def fallback_policy; end - # Begin an immediate shutdown. In-progress tasks will be allowed to - # complete but enqueued tasks will be dismissed and no new tasks - # will be accepted. Has no additional effect if the thread pool is - # not running. - # # @raise [NotImplementedError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:42 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#42 def kill; end # Returns the value of attribute name. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:20 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#20 def name; end - # Is the executor running? + # @return [Boolean] # - # @return [Boolean] `true` when running, `false` when shutting down or shutdown - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:52 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#52 def running?; end - # Begin an orderly shutdown. Tasks already in the queue will be executed, - # but no new tasks will be accepted. Has no additional effect if the - # thread pool is not running. - # # @raise [NotImplementedError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:37 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#37 def shutdown; end - # Is the executor shutdown? + # @return [Boolean] # - # @return [Boolean] `true` when shutdown, `false` when shutting down or running - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:62 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#62 def shutdown?; end - # Is the executor shuttingdown? + # @return [Boolean] # - # @return [Boolean] `true` when not running and not shutdown, else `false` - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:57 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#57 def shuttingdown?; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:32 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#32 def to_s; end - # Block until executor shutdown is complete or until `timeout` seconds have - # passed. - # - # @note Does not initiate shutdown or termination. Either `shutdown` or `kill` - # must be called before this method (or on another thread). - # @param timeout [Integer] the maximum number of seconds to wait for shutdown to complete # @raise [NotImplementedError] - # @return [Boolean] `true` if shutdown complete or false on `timeout` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:47 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#47 def wait_for_termination(timeout = T.unsafe(nil)); end private # Returns an action which executes the `fallback_policy` once the queue # size reaches `max_queue`. The reason for the indirection of an action # is so that the work can be deferred outside of synchronization. # # @param args [Array] the arguments to the task which is being handled. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:85 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#85 def fallback_action(*args); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:126 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#126 def ns_auto_terminate?; end # @raise [NotImplementedError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:106 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#106 def ns_execute(*args, &task); end # Callback method called when the executor has been killed. # The default behavior is to do nothing. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:122 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#122 def ns_kill_execution; end # Callback method called when an orderly shutdown has completed. # The default behavior is to signal all waiting threads. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:114 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#114 def ns_shutdown_execution; end end # The set of possible fallback policies that may be set at thread pool creation. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb:15 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb#15 Concurrent::AbstractExecutorService::FALLBACK_POLICIES = T.let(T.unsafe(nil), Array) -# A `ThreadLocalVar` is a variable where the value is different for each thread. -# Each variable may have a default value, but when you modify the variable only -# the current thread will ever see that change. -# -# -# ## Thread-safe Variable Classes -# -# Each of the thread-safe variable classes is designed to solve a different -# problem. In general: -# -# * *{Concurrent::Agent}:* Shared, mutable variable providing independent, -# uncoordinated, *asynchronous* change of individual values. Best used when -# the value will undergo frequent, complex updates. Suitable when the result -# of an update does not need to be known immediately. -# * *{Concurrent::Atom}:* Shared, mutable variable providing independent, -# uncoordinated, *synchronous* change of individual values. Best used when -# the value will undergo frequent reads but only occasional, though complex, -# updates. Suitable when the result of an update must be known immediately. -# * *{Concurrent::AtomicReference}:* A simple object reference that can be updated -# atomically. Updates are synchronous but fast. Best used when updates a -# simple set operations. Not suitable when updates are complex. -# {Concurrent::AtomicBoolean} and {Concurrent::AtomicFixnum} are similar -# but optimized for the given data type. -# * *{Concurrent::Exchanger}:* Shared, stateless synchronization point. Used -# when two or more threads need to exchange data. The threads will pair then -# block on each other until the exchange is complete. -# * *{Concurrent::MVar}:* Shared synchronization point. Used when one thread -# must give a value to another, which must take the value. The threads will -# block on each other until the exchange is complete. -# * *{Concurrent::ThreadLocalVar}:* Shared, mutable, isolated variable which -# holds a different value for each thread which has access. Often used as -# an instance variable in objects which must maintain different state -# for different threads. -# * *{Concurrent::TVar}:* Shared, mutable variables which provide -# *coordinated*, *synchronous*, change of *many* stated. Used when multiple -# value must change together, in an all-or-nothing transaction. -# -# @example -# v = ThreadLocalVar.new(14) -# v.value #=> 14 -# v.value = 2 -# v.value #=> 2 -# @example -# v = ThreadLocalVar.new(14) -# -# t1 = Thread.new do -# v.value #=> 14 -# v.value = 1 -# v.value #=> 1 -# end -# -# t2 = Thread.new do -# v.value #=> 14 -# v.value = 2 -# v.value #=> 2 -# end -# -# v.value #=> 14 -# @see https://docs.oracle.com/javase/7/docs/api/java/lang/ThreadLocal.html Java ThreadLocal -# -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/abstract_thread_local_var.rb:8 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/abstract_thread_local_var.rb#8 class Concurrent::AbstractThreadLocalVar - # Creates a thread local variable. - # - # @param default [Object] the default value when otherwise unset - # @param default_block [Proc] Optional block that gets called to obtain the - # default value for each thread # @return [AbstractThreadLocalVar] a new instance of AbstractThreadLocalVar # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/abstract_thread_local_var.rb:11 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/abstract_thread_local_var.rb#11 def initialize(default = T.unsafe(nil), &default_block); end - # Bind the given value to thread local storage during - # execution of the given block. - # - # @param value [Object] the value to bind - # @return [Object] the value - # @yield the operation to be performed with the bound variable - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/abstract_thread_local_var.rb:38 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/abstract_thread_local_var.rb#38 def bind(value, &block); end - # Returns the value in the current thread's copy of this thread-local variable. - # # @raise [NotImplementedError] - # @return [Object] the current value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/abstract_thread_local_var.rb:28 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/abstract_thread_local_var.rb#28 def value; end - # Sets the current thread's copy of this thread-local variable to the specified value. - # - # @param value [Object] the value to set # @raise [NotImplementedError] - # @return [Object] the new value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/abstract_thread_local_var.rb:33 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/abstract_thread_local_var.rb#33 def value=(value); end protected # @raise [NotImplementedError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/abstract_thread_local_var.rb:53 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/abstract_thread_local_var.rb#53 def allocate_storage; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/abstract_thread_local_var.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/abstract_thread_local_var.rb#58 def default; end end # `Agent` is inspired by Clojure's [agent](http://clojure.org/agents) # function. An agent is a shared, mutable variable providing independent, @@ -745,46 +636,14 @@ # ({#await}, {#await_for}, {#await_for!}, and {#wait}) from within an action # block/proc/lambda. The call will block the Agent and will always fail. # Calling either {#await} or {#wait} (with a timeout of `nil`) will # hopelessly deadlock the Agent with no possibility of recovery. # -# ## Thread-safe Variable Classes -# -# Each of the thread-safe variable classes is designed to solve a different -# problem. In general: -# -# * *{Concurrent::Agent}:* Shared, mutable variable providing independent, -# uncoordinated, *asynchronous* change of individual values. Best used when -# the value will undergo frequent, complex updates. Suitable when the result -# of an update does not need to be known immediately. -# * *{Concurrent::Atom}:* Shared, mutable variable providing independent, -# uncoordinated, *synchronous* change of individual values. Best used when -# the value will undergo frequent reads but only occasional, though complex, -# updates. Suitable when the result of an update must be known immediately. -# * *{Concurrent::AtomicReference}:* A simple object reference that can be updated -# atomically. Updates are synchronous but fast. Best used when updates a -# simple set operations. Not suitable when updates are complex. -# {Concurrent::AtomicBoolean} and {Concurrent::AtomicFixnum} are similar -# but optimized for the given data type. -# * *{Concurrent::Exchanger}:* Shared, stateless synchronization point. Used -# when two or more threads need to exchange data. The threads will pair then -# block on each other until the exchange is complete. -# * *{Concurrent::MVar}:* Shared synchronization point. Used when one thread -# must give a value to another, which must take the value. The threads will -# block on each other until the exchange is complete. -# * *{Concurrent::ThreadLocalVar}:* Shared, mutable, isolated variable which -# holds a different value for each thread which has access. Often used as -# an instance variable in objects which must maintain different state -# for different threads. -# * *{Concurrent::TVar}:* Shared, mutable variables which provide -# *coordinated*, *synchronous*, change of *many* stated. Used when multiple -# value must change together, in an all-or-nothing transaction. -# # @see http://clojure.org/Agents Clojure Agents # @see http://clojure.org/state Values and Change - Clojure's approach to Identity and State # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:144 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#144 class Concurrent::Agent < ::Concurrent::Synchronization::LockableObject include ::Concurrent::Concern::Observable # Create a new `Agent` with the given initial value and options. # @@ -819,22 +678,22 @@ # @option opts # @param initial [Object] the initial value # @param opts [Hash] the configuration options # @return [Agent] a new instance of Agent # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:219 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#219 def initialize(initial, opts = T.unsafe(nil)); end # Dispatches an action to the Agent and returns immediately. Subsequently, # in a thread from a thread pool, the {#value} will be set to the return # value of the action. Appropriate for actions that may block on IO. # # @param action [Proc] the action dispatch to be enqueued # @return [Concurrent::Agent] self # @see #send_off # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:330 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#330 def <<(action); end # Blocks the current thread (indefinitely!) until all actions dispatched # thus far, from this thread or nested by the Agent, have occurred. Will # block when {#failed?}. Will never return if a failed Agent is {#restart} @@ -853,11 +712,11 @@ # Calling either {#await} or {#wait} (with a timeout of `nil`) will # hopelessly deadlock the Agent with no possibility of recovery. # # @return [Boolean] self # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:349 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#349 def await; end # Blocks the current thread until all actions dispatched thus far, from this # thread or nested by the Agent, have occurred, or the timeout (in seconds) # has elapsed. @@ -870,11 +729,11 @@ # hopelessly deadlock the Agent with no possibility of recovery. # # @param timeout [Float] the maximum number of seconds to wait # @return [Boolean] true if all actions complete before timeout else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:362 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#362 def await_for(timeout); end # Blocks the current thread until all actions dispatched thus far, from this # thread or nested by the Agent, have occurred, or the timeout (in seconds) # has elapsed. @@ -888,41 +747,41 @@ # # @param timeout [Float] the maximum number of seconds to wait # @raise [Concurrent::TimeoutError] when timout is reached # @return [Boolean] true if all actions complete before timeout # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:376 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#376 def await_for!(timeout); end # The current value (state) of the Agent, irrespective of any pending or # in-progress actions. The value is always available and is non-blocking. # # @return [Object] the current value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:228 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#228 def deref; end # When {#failed?} and {#error_mode} is `:fail`, returns the error object # which caused the failure, else `nil`. When {#error_mode} is `:continue` # will *always* return `nil`. # # @return [nil, Error] the error which caused the failure when {#failed?} # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:239 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#239 def error; end # The error mode this Agent is operating in. See {#initialize} for details. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:183 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#183 def error_mode; end # Is the Agent in a failed state? # # @return [Boolean] # @see #restart # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:401 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#401 def failed?; end # Dispatches an action to the Agent and returns immediately. Subsequently, # in a thread from a thread pool, the {#value} will be set to the return # value of the action. Action dispatches are only allowed when the Agent @@ -949,20 +808,20 @@ # @yieldparam value [Object] the current {#value} of the Agent # @yieldparam args [Array<Object>] zero or more arguments to pass to the # action # @yieldreturn [Object] the new value of the Agent # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:293 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#293 def post(*args, &action); end # When {#failed?} and {#error_mode} is `:fail`, returns the error object # which caused the failure, else `nil`. When {#error_mode} is `:continue` # will *always* return `nil`. # # @return [nil, Error] the error which caused the failure when {#failed?} # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:239 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#239 def reason; end # When an Agent is {#failed?}, changes the Agent {#value} to `new_value` # then un-fails the Agent so that action dispatches are allowed again. If # the `:clear_actions` option is give and true, any actions queued on the @@ -976,11 +835,11 @@ # @param new_value [Object] the new value for the Agent once restarted # @param opts [Hash] the configuration options # @raise [Concurrent:AgentError] when not failed # @return [Boolean] true # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:423 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#423 def restart(new_value, opts = T.unsafe(nil)); end # Dispatches an action to the Agent and returns immediately. Subsequently, # in a thread from a thread pool, the {#value} will be set to the return # value of the action. Action dispatches are only allowed when the Agent @@ -1007,11 +866,11 @@ # @yieldparam value [Object] the current {#value} of the Agent # @yieldparam args [Array<Object>] zero or more arguments to pass to the # action # @yieldreturn [Object] the new value of the Agent # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:277 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#277 def send(*args, &action); end # Dispatches an action to the Agent and returns immediately. Subsequently, # in a thread from a thread pool, the {#value} will be set to the return # value of the action. Action dispatches are only allowed when the Agent @@ -1038,11 +897,11 @@ # @yieldparam value [Object] the current {#value} of the Agent # @yieldparam args [Array<Object>] zero or more arguments to pass to the # action # @yieldreturn [Object] the new value of the Agent # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:286 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#286 def send!(*args, &action); end # Dispatches an action to the Agent and returns immediately. Subsequently, # in a thread from a thread pool, the {#value} will be set to the return # value of the action. Action dispatches are only allowed when the Agent @@ -1069,11 +928,11 @@ # @yieldparam value [Object] the current {#value} of the Agent # @yieldparam args [Array<Object>] zero or more arguments to pass to the # action # @yieldreturn [Object] the new value of the Agent # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:293 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#293 def send_off(*args, &action); end # Dispatches an action to the Agent and returns immediately. Subsequently, # in a thread from a thread pool, the {#value} will be set to the return # value of the action. Action dispatches are only allowed when the Agent @@ -1100,11 +959,11 @@ # @yieldparam value [Object] the current {#value} of the Agent # @yieldparam args [Array<Object>] zero or more arguments to pass to the # action # @yieldreturn [Object] the new value of the Agent # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:301 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#301 def send_off!(*args, &action); end # Dispatches an action to the Agent and returns immediately. Subsequently, # in a thread from a thread pool, the {#value} will be set to the return # value of the action. Action dispatches are only allowed when the Agent @@ -1133,11 +992,11 @@ # @yieldparam value [Object] the current {#value} of the Agent # @yieldparam args [Array<Object>] zero or more arguments to pass to the # action # @yieldreturn [Object] the new value of the Agent # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:310 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#310 def send_via(executor, *args, &action); end # Dispatches an action to the Agent and returns immediately. Subsequently, # in a thread from a thread pool, the {#value} will be set to the return # value of the action. Action dispatches are only allowed when the Agent @@ -1166,27 +1025,27 @@ # @yieldparam value [Object] the current {#value} of the Agent # @yieldparam args [Array<Object>] zero or more arguments to pass to the # action # @yieldreturn [Object] the new value of the Agent # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:318 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#318 def send_via!(executor, *args, &action); end # Is the Agent in a failed state? # # @return [Boolean] # @see #restart # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:401 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#401 def stopped?; end # The current value (state) of the Agent, irrespective of any pending or # in-progress actions. The value is always available and is non-blocking. # # @return [Object] the current value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:228 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#228 def value; end # Blocks the current thread until all actions dispatched thus far, from this # thread or nested by the Agent, have occurred, or the timeout (in seconds) # has elapsed. Will block indefinitely when timeout is nil or not given. @@ -1202,42 +1061,42 @@ # hopelessly deadlock the Agent with no possibility of recovery. # # @param timeout [Float] the maximum number of seconds to wait # @return [Boolean] true if all actions complete before timeout else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:392 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#392 def wait(timeout = T.unsafe(nil)); end private # @raise [ArgumentError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:509 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#509 def enqueue_action_job(action, args, executor); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:515 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#515 def enqueue_await_job(latch); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:542 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#542 def execute_next_job; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:575 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#575 def handle_error(error); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:528 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#528 def ns_enqueue_job(job, index = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:583 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#583 def ns_find_last_job_for_thread; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:489 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#489 def ns_initialize(initial, opts); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:538 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#538 def ns_post_next_job; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:569 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#569 def ns_validate(value); end class << self # Blocks the current thread (indefinitely!) until all actions dispatched # thus far to all the given Agents, from this thread or nested by the @@ -1253,11 +1112,11 @@ # hopelessly deadlock the Agent with no possibility of recovery. # # @param agents [Array<Concurrent::Agent>] the Agents on which to wait # @return [Boolean] true # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:448 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#448 def await(*agents); end # Blocks the current thread until all actions dispatched thus far to all # the given Agents, from this thread or nested by the given Agents, have # occurred, or the timeout (in seconds) has elapsed. @@ -1271,11 +1130,11 @@ # # @param timeout [Float] the maximum number of seconds to wait # @param agents [Array<Concurrent::Agent>] the Agents on which to wait # @return [Boolean] true if all actions complete before timeout else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:462 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#462 def await_for(timeout, *agents); end # Blocks the current thread until all actions dispatched thus far to all # the given Agents, from this thread or nested by the given Agents, have # occurred, or the timeout (in seconds) has elapsed. @@ -1290,53 +1149,51 @@ # @param timeout [Float] the maximum number of seconds to wait # @param agents [Array<Concurrent::Agent>] the Agents on which to wait # @raise [Concurrent::TimeoutError] when timout is reached # @return [Boolean] true if all actions complete before timeout # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:481 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#481 def await_for!(timeout, *agents); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:153 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#153 Concurrent::Agent::AWAIT_ACTION = T.let(T.unsafe(nil), Proc) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:150 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#150 Concurrent::Agent::AWAIT_FLAG = T.let(T.unsafe(nil), Object) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:156 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#156 Concurrent::Agent::DEFAULT_ERROR_HANDLER = T.let(T.unsafe(nil), Proc) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:159 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#159 Concurrent::Agent::DEFAULT_VALIDATOR = T.let(T.unsafe(nil), Proc) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:147 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#147 Concurrent::Agent::ERROR_MODES = T.let(T.unsafe(nil), Array) # Raised during action processing or any other time in an Agent's lifecycle. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:166 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#166 class Concurrent::Agent::Error < ::StandardError # @return [Error] a new instance of Error # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:167 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#167 def initialize(message = T.unsafe(nil)); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:162 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#162 class Concurrent::Agent::Job < ::Struct # Returns the value of attribute action # # @return [Object] the current value of action def action; end # Sets the attribute action # # @param value [Object] the value to set the attribute action to. # @return [Object] the newly set value - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:162 def action=(_); end # Returns the value of attribute args # # @return [Object] the current value of args @@ -1344,12 +1201,10 @@ # Sets the attribute args # # @param value [Object] the value to set the attribute args to. # @return [Object] the newly set value - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:162 def args=(_); end # Returns the value of attribute caller # # @return [Object] the current value of caller @@ -1357,12 +1212,10 @@ # Sets the attribute caller # # @param value [Object] the value to set the attribute caller to. # @return [Object] the newly set value - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:162 def caller=(_); end # Returns the value of attribute executor # # @return [Object] the current value of executor @@ -1370,30 +1223,29 @@ # Sets the attribute executor # # @param value [Object] the value to set the attribute executor to. # @return [Object] the newly set value - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:162 def executor=(_); end class << self def [](*_arg0); end def inspect; end + def keyword_init?; end def members; end def new(*_arg0); end end end # Raised when a new value obtained during action processing or at `#restart` # fails validation. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:175 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#175 class Concurrent::Agent::ValidationError < ::Concurrent::Agent::Error # @return [ValidationError] a new instance of ValidationError # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/agent.rb:176 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/agent.rb#176 def initialize(message = T.unsafe(nil)); end end # A thread-safe subclass of Array. This version locks against the object # itself for every method call, ensuring only one thread can be reading @@ -1405,14 +1257,14 @@ # The read and write are independent operations they do not form a single atomic # operation therefore when two `+=` operations are executed concurrently updates # may be lost. Use `#concat` instead. # @see http://ruby-doc.org/core/Array.html Ruby standard library `Array` # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/array.rb:63 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/array.rb#63 class Concurrent::Array < ::Array; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/array.rb:22 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/array.rb#22 Concurrent::ArrayImplementation = Array # A mixin module that provides simple asynchronous behavior to a class, # turning it into a simple actor. Loosely based on Erlang's # [gen_server](http://www.erlang.org/doc/man/gen_server.html), but without @@ -1621,11 +1473,11 @@ # @see Concurrent::Actor # @see https://en.wikipedia.org/wiki/Actor_model "Actor Model" at Wikipedia # @see http://www.erlang.org/doc/man/gen_server.html Erlang gen_server # @see http://c2.com/cgi/wiki?LetItCrash "Let It Crash" at http://c2.com/ # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:217 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#217 module Concurrent::Async mixes_in_class_methods ::Concurrent::Async::ClassMethods # Causes the chained method call to be performed asynchronously on the # object's thread. The delegated method will return a future in the @@ -1642,11 +1494,11 @@ # @raise [NameError] the object does not respond to the requested method # @raise [ArgumentError] the given `args` do not match the arity of # the requested method # @return [Concurrent::IVar] the pending result of the asynchronous operation # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:412 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#412 def async; end # Causes the chained method call to be performed synchronously on the # current thread. The delegated will return a future in either the # `:fulfilled` or `:rejected` state and the delegated method will have @@ -1662,11 +1514,11 @@ # @raise [NameError] the object does not respond to the requested method # @raise [ArgumentError] the given `args` do not match the arity of the # requested method # @return [Concurrent::IVar] the completed result of the synchronous operation # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:430 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#430 def await; end # Causes the chained method call to be performed synchronously on the # current thread. The delegated will return a future in either the # `:fulfilled` or `:rejected` state and the delegated method will have @@ -1682,11 +1534,11 @@ # @raise [NameError] the object does not respond to the requested method # @raise [ArgumentError] the given `args` do not match the arity of the # requested method # @return [Concurrent::IVar] the completed result of the synchronous operation # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:430 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#430 def call; end # Causes the chained method call to be performed asynchronously on the # object's thread. The delegated method will return a future in the # `:pending` state and the method call will have been scheduled on the @@ -1702,25 +1554,25 @@ # @raise [NameError] the object does not respond to the requested method # @raise [ArgumentError] the given `args` do not match the arity of # the requested method # @return [Concurrent::IVar] the pending result of the asynchronous operation # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:412 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#412 def cast; end # Initialize the internal serializer and other stnchronization mechanisms. # # @note This method *must* be called immediately upon object construction. # This is the only way thread-safe initialization can be guaranteed. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:441 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#441 def init_synchronization; end class << self # @private # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:262 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#262 def included(base); end # Check for the presence of a method on an object and determine if a given # set of arguments matches the required arity. # @@ -1736,98 +1588,98 @@ # @raise [ArgumentError] the given `args` do not match the arity of `method` # @see http://www.ruby-doc.org/core-2.1.1/Method.html#method-i-arity Method#arity # @see http://ruby-doc.org/core-2.1.0/Object.html#method-i-respond_to-3F Object#respond_to? # @see http://www.ruby-doc.org/core-2.1.0/BasicObject.html#method-i-method_missing BasicObject#method_missing # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:250 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#250 def validate_argc(obj, method, *args); end end end # Delegates asynchronous, thread-safe method calls to the wrapped object. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:282 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#282 class Concurrent::Async::AsyncDelegator < ::Concurrent::Synchronization::LockableObject # Create a new delegator object wrapping the given delegate. # # @param delegate [Object] the object to wrap and delegate method calls to # @return [AsyncDelegator] a new instance of AsyncDelegator # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:288 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#288 def initialize(delegate); end # Delegates method calls to the wrapped object. # # @param method [Symbol] the method being called # @param args [Array] zero or more arguments to the method # @raise [NameError] the object does not respond to `method` method # @raise [ArgumentError] the given `args` do not match the arity of `method` # @return [IVar] the result of the method call # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:305 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#305 def method_missing(method, *args, &block); end # Perform all enqueued tasks. # # This method must be called from within the executor. It must not be # called while already running. It will loop until the queue is empty. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:330 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#330 def perform; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:348 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#348 def reset_if_forked; end private # Check whether the method is responsive # # @param method [Symbol] the method being called # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:322 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#322 def respond_to_missing?(method, include_private = T.unsafe(nil)); end end # Delegates synchronous, thread-safe method calls to the wrapped object. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:360 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#360 class Concurrent::Async::AwaitDelegator # Create a new delegator object wrapping the given delegate. # # @param delegate [AsyncDelegator] the object to wrap and delegate method calls to # @return [AwaitDelegator] a new instance of AwaitDelegator # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:365 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#365 def initialize(delegate); end # Delegates method calls to the wrapped object. # # @param method [Symbol] the method being called # @param args [Array] zero or more arguments to the method # @raise [NameError] the object does not respond to `method` method # @raise [ArgumentError] the given `args` do not match the arity of `method` # @return [IVar] the result of the method call # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:378 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#378 def method_missing(method, *args, &block); end private # Check whether the method is responsive # # @param method [Symbol] the method being called # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:387 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#387 def respond_to_missing?(method, include_private = T.unsafe(nil)); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:269 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#269 module Concurrent::Async::ClassMethods - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/async.rb:270 - def new(*args, &block); end + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/async.rb#270 + def new(*args, **_arg1, &block); end end # Atoms provide a way to manage shared, synchronous, independent state. # # An atom is initialized with an initial value and an optional validation @@ -1910,11 +1762,11 @@ # value must change together, in an all-or-nothing transaction. # # @see http://clojure.org/atoms Clojure Atoms # @see http://clojure.org/state Values and Change - Clojure's approach to Identity and State # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atom.rb:95 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atom.rb#95 class Concurrent::Atom < ::Concurrent::Synchronization::Object include ::Concurrent::Concern::Observable # Create a new atom with the given initial value. # @@ -1922,14 +1774,14 @@ # @param value [Object] The initial value # @param opts [Hash] The options used to configure the atom # @raise [ArgumentError] if the validator is not a `Proc` (when given) # @return [Atom] a new instance of Atom # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atom.rb:121 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atom.rb#121 def initialize(value, opts = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:169 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#169 def __initialize_atomic_fields__; end # Atomically sets the value of atom to the new value if and only if the # current value of the atom is identical to the old value and the new # value successfully validates against the (optional) validator given @@ -1937,25 +1789,25 @@ # # @param old_value [Object] The expected current value. # @param new_value [Object] The intended new value. # @return [Boolean] True if the value is changed else false. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atom.rb:181 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atom.rb#181 def compare_and_set(old_value, new_value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:125 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#125 def deref; end # Atomically sets the value of atom to the new value without regard for the # current value so long as the new value successfully validates against the # (optional) validator given at construction. # # @param new_value [Object] The intended new value. # @return [Object] The final value of the atom after all operations and # validations are complete. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atom.rb:198 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atom.rb#198 def reset(new_value); end # Atomically swaps the value of atom using the given block. The current # value will be passed to the block, as will any arguments passed as # arguments to the function. The new value will be validated against the @@ -1980,45 +1832,45 @@ # current value and any supplied arguments. # @yieldparam value [Object] The current value of the atom. # @yieldparam args [Object] All arguments passed to the function, in order. # @yieldreturn [Object] The intended new value of the atom. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atom.rb:157 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atom.rb#157 def swap(*args); end # The current value of the atom. # # @return [Object] The current value. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:125 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#125 def value; end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:137 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#137 def compare_and_set_value(expected, value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:133 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#133 def swap_value(value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:141 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#141 def update_value(&block); end # Is the new value valid? # # @param new_value [Object] The intended new value. # @return [Boolean] false if the validator function returns false or raises # an exception else true # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atom.rb:216 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atom.rb#216 def valid?(new_value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:129 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#129 def value=(value); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 def new(*args, &block); end end end # A boolean value that can be updated atomically. Reads and writes to an atomic @@ -2073,29 +1925,29 @@ # 3.340000 0.010000 3.350000 ( 0.855000) # ``` # # @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/atomic/AtomicBoolean.html java.util.concurrent.atomic.AtomicBoolean # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_boolean.rb:119 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_boolean.rb#118 class Concurrent::AtomicBoolean < ::Concurrent::MutexAtomicBoolean # @return [String] Short string representation. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_boolean.rb:120 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_boolean.rb#120 def inspect; end # @return [String] Short string representation. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_boolean.rb:120 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_boolean.rb#120 def to_s; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_boolean.rb:81 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_boolean.rb#81 Concurrent::AtomicBooleanImplementation = Concurrent::MutexAtomicBoolean # Define update methods that use direct paths # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb:19 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb#19 module Concurrent::AtomicDirectUpdate # Pass the current value to the given block, replacing it # with the block's result. Return nil if the update fails. # # @note This method was altered to avoid raising an exception by default. @@ -2104,11 +1956,11 @@ # @return [Object] the new value, or nil if update failed # @yield [Object] Calculate a new value for the atomic reference using # given (old) value # @yieldparam old_value [Object] the starting value of the atomic reference # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb:48 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb#48 def try_update; end # Pass the current value to the given block, replacing it # with the block's result. Raise an exception if the update # fails. @@ -2121,11 +1973,11 @@ # @return [Object] the new value # @yield [Object] Calculate a new value for the atomic reference using # given (old) value # @yieldparam old_value [Object] the starting value of the atomic reference # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb:72 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb#72 def try_update!; end # Pass the current value to the given block, replacing it # with the block's result. May retry if the value changes # during the block's execution. @@ -2133,11 +1985,11 @@ # @return [Object] the new value # @yield [Object] Calculate a new value for the atomic reference using # given (old) value # @yieldparam old_value [Object] the starting value of the atomic reference # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb#31 def update; end end # A numeric value that can be updated atomically. Reads and writes to an atomic # fixnum and thread-safe and guaranteed to succeed. Reads and writes may block @@ -2191,39 +2043,39 @@ # 4.520000 0.030000 4.550000 ( 1.187000) # ``` # # @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/atomic/AtomicLong.html java.util.concurrent.atomic.AtomicLong # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_fixnum.rb:136 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_fixnum.rb#135 class Concurrent::AtomicFixnum < ::Concurrent::MutexAtomicFixnum # @return [String] Short string representation. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_fixnum.rb:137 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_fixnum.rb#137 def inspect; end # @return [String] Short string representation. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_fixnum.rb:137 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_fixnum.rb#137 def to_s; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_fixnum.rb:98 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_fixnum.rb#98 Concurrent::AtomicFixnumImplementation = Concurrent::MutexAtomicFixnum # An atomic reference which maintains an object reference along with a mark bit # that can be updated atomically. # # @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/atomic/AtomicMarkableReference.html java.util.concurrent.atomic.AtomicMarkableReference # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb:7 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#7 class Concurrent::AtomicMarkableReference < ::Concurrent::Synchronization::Object # @return [AtomicMarkableReference] a new instance of AtomicMarkableReference # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb:12 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#12 def initialize(value = T.unsafe(nil), mark = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:169 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#169 def __initialize_atomic_fields__; end # Atomically sets the value and mark to the given updated value and # mark given both: # - the current value == the expected value && @@ -2236,11 +2088,11 @@ # @param new_val [Object] the new value # @param expected_mark [Boolean] the expected mark # @param new_mark [Boolean] the new mark # @return [Boolean] `true` if successful. A `false` return indicates # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb:30 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#30 def compare_and_set(expected_val, new_val, expected_mark, new_mark); end # Atomically sets the value and mark to the given updated value and # mark given both: # - the current value == the expected value && @@ -2253,42 +2105,42 @@ # @param new_val [Object] the new value # @param expected_mark [Boolean] the expected mark # @param new_mark [Boolean] the new mark # @return [Boolean] `true` if successful. A `false` return indicates # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb:30 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#30 def compare_and_swap(expected_val, new_val, expected_mark, new_mark); end # Gets the current reference and marked values. # # @return [Array] the current reference and marked values # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb:61 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#61 def get; end # Gets the current marked value # # @return [Boolean] the current marked value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb:75 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#75 def mark; end # Gets the current marked value # # @return [Boolean] the current marked value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb:75 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#75 def marked?; end # _Unconditionally_ sets to the given value of both the reference and # the mark. # # @param new_val [Object] the new value # @param new_mark [Boolean] the new mark # @return [Array] both the new value and the new mark # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb:88 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#88 def set(new_val, new_mark); end # Pass the current value to the given block, replacing it with the # block's result. Simply return nil if update fails. # @@ -2298,11 +2150,11 @@ # @yield [Object] Calculate a new value and marked state for the atomic # reference using given (old) value and (old) marked # @yieldparam old_val [Object] the starting value of the atomic reference # @yieldparam old_mark [Boolean] the starting state of marked # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb:149 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#149 def try_update; end # Pass the current value to the given block, replacing it # with the block's result. Raise an exception if the update # fails. @@ -2312,11 +2164,11 @@ # @yield [Object] Calculate a new value and marked state for the atomic # reference using given (old) value and (old) marked # @yieldparam old_val [Object] the starting value of the atomic reference # @yieldparam old_mark [Boolean] the starting state of marked # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb:125 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#125 def try_update!; end # Pass the current value and marked state to the given block, replacing it # with the block's results. May retry if the value changes during the # block's execution. @@ -2325,71 +2177,60 @@ # @yield [Object] Calculate a new value and marked state for the atomic # reference using given (old) value and (old) marked # @yieldparam old_val [Object] the starting value of the atomic reference # @yieldparam old_mark [Boolean] the starting state of marked # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb:102 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#102 def update; end # Gets the current value of the reference # # @return [Object] the current value of the reference # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb:68 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#68 def value; end private - # Sets the reference to new_reference if the current reference is expected_reference - # - # @return [true, false] - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:137 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#137 def compare_and_set_reference(expected, value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb:160 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb#160 def immutable_array(*args); end - # @return [Object] The reference. - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:125 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#125 def reference; end - # Set the reference. - # - # @return [Object] new_reference. - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:129 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#129 def reference=(value); end - # Set the reference to new_reference and return the old reference. - # - # @return [Object] old reference - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:133 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#133 def swap_reference(value); end - # Updates the reference using the block. - # - # @return [Object] new reference - # @yield [Object] Calculate a new reference using given (old) reference - # @yieldparam old [Object] reference - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:141 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#141 def update_reference(&block); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 def new(*args, &block); end end end # Special "compare and set" handling of numeric values. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic_reference/numeric_cas_wrapper.rb:7 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/numeric_cas_wrapper.rb#7 module Concurrent::AtomicNumericCompareAndSetWrapper - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic_reference/numeric_cas_wrapper.rb:10 + # Atomically sets the value to the given updated value if + # the current value == the expected value. + # + # that the actual value was not equal to the expected value. + # + # @param old_value [Object] the expected value + # @param new_value [Object] the new value + # @return [Boolean] `true` if successful. A `false` return indicates + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/numeric_cas_wrapper.rb#10 def compare_and_set(old_value, new_value); end end # An object reference that may be updated atomically. All read and write # operations have java volatile semantic. @@ -2428,211 +2269,217 @@ # value must change together, in an all-or-nothing transaction. # # @see http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicReference.html # @see http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/package-summary.html # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb:196 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb#196 class Concurrent::AtomicReference < ::Concurrent::MutexAtomicReference # @return [String] Short string representation. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb:199 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb#199 def inspect; end # @return [String] Short string representation. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb:199 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb#199 def to_s; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb:148 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb#148 Concurrent::AtomicReferenceImplementation = Concurrent::MutexAtomicReference -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/set.rb:30 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#30 class Concurrent::CRubySet < ::Set - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:17 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#17 def initialize(*args, &block); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def &(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def +(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def -(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def <(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def <<(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def <=(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 + def <=>(*args); end + + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def ==(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def ===(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def >(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def >=(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def ^(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def add(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def add?(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def classify(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def clear(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def collect!(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def compare_by_identity(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def compare_by_identity?(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def delete(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def delete?(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def delete_if(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def difference(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def disjoint?(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def divide(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def each(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def empty?(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def eql?(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def filter!(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def flatten(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def flatten!(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def flatten_merge(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def freeze(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def hash(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def include?(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def inspect(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def intersect?(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def intersection(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 + def join(*args); end + + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def keep_if(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def length(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def map!(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def member?(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def merge(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def pretty_print(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def pretty_print_cycle(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def proper_subset?(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def proper_superset?(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def reject!(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def replace(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def reset(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def select!(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def size(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def subset?(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def subtract(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def superset?(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def to_a(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def to_s(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def to_set(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def union(*args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#31 def |(*args); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:22 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#22 def initialize_copy(other); end end # A thread pool that dynamically grows and shrinks to fit the current workload. # New threads are created as needed, existing threads are reused, and threads @@ -2652,21 +2499,21 @@ # of time will be killed and reclaimed. Thus these thread pools are very # efficient at reclaiming unused resources. # # The API and behavior of this class are based on Java's `CachedThreadPool` # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/cached_thread_pool.rb:27 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/cached_thread_pool.rb#27 class Concurrent::CachedThreadPool < ::Concurrent::ThreadPoolExecutor # Create a new thread pool. # # @option opts # @param opts [Hash] the options defining pool behavior. # @raise [ArgumentError] if `fallback_policy` is not a known policy # @return [CachedThreadPool] a new instance of CachedThreadPool # @see http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Executors.html#newCachedThreadPool-- # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/cached_thread_pool.rb:39 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/cached_thread_pool.rb#39 def initialize(opts = T.unsafe(nil)); end private # Create a new thread pool. @@ -2674,346 +2521,310 @@ # @option opts # @param opts [Hash] the options defining pool behavior. # @raise [ArgumentError] if `fallback_policy` is not a known policy # @see http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Executors.html#newCachedThreadPool-- # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/cached_thread_pool.rb:51 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/cached_thread_pool.rb#51 def ns_initialize(opts); end end # Raised when an asynchronous operation is cancelled before execution. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:9 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#9 class Concurrent::CancelledOperationError < ::Concurrent::Error; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:8 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#8 module Concurrent::Collection; end # A thread safe observer set implemented using copy-on-read approach: # observers are added and removed from a thread safe collection; every time # a notification is required the internal data structure is copied to # prevent concurrency issues # # @api private # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb:12 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb#12 class Concurrent::Collection::CopyOnNotifyObserverSet < ::Concurrent::Synchronization::LockableObject # @api private # @return [CopyOnNotifyObserverSet] a new instance of CopyOnNotifyObserverSet # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb:14 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb#14 def initialize; end - # Adds an observer to this set. If a block is passed, the observer will be - # created by this method and no other params should be passed. - # # @api private - # @param observer [Object] the observer to add - # @param func [Symbol] the function to call on the observer during notification. - # Default is :update - # @return [Object] the added observer # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb:20 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb#20 def add_observer(observer = T.unsafe(nil), func = T.unsafe(nil), &block); end - # Return the number of observers associated with this object. - # # @api private - # @return [Integer] the observers count # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb:55 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb#55 def count_observers; end - # Remove `observer` as an observer on this object so that it will no - # longer receive notifications. - # # @api private - # @param observer [Object] the observer to remove - # @return [Object] the deleted observer # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb:39 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb#39 def delete_observer(observer); end - # Remove all observers associated with this object. - # # @api private - # @return [Observable] self # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb:47 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb#47 def delete_observers; end # Notifies all registered observers with optional args and deletes them. # # @api private # @param args [Object] arguments to be passed to each observer # @return [CopyOnWriteObserverSet] self # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb:72 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb#72 def notify_and_delete_observers(*args, &block); end # Notifies all registered observers with optional args # # @api private # @param args [Object] arguments to be passed to each observer # @return [CopyOnWriteObserverSet] self # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb:62 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb#62 def notify_observers(*args, &block); end protected # @api private # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb:80 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb#80 def ns_initialize; end private # @api private # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb:86 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb#86 def duplicate_and_clear_observers; end # @api private # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb:94 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb#94 def duplicate_observers; end # @api private # @raise [ArgumentError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb:98 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb#98 def notify_to(observers, *args); end end # A thread safe observer set implemented using copy-on-write approach: # every time an observer is added or removed the whole internal data structure is # duplicated and replaced with a new one. # # @api private # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb:11 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb#11 class Concurrent::Collection::CopyOnWriteObserverSet < ::Concurrent::Synchronization::LockableObject # @api private # @return [CopyOnWriteObserverSet] a new instance of CopyOnWriteObserverSet # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb:13 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb#13 def initialize; end - # Adds an observer to this set. If a block is passed, the observer will be - # created by this method and no other params should be passed. - # # @api private - # @param observer [Object] the observer to add - # @param func [Symbol] the function to call on the observer during notification. - # Default is :update - # @return [Object] the added observer # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb:19 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb#19 def add_observer(observer = T.unsafe(nil), func = T.unsafe(nil), &block); end - # Return the number of observers associated with this object. - # # @api private - # @return [Integer] the observers count # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb:56 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb#56 def count_observers; end - # Remove `observer` as an observer on this object so that it will no - # longer receive notifications. - # # @api private - # @param observer [Object] the observer to remove - # @return [Object] the deleted observer # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb:40 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb#40 def delete_observer(observer); end - # Remove all observers associated with this object. - # # @api private - # @return [Observable] self # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb:50 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb#50 def delete_observers; end # Notifies all registered observers with optional args and deletes them. # # @api private # @param args [Object] arguments to be passed to each observer # @return [CopyOnWriteObserverSet] self # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb:72 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb#72 def notify_and_delete_observers(*args, &block); end # Notifies all registered observers with optional args # # @api private # @param args [Object] arguments to be passed to each observer # @return [CopyOnWriteObserverSet] self # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb:63 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb#63 def notify_observers(*args, &block); end protected # @api private # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb:80 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb#80 def ns_initialize; end private # @api private # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb:102 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb#102 def clear_observers_and_return_old; end # @api private # @raise [ArgumentError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb:86 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb#86 def notify_to(observers, *args); end # @api private # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb:94 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb#94 def observers; end # @api private # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb:98 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb#98 def observers=(new_set); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:11 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#11 Concurrent::Collection::MapImplementation = Concurrent::Collection::MriMapBackend -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb:10 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#10 class Concurrent::Collection::MriMapBackend < ::Concurrent::Collection::NonConcurrentMapBackend # @return [MriMapBackend] a new instance of MriMapBackend # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb:12 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#12 def initialize(options = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb:17 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#17 def []=(key, value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb:61 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#61 def clear; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb:33 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#33 def compute(key); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb:21 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#21 def compute_if_absent(key); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb:29 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#29 def compute_if_present(key); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb:53 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#53 def delete(key); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb:57 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#57 def delete_pair(key, value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb:49 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#49 def get_and_set(key, value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb:37 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#37 def merge_pair(key, value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb:45 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#45 def replace_if_exists(key, new_value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb:41 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb#41 def replace_pair(key, old_value, new_value); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:9 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#9 class Concurrent::Collection::NonConcurrentMapBackend # WARNING: all public methods of the class must operate on the @backend # directly without calling each other. This is important because of the # SynchronizedMapBackend which uses a non-reentrant mutex for performance # reasons. # # @return [NonConcurrentMapBackend] a new instance of NonConcurrentMapBackend # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:15 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#15 def initialize(options = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:19 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#19 def [](key); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:23 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#23 def []=(key, value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:92 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#92 def clear; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:57 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#57 def compute(key); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:27 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#27 def compute_if_absent(key); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:51 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#51 def compute_if_present(key); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:79 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#79 def delete(key); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:83 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#83 def delete_pair(key, value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:97 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#97 def each_pair; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:69 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#69 def get_and_set(key, value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:108 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#108 def get_or_default(key, default_value); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:75 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#75 def key?(key); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:61 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#61 def merge_pair(key, value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:44 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#44 def replace_if_exists(key, new_value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:35 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#35 def replace_pair(key, old_value, new_value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:104 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#104 def size; end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:19 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#19 def _get(key); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:23 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#23 def _set(key, value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:122 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#122 def dupped_backend; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:116 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#116 def initialize_copy(other); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:126 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#126 def pair?(key, expected_value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb:130 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb#130 def store_computed_value(key, new_value); end end # A queue collection in which the elements are sorted based on their # comparison (spaceship) operator `<=>`. Items are added to the queue @@ -3039,32 +2850,32 @@ # @see http://ruby-doc.org/stdlib-2.0.0/libdoc/thread/rdoc/Queue.html # @see http://algs4.cs.princeton.edu/24pq/index.php#2.6 # @see http://algs4.cs.princeton.edu/24pq/MaxPQ.java.html # @see http://docs.oracle.com/javase/7/docs/api/java/util/PriorityQueue.html # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/non_concurrent_priority_queue.rb:50 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/non_concurrent_priority_queue.rb#50 class Concurrent::Collection::NonConcurrentPriorityQueue < ::Concurrent::Collection::RubyNonConcurrentPriorityQueue - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:78 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#78 def <<(item); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:65 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#65 def deq; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:78 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#78 def enq(item); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:48 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#48 def has_priority?(item); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:65 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#65 def shift; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:54 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#54 def size; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/non_concurrent_priority_queue.rb:10 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/non_concurrent_priority_queue.rb#10 Concurrent::Collection::NonConcurrentPriorityQueueImplementation = Concurrent::Collection::RubyNonConcurrentPriorityQueue # A queue collection in which the elements are sorted based on their # comparison (spaceship) operator `<=>`. Items are added to the queue # at a position relative to their priority. On removal the element @@ -3089,127 +2900,127 @@ # @see http://ruby-doc.org/stdlib-2.0.0/libdoc/thread/rdoc/Queue.html # @see http://algs4.cs.princeton.edu/24pq/index.php#2.6 # @see http://algs4.cs.princeton.edu/24pq/MaxPQ.java.html # @see http://docs.oracle.com/javase/7/docs/api/java/util/PriorityQueue.html # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:8 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#8 class Concurrent::Collection::RubyNonConcurrentPriorityQueue # Create a new priority queue with no items. # # @option opts # @param opts [Hash] the options for creating the queue # @return [RubyNonConcurrentPriorityQueue] a new instance of RubyNonConcurrentPriorityQueue # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:11 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#11 def initialize(opts = T.unsafe(nil)); end # Inserts the specified element into this priority queue. # # @param item [Object] the item to insert onto the queue # @raise [ArgumentError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:78 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#78 def <<(item); end # Removes all of the elements from this priority queue. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:18 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#18 def clear; end # Deletes all items from `self` that are equal to `item`. # # @param item [Object] the item to be removed from the queue # @return [Object] true if the item is found else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:25 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#25 def delete(item); end # Retrieves and removes the head of this queue, or returns `nil` if this # queue is empty. # # @return [Object] the head of the queue or `nil` when empty # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:65 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#65 def deq; end # Returns `true` if `self` contains no elements. # # @return [Boolean] true if there are no items in the queue else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:43 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#43 def empty?; end # Inserts the specified element into this priority queue. # # @param item [Object] the item to insert onto the queue # @raise [ArgumentError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:78 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#78 def enq(item); end # Returns `true` if the given item is present in `self` (that is, if any # element == `item`), otherwise returns false. # # @param item [Object] the item to search for # @return [Boolean] true if the item is found else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:48 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#48 def has_priority?(item); end # Returns `true` if the given item is present in `self` (that is, if any # element == `item`), otherwise returns false. # # @param item [Object] the item to search for # @return [Boolean] true if the item is found else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:48 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#48 def include?(item); end # The current length of the queue. # # @return [Fixnum] the number of items in the queue # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:54 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#54 def length; end # Retrieves, but does not remove, the head of this queue, or returns `nil` # if this queue is empty. # # @return [Object] the head of the queue or `nil` when empty # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:60 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#60 def peek; end # Retrieves and removes the head of this queue, or returns `nil` if this # queue is empty. # # @return [Object] the head of the queue or `nil` when empty # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:65 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#65 def pop; end # Inserts the specified element into this priority queue. # # @param item [Object] the item to insert onto the queue # @raise [ArgumentError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:78 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#78 def push(item); end # Retrieves and removes the head of this queue, or returns `nil` if this # queue is empty. # # @return [Object] the head of the queue or `nil` when empty # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:65 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#65 def shift; end # The current length of the queue. # # @return [Fixnum] the number of items in the queue # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:54 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#54 def size; end private # Are the items at the given indexes ordered based on the priority @@ -3218,88 +3029,88 @@ # @param x [Integer] the first index from which to retrieve a comparable value # @param y [Integer] the second index from which to retrieve a comparable value # @return [Boolean] true if the two elements are in the correct priority order # else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:119 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#119 def ordered?(x, y); end # Percolate down to maintain heap invariant. # # @param k [Integer] the index at which to start the percolation # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:128 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#128 def sink(k); end # Exchange the values at the given indexes within the internal array. # # @param x [Integer] the first index to swap # @param y [Integer] the second index to swap # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:103 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#103 def swap(x, y); end # Percolate up to maintain heap invariant. # # @param k [Integer] the index at which to start the percolation # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:147 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#147 def swim(k); end class << self # @!macro priority_queue_method_from_list # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb:89 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb#89 def from_list(list, opts = T.unsafe(nil)); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/dereferenceable.rb:2 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/dereferenceable.rb#2 module Concurrent::Concern; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/deprecation.rb:8 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/deprecation.rb#8 module Concurrent::Concern::Deprecation include ::Logger::Severity include ::Concurrent::Concern::Logging extend ::Logger::Severity extend ::Concurrent::Concern::Logging extend ::Concurrent::Concern::Deprecation - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/deprecation.rb:12 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/deprecation.rb#12 def deprecated(message, strip = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/deprecation.rb:27 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/deprecation.rb#27 def deprecated_method(old_name, new_name); end end # Object references in Ruby are mutable. This can lead to serious problems when # the `#value` of a concurrent object is a mutable reference. Which is always the # case unless the value is a `Fixnum`, `Symbol`, or similar "primitive" data type. # Most classes in this library that expose a `#value` getter method do so using the # `Dereferenceable` mixin module. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/dereferenceable.rb:11 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/dereferenceable.rb#11 module Concurrent::Concern::Dereferenceable # Return the value this object represents after applying the options specified # by the `#set_deref_options` method. # # @return [Object] the current value of the object # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/dereferenceable.rb:21 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/dereferenceable.rb#21 def deref; end # Return the value this object represents after applying the options specified # by the `#set_deref_options` method. # # @return [Object] the current value of the object # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/dereferenceable.rb:21 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/dereferenceable.rb#21 def value; end protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/dereferenceable.rb:63 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/dereferenceable.rb#63 def apply_deref_options(value); end # Set the options which define the operations #value performs before # returning data to the caller (dereferencing). # @@ -3309,11 +3120,11 @@ # @option opts # @option opts # @option opts # @param opts [Hash] the options defining dereference behavior. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/dereferenceable.rb:54 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/dereferenceable.rb#54 def ns_set_deref_options(opts); end # Set the options which define the operations #value performs before # returning data to the caller (dereferencing). # @@ -3323,162 +3134,162 @@ # @option opts # @option opts # @option opts # @param opts [Hash] the options defining dereference behavior. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/dereferenceable.rb:48 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/dereferenceable.rb#48 def set_deref_options(opts = T.unsafe(nil)); end # Set the internal value of this object # # @param value [Object] the new value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/dereferenceable.rb:31 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/dereferenceable.rb#31 def value=(value); end end # Include where logging is needed # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/logging.rb:9 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/logging.rb#9 module Concurrent::Concern::Logging include ::Logger::Severity # Logs through {Concurrent.global_logger}, it can be overridden by setting @logger # # @param level [Integer] one of Logger::Severity constants # @param progname [String] e.g. a path of an Actor # @param message [String, nil] when nil block is used to generate the message # @yieldreturn [String] a message # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/logging.rb:17 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/logging.rb#17 def log(level, progname, message = T.unsafe(nil), &block); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:10 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#10 module Concurrent::Concern::Obligation include ::Concurrent::Concern::Dereferenceable # Has the obligation completed processing? # # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:49 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#49 def complete?; end # @example allows Obligation to be risen # rejected_ivar = Ivar.new.fail # raise rejected_ivar # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:126 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#126 def exception(*args); end # Has the obligation been fulfilled? # # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:20 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#20 def fulfilled?; end # Is the obligation still awaiting completion of processing? # # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:56 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#56 def incomplete?; end # Wait until obligation is complete or the timeout is reached. Will re-raise # any exceptions raised during processing (but will not raise an exception # on timeout). # # @param timeout [Numeric] the maximum time in seconds to wait. # @raise [Exception] raises the reason when rejected # @return [Obligation] self # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:86 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#86 def no_error!(timeout = T.unsafe(nil)); end # Is obligation completion still pending? # # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:35 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#35 def pending?; end # Has the obligation been fulfilled? # # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:20 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#20 def realized?; end # If an exception was raised during processing this will return the # exception object. Will return `nil` when the state is pending or if # the obligation has been successfully fulfilled. # # @return [Exception] the exception raised during processing or `nil` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:119 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#119 def reason; end # Has the obligation been rejected? # # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:28 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#28 def rejected?; end # The current state of the obligation. # # @return [Symbol] the current state # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:110 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#110 def state; end # Is the obligation still unscheduled? # # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:42 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#42 def unscheduled?; end # The current value of the obligation. Will be `nil` while the state is # pending or the operation has been rejected. # # @param timeout [Numeric] the maximum time in seconds to wait. # @return [Object] see Dereferenceable#deref # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:65 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#65 def value(timeout = T.unsafe(nil)); end # The current value of the obligation. Will be `nil` while the state is # pending or the operation has been rejected. Will re-raise any exceptions # raised during processing (but will not raise an exception on timeout). # # @param timeout [Numeric] the maximum time in seconds to wait. # @raise [Exception] raises the reason when rejected # @return [Object] see Dereferenceable#deref # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:98 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#98 def value!(timeout = T.unsafe(nil)); end # Wait until obligation is complete or the timeout has been reached. # # @param timeout [Numeric] the maximum time in seconds to wait. # @return [Obligation] self # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:74 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#74 def wait(timeout = T.unsafe(nil)); end # Wait until obligation is complete or the timeout is reached. Will re-raise # any exceptions raised during processing (but will not raise an exception # on timeout). # # @param timeout [Numeric] the maximum time in seconds to wait. # @raise [Exception] raises the reason when rejected # @return [Obligation] self # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:86 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#86 def wait!(timeout = T.unsafe(nil)); end protected # Atomic compare and set operation @@ -3486,44 +3297,44 @@ # # @param next_state [Symbol] # @param expected_current [Symbol] # @return [Boolean] true is state is changed, false otherwise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:174 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#174 def compare_and_set_state(next_state, *expected_current); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:145 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#145 def event; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:134 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#134 def get_arguments_from(opts = T.unsafe(nil)); end # Executes the block within mutex if current state is included in expected_states # # @return block value if executed, false otherwise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:190 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#190 def if_state(*expected_states); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:139 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#139 def init_obligation; end # Am I in the current state? # # @param expected [Symbol] The state to check against # @return [Boolean] true if in the expected state else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:210 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#210 def ns_check_state?(expected); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:215 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#215 def ns_set_state(value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:150 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#150 def set_state(success, value, reason); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/obligation.rb:161 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/obligation.rb#161 def state=(value); end end # The [observer pattern](http://en.wikipedia.org/wiki/Observer_pattern) is one # of the most useful design patterns. @@ -3567,81 +3378,81 @@ # # `obs` is wrong because the variable `@count` can be accessed by different # threads at the same time, so it should be synchronized (using either a Mutex # or an AtomicFixum) # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/observable.rb:50 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/observable.rb#50 module Concurrent::Concern::Observable # Adds an observer to this set. If a block is passed, the observer will be # created by this method and no other params should be passed. # # @param observer [Object] the observer to add # @param func [Symbol] the function to call on the observer during notification. # Default is :update # @return [Object] the added observer # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/observable.rb:61 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/observable.rb#61 def add_observer(observer = T.unsafe(nil), func = T.unsafe(nil), &block); end # Return the number of observers associated with this object. # # @return [Integer] the observers count # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/observable.rb:101 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/observable.rb#101 def count_observers; end # Remove `observer` as an observer on this object so that it will no # longer receive notifications. # # @param observer [Object] the observer to remove # @return [Object] the deleted observer # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/observable.rb:82 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/observable.rb#82 def delete_observer(observer); end # Remove all observers associated with this object. # # @return [Observable] self # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/observable.rb:91 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/observable.rb#91 def delete_observers; end # As `#add_observer` but can be used for chaining. # # @param observer [Object] the observer to add # @param func [Symbol] the function to call on the observer during notification. # @return [Observable] self # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/observable.rb:70 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/observable.rb#70 def with_observer(observer = T.unsafe(nil), func = T.unsafe(nil), &block); end protected # Returns the value of attribute observers. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/observable.rb:107 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/observable.rb#107 def observers; end # Sets the attribute observers # # @param value the value to set the attribute observers to. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/concern/observable.rb:107 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/concern/observable.rb#107 def observers=(_arg0); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb:143 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb#142 class Concurrent::ConcurrentUpdateError < ::ThreadError; end # frozen pre-allocated backtrace to speed ConcurrentUpdateError # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb:144 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb#144 Concurrent::ConcurrentUpdateError::CONC_UP_ERR_BACKTRACE = T.let(T.unsafe(nil), Array) # Raised when errors occur during configuration. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:6 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#6 class Concurrent::ConfigurationError < ::Concurrent::Error; end # A synchronization object that allows one thread to wait on multiple other threads. # The thread that will wait creates a `CountDownLatch` and sets the initial value # (normally equal to the number of other threads). The initiating thread passes the @@ -3672,14 +3483,14 @@ # puts latch.count # end # # [waiter, decrementer].each(&:join) # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/count_down_latch.rb:98 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/count_down_latch.rb#98 class Concurrent::CountDownLatch < ::Concurrent::MutexCountDownLatch; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/count_down_latch.rb:56 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/count_down_latch.rb#56 Concurrent::CountDownLatchImplementation = Concurrent::MutexCountDownLatch # A synchronization aid that allows a set of threads to all wait for each # other to reach a common barrier point. # @@ -3701,52 +3512,52 @@ # # use main as well # process.call 2 # # # here we can be sure that all jobs are processed # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb:27 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#27 class Concurrent::CyclicBarrier < ::Concurrent::Synchronization::LockableObject # Create a new `CyclicBarrier` that waits for `parties` threads # # @param parties [Fixnum] the number of parties # @raise [ArgumentError] if `parties` is not an integer or is less than zero # @return [CyclicBarrier] a new instance of CyclicBarrier # @yield an optional block that will be executed that will be executed after # the last thread arrives and before the others are released # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb:40 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#40 def initialize(parties, &block); end # A barrier can be broken when: # - a thread called the `reset` method while at least one other thread was waiting # - at least one thread timed out on `wait` method # # A broken barrier can be restored using `reset` it's safer to create a new one # # @return [Boolean] true if the barrier is broken otherwise false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb:105 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#105 def broken?; end # @return [Fixnum] the number of threads currently waiting on the barrier # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb:54 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#54 def number_waiting; end # @return [Fixnum] the number of threads needed to pass the barrier # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb:49 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#49 def parties; end # resets the barrier to its initial state # If there is at least one waiting thread, it will be woken up, the `wait` # method will return false and the barrier will be broken # If the barrier is broken, this method restores it to the original state # # @return [nil] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb:95 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#95 def reset; end # Blocks on the barrier until the number of waiting threads is equal to # `parties` or until `timeout` is reached or `reset` is called # If a block has been passed to the constructor, it will be executed once by @@ -3755,43 +3566,42 @@ # @param timeout [Fixnum] the number of seconds to wait for the counter or # `nil` to block indefinitely # @return [Boolean] `true` if the `count` reaches zero else false on # `timeout` or on `reset` or if the barrier is broken # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb:66 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#66 def wait(timeout = T.unsafe(nil)); end protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb:111 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#111 def ns_generation_done(generation, status, continue = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb:122 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#122 def ns_initialize(parties, &block); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb:117 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#117 def ns_next_generation; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb:30 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb#30 class Concurrent::CyclicBarrier::Generation < ::Struct # Returns the value of attribute status # # @return [Object] the current value of status def status; end # Sets the attribute status # # @param value [Object] the value to set the attribute status to. # @return [Object] the newly set value - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb:30 def status=(_); end class << self def [](*_arg0); end def inspect; end + def keyword_init?; end def members; end def new(*_arg0); end end end @@ -3823,30 +3633,30 @@ # irrelevant. To enable non-blocking behavior, use the `executor` # constructor option. This will cause the delayed operation to be # execute on the given executor, allowing the call to timeout. # @see Concurrent::Concern::Dereferenceable # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/delay.rb:44 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/delay.rb#44 class Concurrent::Delay < ::Concurrent::Synchronization::LockableObject include ::Concurrent::Concern::Dereferenceable include ::Concurrent::Concern::Obligation # Create a new `Delay` in the `:pending` state. # # @raise [ArgumentError] if no block is given # @return [Delay] a new instance of Delay # @yield the delayed operation to perform # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/delay.rb:62 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/delay.rb#62 def initialize(opts = T.unsafe(nil), &block); end # Reconfigures the block returning the value if still `#incomplete?` # # @return [true, false] if success # @yield the delayed operation to perform # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/delay.rb:146 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/delay.rb#146 def reconfigure(&block); end # Return the value this object represents after applying the options # specified by the `#set_deref_options` method. If the delayed operation # raised an exception this method will return nil. The execption object @@ -3859,11 +3669,11 @@ # constructor option. This will cause the delayed operation to be # execute on the given executor, allowing the call to timeout. # @param timeout [Numeric] the maximum number of seconds to wait # @return [Object] the current value of the object # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/delay.rb:77 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/delay.rb#77 def value(timeout = T.unsafe(nil)); end # Return the value this object represents after applying the options # specified by the `#set_deref_options` method. If the delayed operation # raised an exception, this method will raise that exception (even when) @@ -3877,11 +3687,11 @@ # execute on the given executor, allowing the call to timeout. # @param timeout [Numeric] the maximum number of seconds to wait # @raise [Exception] when `#rejected?` raises `#reason` # @return [Object] the current value of the object # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/delay.rb:113 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/delay.rb#113 def value!(timeout = T.unsafe(nil)); end # Return the value this object represents after applying the options # specified by the `#set_deref_options` method. # @@ -3893,36 +3703,36 @@ # execute on the given executor, allowing the call to timeout. # @param timeout [Integer] (nil) the maximum number of seconds to wait for # the value to be computed. When `nil` the caller will block indefinitely. # @return [Object] self # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/delay.rb:132 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/delay.rb#132 def wait(timeout = T.unsafe(nil)); end protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/delay.rb:160 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/delay.rb#160 def ns_initialize(opts, &block); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/delay.rb:173 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/delay.rb#173 def execute_task_once; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/dataflow.rb:7 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#7 class Concurrent::DependencyCounter # @return [DependencyCounter] a new instance of DependencyCounter # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/dataflow.rb:9 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#9 def initialize(count, &block); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/dataflow.rb:14 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/dataflow.rb#14 def update(time, value, reason); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:3 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#3 class Concurrent::Error < ::StandardError; end # Old school kernel-style event reminiscent of Win32 programming in C++. # # When an `Event` is created it is in the `unset` state. Threads can choose to @@ -3952,63 +3762,63 @@ # # t1 is waiting # # t2 calling set # # event occurred # @see http://msdn.microsoft.com/en-us/library/windows/desktop/ms682655.aspx # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/event.rb:36 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/event.rb#36 class Concurrent::Event < ::Concurrent::Synchronization::LockableObject # Creates a new `Event` in the unset state. Threads calling `#wait` on the # `Event` will block. # # @return [Event] a new instance of Event # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/event.rb:40 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/event.rb#40 def initialize; end # Reset a previously set event back to the `unset` state. # Has no effect if the `Event` has not yet been set. # # @return [Boolean] should always return `true` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/event.rb:68 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/event.rb#68 def reset; end # Trigger the event, setting the state to `set` and releasing all threads # waiting on the event. Has no effect if the `Event` has already been set. # # @return [Boolean] should always return `true` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/event.rb:56 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/event.rb#56 def set; end # Is the object in the set state? # # @return [Boolean] indicating whether or not the `Event` has been set # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/event.rb:48 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/event.rb#48 def set?; end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/event.rb:60 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/event.rb#60 def try?; end # Wait a given number of seconds for the `Event` to be set by another # thread. Will wait forever when no `timeout` value is given. Returns # immediately if the `Event` has already been set. # # @return [Boolean] true if the `Event` was set before timeout else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/event.rb:83 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/event.rb#83 def wait(timeout = T.unsafe(nil)); end protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/event.rb:104 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/event.rb#104 def ns_initialize; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/event.rb:96 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/event.rb#96 def ns_set; end end # A synchronization point at which threads can pair and swap elements within # pairs. Each thread presents some object on entry to the exchange method, @@ -4062,56 +3872,56 @@ # Thread.new { puts "second: " << exchanger.exchange('bar', 1) } #=> "second: foo" # ] # threads.each {|t| t.join(2) } # @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Exchanger.html java.util.concurrent.Exchanger # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/exchanger.rb:335 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#335 class Concurrent::Exchanger < ::Concurrent::RubyExchanger; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/exchanger.rb:326 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#326 Concurrent::ExchangerImplementation = Concurrent::RubyExchanger -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/executor_service.rb:157 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/executor_service.rb#157 module Concurrent::ExecutorService include ::Logger::Severity include ::Concurrent::Concern::Logging # Submit a task to the executor for asynchronous processing. # # @param task [Proc] the asynchronous task to perform # @return [self] returns itself # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/executor_service.rb:166 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/executor_service.rb#166 def <<(task); end # Does the task queue have a maximum size? # # @note Always returns `false` # @return [Boolean] True if the task queue has a maximum size else false. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/executor_service.rb:174 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/executor_service.rb#174 def can_overflow?; end # Submit a task to the executor for asynchronous processing. # # @param args [Array] zero or more arguments to be passed to the task # @raise [ArgumentError] if no task is given # @return [Boolean] `true` if the task is queued, `false` if the executor # is not running # @yield the asynchronous task to perform # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/executor_service.rb:161 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/executor_service.rb#161 def post(*args, &task); end # Does this executor guarantee serialization of its operations? # # @note Always returns `false` # @return [Boolean] True if the executor guarantees that all operations # will be post in the order they are received and no two operations may # occur simultaneously. Else false. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/executor_service.rb:181 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/executor_service.rb#181 def serialized?; end end # A thread pool that reuses a fixed number of threads operating off an unbounded queue. # At any point, at most `num_threads` will be active processing tasks. When all threads are busy new @@ -4170,11 +3980,11 @@ # @see http://docs.oracle.com/javase/tutorial/essential/concurrency/pools.html Java Tutorials: Thread Pools # @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executors.html Java Executors class # @see http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutorService.html Java ExecutorService interface # @see https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html#setDaemon-boolean- # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/fixed_thread_pool.rb:197 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/fixed_thread_pool.rb#197 class Concurrent::FixedThreadPool < ::Concurrent::ThreadPoolExecutor # Create a new thread pool. # # @option opts # @param num_threads [Integer] the number of threads to allocate @@ -4182,47 +3992,47 @@ # @raise [ArgumentError] if `num_threads` is less than or equal to zero # @raise [ArgumentError] if `fallback_policy` is not a known policy # @return [FixedThreadPool] a new instance of FixedThreadPool # @see http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Executors.html#newFixedThreadPool-int- # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/fixed_thread_pool.rb:211 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/fixed_thread_pool.rb#211 def initialize(num_threads, opts = T.unsafe(nil)); end end # {include:file:docs-source/future.md} # # @see http://ruby-doc.org/stdlib-2.1.1/libdoc/observer/rdoc/Observable.html Ruby Observable module # @see http://clojuredocs.org/clojure_core/clojure.core/future Clojure's future function # @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Future.html java.util.concurrent.Future # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/future.rb:21 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/future.rb#21 class Concurrent::Future < ::Concurrent::IVar # Create a new `Future` in the `:unscheduled` state. # # @option opts # @param opts [Hash] a customizable set of options # @raise [ArgumentError] if no block is given # @return [Future] a new instance of Future # @yield the asynchronous operation to perform # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/future.rb:33 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/future.rb#33 def initialize(opts = T.unsafe(nil), &block); end # Attempt to cancel the operation if it has not already processed. # The operation can only be cancelled while still `pending`. It cannot # be cancelled once it has begun processing or has completed. # # @return [Boolean] was the operation successfully cancelled. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/future.rb:99 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/future.rb#99 def cancel; end # Has the operation been successfully cancelled? # # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/future.rb:111 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/future.rb#111 def cancelled?; end # Execute an `:unscheduled` `Future`. Immediately sets the state to `:pending` and # passes the block to a new thread/thread pool for eventual execution. # Does nothing if the `Future` is in any state other than `:unscheduled`. @@ -4235,38 +4045,29 @@ # @example Instance and execute in one line # future = Concurrent::Future.new{ sleep(1); 42 }.execute # future.state #=> :pending # @return [Future] a reference to `self` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/future.rb:53 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/future.rb#53 def execute; end - # Set the `IVar` to a value and wake or notify all threads waiting on it. - # - # @param value [Object] the value to store in the `IVar` - # @raise [ArgumentError] if both a value and a block are given - # @raise [Concurrent::MultipleAssignmentError] if the `IVar` has already - # been set or otherwise completed - # @return [IVar] self - # @yield A block operation to use for setting the value - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/future.rb:82 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/future.rb#82 def set(value = T.unsafe(nil), &block); end # Wait the given number of seconds for the operation to complete. # On timeout attempt to cancel the operation. # # @param timeout [Numeric] the maximum time in seconds to wait. # @return [Boolean] true if the operation completed before the timeout # else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/future.rb:121 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/future.rb#121 def wait_or_cancel(timeout); end protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/future.rb:133 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/future.rb#133 def ns_initialize(value, opts); end class << self # Create a new `Future` object with the given block, execute it, and return the # `:pending` object. @@ -4278,41 +4079,41 @@ # @param opts [Hash] a customizable set of options # @raise [ArgumentError] if no block is given # @return [Future] the newly created `Future` in the `:pending` state # @yield the asynchronous operation to perform # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/future.rb:77 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/future.rb#77 def execute(opts = T.unsafe(nil), &block); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:101 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#101 Concurrent::GLOBAL_FAST_EXECUTOR = T.let(T.unsafe(nil), Concurrent::Delay) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:113 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#113 Concurrent::GLOBAL_IMMEDIATE_EXECUTOR = T.let(T.unsafe(nil), Concurrent::ImmediateExecutor) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:105 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#105 Concurrent::GLOBAL_IO_EXECUTOR = T.let(T.unsafe(nil), Concurrent::Delay) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:89 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#89 Concurrent::GLOBAL_LOGGER = T.let(T.unsafe(nil), Concurrent::AtomicReference) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:109 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#109 Concurrent::GLOBAL_TIMER_SET = T.let(T.unsafe(nil), Concurrent::Delay) # A thread-safe subclass of Hash. This version locks against the object # itself for every method call, ensuring only one thread can be reading # or writing at a time. This includes iteration methods like `#each`, # which takes the lock repeatedly when reading an item. # # @see http://ruby-doc.org/core/Hash.html Ruby standard library `Hash` # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/hash.rb:56 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/hash.rb#56 class Concurrent::Hash < ::Hash; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/hash.rb:16 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/hash.rb#16 Concurrent::HashImplementation = Hash # An `IVar` is like a future that you can assign. As a future is a value that # is being computed that you can wait on, an `IVar` is a value that is waiting # to be assigned, that you can wait on. `IVars` are single assignment and @@ -4349,11 +4150,11 @@ # [I-Structures: Data structures for parallel computing](http://dl.acm.org/citation.cfm?id=69562). # In Proceedings of Workshop on Graph Reduction, 1986. # 2. For recent application: # [DataDrivenFuture in Habanero Java from Rice](http://www.cs.rice.edu/~vs3/hjlib/doc/edu/rice/hj/api/HjDataDrivenFuture.html). # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/ivar.rb:47 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#47 class Concurrent::IVar < ::Concurrent::Synchronization::LockableObject include ::Concurrent::Concern::Dereferenceable include ::Concurrent::Concern::Obligation include ::Concurrent::Concern::Observable @@ -4364,11 +4165,11 @@ # @option opts # @param value [Object] the initial value # @param opts [Hash] the options to create a message with # @return [IVar] a new instance of IVar # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/ivar.rb:61 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#61 def initialize(value = T.unsafe(nil), opts = T.unsafe(nil), &block); end # Add an observer on this object that will receive notification on update. # # Upon completion the `IVar` will notify all observers in a thread-safe way. @@ -4380,21 +4181,21 @@ # @param observer [Object] the object that will be notified of changes # @param func [Symbol] symbol naming the method to call when this # `Observable` has changes` # @raise [ArgumentError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/ivar.rb:80 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#80 def add_observer(observer = T.unsafe(nil), func = T.unsafe(nil), &block); end # Set the `IVar` to failed due to some error and wake or notify all threads waiting on it. # # @param reason [Object] for the failure # @raise [Concurrent::MultipleAssignmentError] if the `IVar` has already # been set or otherwise completed # @return [IVar] self # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/ivar.rb:134 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#134 def fail(reason = T.unsafe(nil)); end # Set the `IVar` to a value and wake or notify all threads waiting on it. # # @param value [Object] the value to store in the `IVar` @@ -4402,11 +4203,11 @@ # @raise [Concurrent::MultipleAssignmentError] if the `IVar` has already # been set or otherwise completed # @return [IVar] self # @yield A block operation to use for setting the value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/ivar.rb:112 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#112 def set(value = T.unsafe(nil)); end # Attempt to set the `IVar` with the given value or block. Return a # boolean indicating the success or failure of the set operation. # @@ -4415,43 +4216,43 @@ # @raise [Concurrent::MultipleAssignmentError] if the `IVar` has already # been set or otherwise completed # @return [Boolean] true if the value was set else false # @yield A block operation to use for setting the value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/ivar.rb:144 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#144 def try_set(value = T.unsafe(nil), &block); end protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/ivar.rb:201 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#201 def check_for_block_or_value!(block_given, value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/ivar.rb:176 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#176 def complete(success, value, reason); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/ivar.rb:183 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#183 def complete_without_notification(success, value, reason); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/ivar.rb:189 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#189 def notify_observers(value, reason); end # @raise [MultipleAssignmentError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/ivar.rb:194 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#194 def ns_complete_without_notification(success, value, reason); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/ivar.rb:154 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#154 def ns_initialize(value, opts); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/ivar.rb:167 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#167 def safe_execute(task, args = T.unsafe(nil)); end end # Raised when an operation is attempted which is not legal given the # receiver's current state # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:20 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#20 class Concurrent::IllegalOperationError < ::Concurrent::Error; end # An executor service which runs all operations on the current thread, # blocking as necessary. Operations are performed in the order they are # received and no two operations can be performed simultaneously. @@ -4461,257 +4262,153 @@ # that thread until the operation is complete. This can be very beneficial # during testing because it makes all operations deterministic. # # @note Intended for use primarily in testing and debugging. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/immediate_executor.rb:17 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/immediate_executor.rb#17 class Concurrent::ImmediateExecutor < ::Concurrent::AbstractExecutorService include ::Concurrent::SerialExecutorService # Creates a new executor # # @return [ImmediateExecutor] a new instance of ImmediateExecutor # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/immediate_executor.rb:21 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/immediate_executor.rb#21 def initialize; end # Submit a task to the executor for asynchronous processing. # # @param task [Proc] the asynchronous task to perform # @return [self] returns itself # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/immediate_executor.rb:34 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/immediate_executor.rb#34 def <<(task); end # Begin an orderly shutdown. Tasks already in the queue will be executed, # but no new tasks will be accepted. Has no additional effect if the # thread pool is not running. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/immediate_executor.rb:55 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/immediate_executor.rb#55 def kill; end # Submit a task to the executor for asynchronous processing. # # @param args [Array] zero or more arguments to be passed to the task # @raise [ArgumentError] if no task is given # @return [Boolean] `true` if the task is queued, `false` if the executor # is not running # @yield the asynchronous task to perform # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/immediate_executor.rb:26 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/immediate_executor.rb#26 def post(*args, &task); end # Is the executor running? # # @return [Boolean] `true` when running, `false` when shutting down or shutdown # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/immediate_executor.rb:40 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/immediate_executor.rb#40 def running?; end # Begin an orderly shutdown. Tasks already in the queue will be executed, # but no new tasks will be accepted. Has no additional effect if the # thread pool is not running. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/immediate_executor.rb:55 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/immediate_executor.rb#55 def shutdown; end # Is the executor shutdown? # # @return [Boolean] `true` when shutdown, `false` when shutting down or running # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/immediate_executor.rb:50 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/immediate_executor.rb#50 def shutdown?; end # Is the executor shuttingdown? # # @return [Boolean] `true` when not running and not shutdown, else `false` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/immediate_executor.rb:45 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/immediate_executor.rb#45 def shuttingdown?; end # Block until executor shutdown is complete or until `timeout` seconds have # passed. # # @note Does not initiate shutdown or termination. Either `shutdown` or `kill` # must be called before this method (or on another thread). # @param timeout [Integer] the maximum number of seconds to wait for shutdown to complete # @return [Boolean] `true` if shutdown complete or false on `timeout` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/immediate_executor.rb:62 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/immediate_executor.rb#62 def wait_for_termination(timeout = T.unsafe(nil)); end end # Raised when an attempt is made to violate an immutability guarantee. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:16 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#16 class Concurrent::ImmutabilityError < ::Concurrent::Error; end # A thread-safe, immutable variation of Ruby's standard `Struct`. # # @see http://ruby-doc.org/core/Struct.html Ruby standard library `Struct` # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/immutable_struct.rb:9 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#9 module Concurrent::ImmutableStruct include ::Concurrent::Synchronization::AbstractStruct - # Equality - # - # @return [Boolean] true if other has the same struct subclass and has - # equal member values (according to `Object#==`) - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/immutable_struct.rb:51 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#51 def ==(other); end - # Attribute Reference - # - # @param member [Symbol, String, Integer] the string or symbol name of the member - # for which to obtain the value or the member's index - # @raise [NameError] if the member does not exist - # @raise [IndexError] if the index is out of range. - # @return [Object] the value of the given struct member or the member at the given index. - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/immutable_struct.rb:46 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#46 def [](member); end - # Yields the value of each struct member in order. If no block is given - # an enumerator is returned. - # - # @yield the operation to be performed on each struct member - # @yieldparam value [Object] each struct value (in order) - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/immutable_struct.rb:56 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#56 def each(&block); end - # Yields the name and value of each struct member in order. If no block is - # given an enumerator is returned. - # - # @yield the operation to be performed on each struct member/value pair - # @yieldparam member [Object] each struct member (in order) - # @yieldparam value [Object] each struct value (in order) - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/immutable_struct.rb:62 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#62 def each_pair(&block); end - # Describe the contents of this struct in a string. - # - # @return [String] the contents of this struct in a string - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/immutable_struct.rb:29 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#29 def inspect; end - # Returns a new struct containing the contents of `other` and the contents - # of `self`. If no block is specified, the value for entries with duplicate - # keys will be that of `other`. Otherwise the value for each duplicate key - # is determined by calling the block with the key, its value in `self` and - # its value in `other`. - # - # @param other [Hash] the hash from which to set the new values - # @raise [ArgumentError] of given a member that is not defined in the struct - # @return [Synchronization::AbstractStruct] a new struct with the new values - # @yield an options block for resolving duplicate keys - # @yieldparam member [String, Symbol] the name of the member which is duplicated - # @yieldparam selfvalue [Object] the value of the member in `self` - # @yieldparam othervalue [Object] the value of the member in `other` - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/immutable_struct.rb:36 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#36 def merge(other, &block); end - # Yields each member value from the struct to the block and returns an Array - # containing the member values from the struct for which the given block - # returns a true value (equivalent to `Enumerable#select`). - # - # @return [Array] an array containing each value for which the block returns true - # @yield the operation to be performed on each struct member - # @yieldparam value [Object] each struct value (in order) - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/immutable_struct.rb:68 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#68 def select(&block); end - # Returns the values for this struct as an Array. - # - # @return [Array] the values for this struct - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/immutable_struct.rb:17 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#17 def to_a; end - # Returns a hash containing the names and values for the struct’s members. - # - # @return [Hash] the names and values for the struct’s members - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/immutable_struct.rb:41 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#41 def to_h; end - # Describe the contents of this struct in a string. - # - # @return [String] the contents of this struct in a string - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/immutable_struct.rb:29 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#29 def to_s; end - # Returns the values for this struct as an Array. - # - # @return [Array] the values for this struct - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/immutable_struct.rb:17 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#17 def values; end - # Returns the struct member values for each selector as an Array. - # - # A selector may be either an Integer offset or a Range of offsets (as in `Array#values_at`). - # - # @param indexes [Fixnum, Range] the index(es) from which to obatin the values (in order) - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/immutable_struct.rb:24 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#24 def values_at(*indexes); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/immutable_struct.rb:76 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#76 def initialize_copy(original); end class << self # @private # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/immutable_struct.rb:12 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#12 def included(base); end - # Factory for creating new struct classes. - # - # ``` - # new([class_name] [, member_name]+>) -> StructClass click to toggle source - # new([class_name] [, member_name]+>) {|StructClass| block } -> StructClass - # new(value, ...) -> obj - # StructClass[value, ...] -> obj - # ``` - # - # The first two forms are used to create a new struct subclass `class_name` - # that can contain a value for each member_name . This subclass can be - # used to create instances of the structure like any other Class . - # - # If the `class_name` is omitted an anonymous struct class will be created. - # Otherwise, the name of this struct will appear as a constant in the struct class, - # so it must be unique for all structs under this base class and must start with a - # capital letter. Assigning a struct class to a constant also gives the class - # the name of the constant. - # - # If a block is given it will be evaluated in the context of `StructClass`, passing - # the created class as a parameter. This is the recommended way to customize a struct. - # Subclassing an anonymous struct creates an extra anonymous class that will never be used. - # - # The last two forms create a new instance of a struct subclass. The number of value - # parameters must be less than or equal to the number of attributes defined for the - # struct. Unset parameters default to nil. Passing more parameters than number of attributes - # will raise an `ArgumentError`. - # - # @see http://ruby-doc.org/core/Struct.html#method-c-new Ruby standard library `Struct#new` - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/immutable_struct.rb:82 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#82 def new(*args, &block); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/immutable_struct.rb:92 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/immutable_struct.rb#92 Concurrent::ImmutableStruct::FACTORY = T.let(T.unsafe(nil), T.untyped) # An executor service which runs all operations on a new thread, blocking # until it completes. Operations are performed in the order they are received # and no two operations can be performed simultaneously. @@ -4725,212 +4422,192 @@ # overflow the single stack in case of an ImmediateExecutor, which is # inconsistent with how it would behave for a threaded executor. # # @note Intended for use primarily in testing and debugging. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/indirect_immediate_executor.rb:20 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/indirect_immediate_executor.rb#19 class Concurrent::IndirectImmediateExecutor < ::Concurrent::ImmediateExecutor # Creates a new executor # # @return [IndirectImmediateExecutor] a new instance of IndirectImmediateExecutor # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/indirect_immediate_executor.rb:21 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/indirect_immediate_executor.rb#21 def initialize; end # Submit a task to the executor for asynchronous processing. # # @param args [Array] zero or more arguments to be passed to the task # @raise [ArgumentError] if no task is given # @return [Boolean] `true` if the task is queued, `false` if the executor # is not running # @yield the asynchronous task to perform # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/indirect_immediate_executor.rb:27 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/indirect_immediate_executor.rb#27 def post(*args, &task); end end # Raised when an object's methods are called when it has not been # properly initialized. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:24 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#24 class Concurrent::InitializationError < ::Concurrent::Error; end # Raised when a lifecycle method (such as `stop`) is called in an improper # sequence or when the object is in an inappropriate state. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:13 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#13 class Concurrent::LifecycleError < ::Concurrent::Error; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:4 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#4 class Concurrent::LockFreeStack < ::Concurrent::Synchronization::Object include ::Enumerable # @param head [Node] # @return [LockFreeStack] a new instance of LockFreeStack # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:49 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#49 def initialize(head = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:169 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#169 def __initialize_atomic_fields__; end # @return [true, false] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:116 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#116 def clear; end # @return [self] # @yield over the cleared stack # @yieldparam value [Object] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:140 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#140 def clear_each(&block); end # @param head [Node] # @return [true, false] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:126 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#126 def clear_if(head); end # @param head [Node] # @return [true, false] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:97 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#97 def compare_and_clear(head); end # @param head [Node] # @return [true, false] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:83 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#83 def compare_and_pop(head); end # @param head [Node] # @param value [Object] # @return [true, false] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:63 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#63 def compare_and_push(head, value); end # @param head [Node] # @return [self] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:105 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#105 def each(head = T.unsafe(nil)); end # @param head [Node] # @return [true, false] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:56 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#56 def empty?(head = T.unsafe(nil)); end # @return [String] Short string representation. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:152 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#152 def inspect; end # @return [Node] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:77 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#77 def peek; end # @return [Object] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:88 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#88 def pop; end # @param value [Object] # @return [self] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:69 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#69 def push(value); end # @param head [Node] # @param new_head [Node] # @return [true, false] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:133 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#133 def replace_if(head, new_head); end # @return [String] Short string representation. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:152 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#152 def to_s; end private - # Sets the head to new_head if the current head is expected_head - # - # @return [true, false] - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:137 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#137 def compare_and_set_head(expected, value); end - # @return [Object] The head. - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:125 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#125 def head; end - # Set the head. - # - # @return [Object] new_head. - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:129 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#129 def head=(value); end - # Set the head to new_head and return the old head. - # - # @return [Object] old head - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:133 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#133 def swap_head(value); end - # Updates the head using the block. - # - # @return [Object] new head - # @yield [Object] Calculate a new head using given (old) head - # @yieldparam old [Object] head - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:141 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#141 def update_head(&block); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 def new(*args, &block); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:39 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#39 def of1(value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:44 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#44 def of2(value1, value2); end end end # The singleton for empty node # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:30 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#30 Concurrent::LockFreeStack::EMPTY = T.let(T.unsafe(nil), Concurrent::LockFreeStack::Node) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:8 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#8 class Concurrent::LockFreeStack::Node # @return [Node] a new instance of Node # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:21 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#21 def initialize(value, next_node); end # @return [Node] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:12 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#12 def next_node; end # @return [Object] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:15 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#15 def value; end # allow to nil-ify to free GC when the entry is no longer relevant, not synchronised # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb:19 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb#19 def value=(_arg0); end class << self def [](*_arg0); end end @@ -4965,168 +4642,168 @@ # # 2. S. Peyton Jones, A. Gordon, and S. Finne. [Concurrent Haskell](http://dl.acm.org/citation.cfm?id=237794). # In Proceedings of the 23rd Symposium on Principles of Programming Languages # (PoPL), 1996. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:38 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#38 class Concurrent::MVar < ::Concurrent::Synchronization::Object include ::Concurrent::Concern::Dereferenceable # Create a new `MVar`, either empty or with an initial value. # # @param opts [Hash] the options controlling how the future will be processed # @return [MVar] a new instance of MVar # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:54 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#54 def initialize(value = T.unsafe(nil), opts = T.unsafe(nil)); end # acquires lock on the from an `MVAR`, yields the value to provided block, # and release lock. A timeout can be set to limit the time spent blocked, # in which case it returns `TIMEOUT` if the time is exceeded. # # @return [Object] the value returned by the block, or `TIMEOUT` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:86 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#86 def borrow(timeout = T.unsafe(nil)); end # Returns if the `MVar` is currently empty. # # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:195 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#195 def empty?; end # Returns if the `MVar` currently contains a value. # # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:200 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#200 def full?; end # Atomically `take`, yield the value to a block for transformation, and then # `put` the transformed value. Returns the transformed value. A timeout can # be set to limit the time spent blocked, in which case it returns `TIMEOUT` # if the time is exceeded. # # @raise [ArgumentError] # @return [Object] the transformed value, or `TIMEOUT` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:123 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#123 def modify(timeout = T.unsafe(nil)); end # Non-blocking version of `modify` that will yield with `EMPTY` if there is no value yet. # # @raise [ArgumentError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:179 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#179 def modify!; end # Put a value into an `MVar`, blocking if there is already a value until # it is empty. A timeout can be set to limit the time spent blocked, in # which case it returns `TIMEOUT` if the time is exceeded. # # @return [Object] the value that was put, or `TIMEOUT` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:103 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#103 def put(value, timeout = T.unsafe(nil)); end # Non-blocking version of `put` that will overwrite an existing value. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:169 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#169 def set!(value); end # Remove the value from an `MVar`, leaving it empty, and blocking if there # isn't a value. A timeout can be set to limit the time spent blocked, in # which case it returns `TIMEOUT` if the time is exceeded. # # @return [Object] the value that was taken, or `TIMEOUT` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:66 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#66 def take(timeout = T.unsafe(nil)); end # Non-blocking version of `put`, that returns whether or not it was successful. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:156 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#156 def try_put!(value); end # Non-blocking version of `take`, that returns `EMPTY` instead of blocking. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:142 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#142 def try_take!; end protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:206 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#206 def synchronize(&block); end private # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:212 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#212 def unlocked_empty?; end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:216 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#216 def unlocked_full?; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:224 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#224 def wait_for_empty(timeout); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:220 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#220 def wait_for_full(timeout); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:228 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#228 def wait_while(condition, timeout); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 def new(*args, &block); end end end # Unique value that represents that an `MVar` was empty # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:43 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#43 Concurrent::MVar::EMPTY = T.let(T.unsafe(nil), Object) # Unique value that represents that an `MVar` timed out before it was able # to produce a value. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mvar.rb:47 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/mvar.rb#47 Concurrent::MVar::TIMEOUT = T.let(T.unsafe(nil), Object) # `Concurrent::Map` is a hash-like object and should have much better performance # characteristics, especially under high concurrency, than `Concurrent::Hash`. # However, `Concurrent::Map `is not strictly semantically equivalent to a ruby `Hash` # -- for instance, it does not necessarily retain ordering by insertion time as `Hash` # does. For most uses it should do fine though, and we recommend you consider # `Concurrent::Map` instead of `Concurrent::Hash` for your concurrency-safe hash needs. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:37 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#37 class Concurrent::Map < ::Concurrent::Collection::MriMapBackend # @return [Map] a new instance of Map # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:121 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#121 def initialize(options = T.unsafe(nil), &block); end # Get a value with key # # @param key [Object] # @return [Object] the value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:135 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#135 def [](key); end # Set a value with key # # @param key [Object] # @param value [Object] # @return [Object] the new value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:153 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#153 def []=(key, value); end # Iterates over each key value pair. # This method is atomic. # @@ -5135,11 +4812,11 @@ # @return [self] # @yield for each key value pair in the map # @yieldparam key [Object] # @yieldparam value [Object] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:270 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#270 def each; end # Iterates over each key. # This method is atomic. # @@ -5147,11 +4824,11 @@ # to be used within the block. Doing so will cause a deadlock. # @return [self] # @yield for each key in the map # @yieldparam key [Object] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:251 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#251 def each_key; end # Iterates over each key value pair. # This method is atomic. # @@ -5160,11 +4837,11 @@ # @return [self] # @yield for each key value pair in the map # @yieldparam key [Object] # @yieldparam value [Object] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:270 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#270 def each_pair; end # Iterates over each value. # This method is atomic. # @@ -5172,18 +4849,18 @@ # to be used within the block. Doing so will cause a deadlock. # @return [self] # @yield for each value in the map # @yieldparam value [Object] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:260 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#260 def each_value; end # Is map empty? # # @return [true, false] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:287 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#287 def empty?; end # Get a value with key, or default_value when key is absent, # or fail when no default_value is given. # @@ -5201,11 +4878,11 @@ # @return [Object] the value or default value # @yield default value for a key # @yieldparam key [Object] # @yieldreturn [Object] default value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:178 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#178 def fetch(key, default_value = T.unsafe(nil)); end # Fetch value with key, or store default value when key is absent, # or fail when no default_value is given. This is a two step operation, # therefore not atomic. The store can overwrite other concurrently @@ -5219,102 +4896,102 @@ # @return [Object] the value or default value # @yield default value for a key # @yieldparam key [Object] # @yieldreturn [Object] default value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:201 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#201 def fetch_or_store(key, default_value = T.unsafe(nil)); end # Get a value with key # # @param key [Object] # @return [Object] the value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:135 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#135 def get(key); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:317 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#317 def inspect; end # Find key of a value. # # @param value [Object] # @return [Object, nil] key or nil when not found # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:280 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#280 def key(value); end # All keys # # @return [::Array<Object>] keys # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:232 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#232 def keys; end # @raise [TypeError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:301 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#301 def marshal_dump; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:309 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#309 def marshal_load(hash); end # Set a value with key # # @param key [Object] # @param value [Object] # @return [Object] the new value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:153 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#153 def put(key, value); end # Insert value into map with key if key is absent in one atomic step. # # @param key [Object] # @param value [Object] # @return [Object, nil] the previous value when key was present or nil when there was no key # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:211 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#211 def put_if_absent(key, value); end # Is the value stored in the map. Iterates over all values. # # @param value [Object] # @return [true, false] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:223 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#223 def value?(value); end # All values # # @return [::Array<Object>] values # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:240 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#240 def values; end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:327 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#327 def initialize_copy(other); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:332 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#332 def populate_from(hash); end # @raise [KeyError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:323 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#323 def raise_fetch_no_key; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/map.rb:337 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/map.rb#337 def validate_options_hash!(options); end end # Raised when an object with a start/stop lifecycle has been started an # excessive number of times. Often used in conjunction with a restart # policy or strategy. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:29 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#29 class Concurrent::MaxRestartFrequencyError < ::Concurrent::Error; end # A `Maybe` encapsulates an optional value. A `Maybe` either contains a value # of (represented as `Just`), or it is empty (represented as `Nothing`). Using # `Maybe` is a good way to deal with errors or exceptional cases without @@ -5410,86 +5087,86 @@ # result = ClientService.new(10).find # returns a Maybe # render json: result.or(NullClient.new) # @see https://hackage.haskell.org/package/base-4.2.0.1/docs/Data-Maybe.html Haskell Data.Maybe # @see https://github.com/purescript/purescript-maybe/blob/master/docs/Data.Maybe.md PureScript Data.Maybe # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/maybe.rb:104 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#104 class Concurrent::Maybe < ::Concurrent::Synchronization::Object include ::Comparable # Create a new `Maybe` with the given attributes. # # @param just [Object] The value when `Just` else `NONE`. # @param nothing [Exception, Object] The exception when `Nothing` else `NONE`. # @return [Maybe] The new `Maybe`. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/maybe.rb:224 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#224 def initialize(just, nothing); end # Comparison operator. # # @return [Integer] 0 if self and other are both `Nothing`; # -1 if self is `Nothing` and other is `Just`; # 1 if self is `Just` and other is nothing; # `self.just <=> other.just` if both self and other are `Just`. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/maybe.rb:199 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#199 def <=>(other); end # Is this `Maybe` a `Just` (successfully fulfilled with a value)? # # @return [Boolean] True if `Just` or false if `Nothing`. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/maybe.rb:176 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#176 def fulfilled?; end # The value of a `Maybe` when `Just`. Will be `NONE` when `Nothing`. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/maybe.rb:114 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#114 def just; end # Is this `Maybe` a `Just` (successfully fulfilled with a value)? # # @return [Boolean] True if `Just` or false if `Nothing`. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/maybe.rb:176 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#176 def just?; end # The reason for the `Maybe` when `Nothing`. Will be `NONE` when `Just`. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/maybe.rb:117 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#117 def nothing; end # Is this `Maybe` a `nothing` (rejected with an exception upon fulfillment)? # # @return [Boolean] True if `Nothing` or false if `Just`. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/maybe.rb:184 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#184 def nothing?; end # Return either the value of self or the given default value. # # @return [Object] The value of self when `Just`; else the given default. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/maybe.rb:210 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#210 def or(other); end # The reason for the `Maybe` when `Nothing`. Will be `NONE` when `Just`. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/maybe.rb:117 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#117 def reason; end # Is this `Maybe` a `nothing` (rejected with an exception upon fulfillment)? # # @return [Boolean] True if `Nothing` or false if `Just`. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/maybe.rb:184 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#184 def rejected?; end # The value of a `Maybe` when `Just`. Will be `NONE` when `Nothing`. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/maybe.rb:114 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#114 def value; end class << self # Create a new `Maybe` using the given block. # @@ -5504,106 +5181,106 @@ # @return [Maybe] The newly created object. # @yield The block from which to create a new `Maybe`. # @yieldparam args [Array<Object>] Zero or more block arguments passed as # arguments to the function. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/maybe.rb:137 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#137 def from(*args); end # Create a new `Just` with the given value. # # @param value [Object] The value to set for the new `Maybe` object. # @return [Maybe] The newly created object. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/maybe.rb:152 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#152 def just(value); end # Create a new `Nothing` with the given (optional) reason. # # @param error [Exception] The reason to set for the new `Maybe` object. # When given a string a new `StandardError` will be created with the # argument as the message. When no argument is given a new # `StandardError` with an empty message will be created. # @return [Maybe] The newly created object. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/maybe.rb:164 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#164 def nothing(error = T.unsafe(nil)); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 def new(*args, &block); end end end # Indicates that the given attribute has not been set. # When `Just` the {#nothing} getter will return `NONE`. # When `Nothing` the {#just} getter will return `NONE`. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/maybe.rb:111 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/maybe.rb#111 Concurrent::Maybe::NONE = T.let(T.unsafe(nil), Object) # Raised when an attempt is made to modify an immutable object # (such as an `IVar`) after its final state has been set. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:33 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#33 class Concurrent::MultipleAssignmentError < ::Concurrent::Error # @return [MultipleAssignmentError] a new instance of MultipleAssignmentError # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:36 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#36 def initialize(message = T.unsafe(nil), inspection_data = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:41 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#41 def inspect; end # Returns the value of attribute inspection_data. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:34 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#34 def inspection_data; end end # Aggregates multiple exceptions. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:58 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#58 class Concurrent::MultipleErrors < ::Concurrent::Error # @return [MultipleErrors] a new instance of MultipleErrors # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:61 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#61 def initialize(errors, message = T.unsafe(nil)); end # Returns the value of attribute errors. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:59 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#59 def errors; end end # An thread-safe variation of Ruby's standard `Struct`. Values can be set at # construction or safely changed at any time during the object's lifecycle. # # @see http://ruby-doc.org/core/Struct.html Ruby standard library `Struct` # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mutable_struct.rb:10 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#10 module Concurrent::MutableStruct include ::Concurrent::Synchronization::AbstractStruct # Equality # # @return [Boolean] true if other has the same struct subclass and has # equal member values (according to `Object#==`) # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mutable_struct.rb:128 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#128 def ==(other); end # Attribute Reference # # @param member [Symbol, String, Integer] the string or symbol name of the member # for which to obtain the value or the member's index # @raise [NameError] if the member does not exist # @raise [IndexError] if the index is out of range. # @return [Object] the value of the given struct member or the member at the given index. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mutable_struct.rb:118 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#118 def [](member); end # Attribute Assignment # # Sets the value of the given struct member or the member at the given index. @@ -5612,37 +5289,37 @@ # for which to obtain the value or the member's index # @raise [NameError] if the name does not exist # @raise [IndexError] if the index is out of range. # @return [Object] the value of the given struct member or the member at the given index. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mutable_struct.rb:185 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#185 def []=(member, value); end # Yields the value of each struct member in order. If no block is given # an enumerator is returned. # # @yield the operation to be performed on each struct member # @yieldparam value [Object] each struct value (in order) # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mutable_struct.rb:139 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#139 def each(&block); end # Yields the name and value of each struct member in order. If no block is # given an enumerator is returned. # # @yield the operation to be performed on each struct member/value pair # @yieldparam member [Object] each struct member (in order) # @yieldparam value [Object] each struct value (in order) # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mutable_struct.rb:152 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#152 def each_pair(&block); end # Describe the contents of this struct in a string. # # @return [String] the contents of this struct in a string # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mutable_struct.rb:72 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#72 def inspect; end # Returns a new struct containing the contents of `other` and the contents # of `self`. If no block is specified, the value for entries with duplicate # keys will be that of `other`. Otherwise the value for each duplicate key @@ -5655,64 +5332,64 @@ # @yield an options block for resolving duplicate keys # @yieldparam member [String, Symbol] the name of the member which is duplicated # @yieldparam selfvalue [Object] the value of the member in `self` # @yieldparam othervalue [Object] the value of the member in `other` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mutable_struct.rb:94 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#94 def merge(other, &block); end # Yields each member value from the struct to the block and returns an Array # containing the member values from the struct for which the given block # returns a true value (equivalent to `Enumerable#select`). # # @return [Array] an array containing each value for which the block returns true # @yield the operation to be performed on each struct member # @yieldparam value [Object] each struct value (in order) # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mutable_struct.rb:167 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#167 def select(&block); end # Returns the values for this struct as an Array. # # @return [Array] the values for this struct # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mutable_struct.rb:51 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#51 def to_a; end # Returns a hash containing the names and values for the struct’s members. # # @return [Hash] the names and values for the struct’s members # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mutable_struct.rb:103 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#103 def to_h; end # Describe the contents of this struct in a string. # # @return [String] the contents of this struct in a string # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mutable_struct.rb:72 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#72 def to_s; end # Returns the values for this struct as an Array. # # @return [Array] the values for this struct # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mutable_struct.rb:51 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#51 def values; end # Returns the struct member values for each selector as an Array. # # A selector may be either an Integer offset or a Range of offsets (as in `Array#values_at`). # # @param indexes [Fixnum, Range] the index(es) from which to obatin the values (in order) # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mutable_struct.rb:63 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#63 def values_at(*indexes); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mutable_struct.rb:202 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#202 def initialize_copy(original); end class << self # Factory for creating new struct classes. # @@ -5742,16 +5419,16 @@ # struct. Unset parameters default to nil. Passing more parameters than number of attributes # will raise an `ArgumentError`. # # @see http://ruby-doc.org/core/Struct.html#method-c-new Ruby standard library `Struct#new` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mutable_struct.rb:210 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#210 def new(*args, &block); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/mutable_struct.rb:220 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/mutable_struct.rb#220 Concurrent::MutableStruct::FACTORY = T.let(T.unsafe(nil), T.untyped) # A boolean value that can be updated atomically. Reads and writes to an atomic # boolean and thread-safe and guaranteed to succeed. Reads and writes may block # briefly but no explicit locking is required. @@ -5804,252 +5481,419 @@ # 3.340000 0.010000 3.350000 ( 0.855000) # ``` # # @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/atomic/AtomicBoolean.html java.util.concurrent.atomic.AtomicBoolean # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb:8 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb#8 class Concurrent::MutexAtomicBoolean < ::Concurrent::Synchronization::LockableObject # Creates a new `AtomicBoolean` with the given initial value. # # @param initial [Boolean] the initial value # @return [MutexAtomicBoolean] a new instance of MutexAtomicBoolean # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb:11 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb#11 def initialize(initial = T.unsafe(nil)); end # Is the current value `false` # # @return [Boolean] true if the current value is `false`, else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb:32 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb#32 def false?; end # Explicitly sets the value to false. # # @return [Boolean] true if value has changed, otherwise false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb:42 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb#42 def make_false; end # Explicitly sets the value to true. # # @return [Boolean] true if value has changed, otherwise false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb:37 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb#37 def make_true; end # Is the current value `true` # # @return [Boolean] true if the current value is `true`, else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb:27 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb#27 def true?; end # Retrieves the current `Boolean` value. # # @return [Boolean] the current value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb:17 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb#17 def value; end # Explicitly sets the value. # # @param value [Boolean] the new value to be set # @return [Boolean] the current value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb:22 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb#22 def value=(value); end protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb:49 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb#49 def ns_initialize(initial); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb:56 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb#56 def ns_make_value(value); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb:9 +# A numeric value that can be updated atomically. Reads and writes to an atomic +# fixnum and thread-safe and guaranteed to succeed. Reads and writes may block +# briefly but no explicit locking is required. +# +# +# ## Thread-safe Variable Classes +# +# Each of the thread-safe variable classes is designed to solve a different +# problem. In general: +# +# * *{Concurrent::Agent}:* Shared, mutable variable providing independent, +# uncoordinated, *asynchronous* change of individual values. Best used when +# the value will undergo frequent, complex updates. Suitable when the result +# of an update does not need to be known immediately. +# * *{Concurrent::Atom}:* Shared, mutable variable providing independent, +# uncoordinated, *synchronous* change of individual values. Best used when +# the value will undergo frequent reads but only occasional, though complex, +# updates. Suitable when the result of an update must be known immediately. +# * *{Concurrent::AtomicReference}:* A simple object reference that can be updated +# atomically. Updates are synchronous but fast. Best used when updates a +# simple set operations. Not suitable when updates are complex. +# {Concurrent::AtomicBoolean} and {Concurrent::AtomicFixnum} are similar +# but optimized for the given data type. +# * *{Concurrent::Exchanger}:* Shared, stateless synchronization point. Used +# when two or more threads need to exchange data. The threads will pair then +# block on each other until the exchange is complete. +# * *{Concurrent::MVar}:* Shared synchronization point. Used when one thread +# must give a value to another, which must take the value. The threads will +# block on each other until the exchange is complete. +# * *{Concurrent::ThreadLocalVar}:* Shared, mutable, isolated variable which +# holds a different value for each thread which has access. Often used as +# an instance variable in objects which must maintain different state +# for different threads. +# * *{Concurrent::TVar}:* Shared, mutable variables which provide +# *coordinated*, *synchronous*, change of *many* stated. Used when multiple +# value must change together, in an all-or-nothing transaction. +# Performance: +# +# ``` +# Testing with ruby 2.1.2 +# Testing with Concurrent::MutexAtomicFixnum... +# 3.130000 0.000000 3.130000 ( 3.136505) +# Testing with Concurrent::CAtomicFixnum... +# 0.790000 0.000000 0.790000 ( 0.785550) +# +# Testing with jruby 1.9.3 +# Testing with Concurrent::MutexAtomicFixnum... +# 5.460000 2.460000 7.920000 ( 3.715000) +# Testing with Concurrent::JavaAtomicFixnum... +# 4.520000 0.030000 4.550000 ( 1.187000) +# ``` +# +# @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/atomic/AtomicLong.html java.util.concurrent.atomic.AtomicLong +# +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb#9 class Concurrent::MutexAtomicFixnum < ::Concurrent::Synchronization::LockableObject + # Creates a new `AtomicFixnum` with the given initial value. + # + # @param initial [Fixnum] the initial value + # @raise [ArgumentError] if the initial value is not a `Fixnum` # @return [MutexAtomicFixnum] a new instance of MutexAtomicFixnum # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb:12 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb#12 def initialize(initial = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb:42 + # Atomically sets the value to the given updated value if the current + # value == the expected value. + # + # @param expect [Fixnum] the expected value + # @param update [Fixnum] the new value + # @return [Boolean] true if the value was updated else false + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb#42 def compare_and_set(expect, update); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb:35 + # Decreases the current value by the given amount (defaults to 1). + # + # @param delta [Fixnum] the amount by which to decrease the current value + # @return [Fixnum] the current value after decrementation + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb#35 def decrement(delta = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb:35 + # Decreases the current value by the given amount (defaults to 1). + # + # @param delta [Fixnum] the amount by which to decrease the current value + # @return [Fixnum] the current value after decrementation + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb#35 def down(delta = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb:28 + # Increases the current value by the given amount (defaults to 1). + # + # @param delta [Fixnum] the amount by which to increase the current value + # @return [Fixnum] the current value after incrementation + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb#28 def increment(delta = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb:28 + # Increases the current value by the given amount (defaults to 1). + # + # @param delta [Fixnum] the amount by which to increase the current value + # @return [Fixnum] the current value after incrementation + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb#28 def up(delta = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb:54 + # Pass the current value to the given block, replacing it + # with the block's result. May retry if the value changes + # during the block's execution. + # + # @return [Object] the new value + # @yield [Object] Calculate a new value for the atomic reference using + # given (old) value + # @yieldparam old_value [Object] the starting value of the atomic reference + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb#54 def update; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb:18 + # Retrieves the current `Fixnum` value. + # + # @return [Fixnum] the current value + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb#18 def value; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb:23 + # Explicitly sets the value. + # + # @param value [Fixnum] the new value to be set + # @raise [ArgumentError] if the new value is not a `Fixnum` + # @return [Fixnum] the current value + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb#23 def value=(value); end protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb:63 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb#63 def ns_initialize(initial); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb:70 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb#70 def ns_set(value); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb:5 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#5 class Concurrent::MutexAtomicReference < ::Concurrent::Synchronization::LockableObject include ::Concurrent::AtomicDirectUpdate include ::Concurrent::AtomicNumericCompareAndSetWrapper + # @param value [Object] The initial value. # @return [MutexAtomicReference] a new instance of MutexAtomicReference # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb:11 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#11 def initialize(value = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb:39 + # Atomically sets the value to the given updated value if + # the current value == the expected value. + # + # that the actual value was not equal to the expected value. + # + # @param old_value [Object] the expected value + # @param new_value [Object] the new value + # @return [Boolean] `true` if successful. A `false` return indicates + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#39 def _compare_and_set(old_value, new_value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic_reference/numeric_cas_wrapper.rb:10 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/numeric_cas_wrapper.rb#10 def compare_and_swap(old_value, new_value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb:17 + # Gets the current value. + # + # @return [Object] the current value + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#17 def get; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb:29 + # Atomically sets to the given value and returns the old value. + # + # @param new_value [Object] the new value + # @return [Object] the old value + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#29 def get_and_set(new_value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb:23 + # Sets to the given value. + # + # @param new_value [Object] the new value + # @return [Object] the new value + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#23 def set(new_value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb:29 + # Atomically sets to the given value and returns the old value. + # + # @param new_value [Object] the new value + # @return [Object] the old value + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#29 def swap(new_value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb:17 + # Gets the current value. + # + # @return [Object] the current value + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#17 def value; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb:23 + # Sets to the given value. + # + # @param new_value [Object] the new value + # @return [Object] the new value + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#23 def value=(new_value); end protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb:52 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb#52 def ns_initialize(value); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_count_down_latch.rb:9 +# A synchronization object that allows one thread to wait on multiple other threads. +# The thread that will wait creates a `CountDownLatch` and sets the initial value +# (normally equal to the number of other threads). The initiating thread passes the +# latch to the other threads then waits for the other threads by calling the `#wait` +# method. Each of the other threads calls `#count_down` when done with its work. +# When the latch counter reaches zero the waiting thread is unblocked and continues +# with its work. A `CountDownLatch` can be used only once. Its value cannot be reset. +# +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_count_down_latch.rb#9 class Concurrent::MutexCountDownLatch < ::Concurrent::Synchronization::LockableObject + # Create a new `CountDownLatch` with the initial `count`. + # + # @param count [new] the initial count + # @raise [ArgumentError] if `count` is not an integer or is less than zero # @return [MutexCountDownLatch] a new instance of MutexCountDownLatch # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_count_down_latch.rb:12 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_count_down_latch.rb#12 def initialize(count = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_count_down_latch.rb:34 + # The current value of the counter. + # + # @return [Fixnum] the current value of the counter + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_count_down_latch.rb#34 def count; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_count_down_latch.rb:26 + # Signal the latch to decrement the counter. Will signal all blocked threads when + # the `count` reaches zero. + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_count_down_latch.rb#26 def count_down; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_count_down_latch.rb:21 + # Block on the latch until the counter reaches zero or until `timeout` is reached. + # + # @param timeout [Fixnum] the number of seconds to wait for the counter or `nil` + # to block indefinitely + # @return [Boolean] `true` if the `count` reaches zero else false on `timeout` + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_count_down_latch.rb#21 def wait(timeout = T.unsafe(nil)); end protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_count_down_latch.rb:40 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_count_down_latch.rb#40 def ns_initialize(count); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb:9 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb#9 class Concurrent::MutexSemaphore < ::Concurrent::Synchronization::LockableObject # @return [MutexSemaphore] a new instance of MutexSemaphore # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb:12 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb#12 def initialize(count); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb:20 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb#20 def acquire(permits = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb:38 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb#38 def available_permits; end # Acquires and returns all permits that are immediately available. # # @return [Integer] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb:47 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb#47 def drain_permits; end # Shrinks the number of available permits by the indicated reduction. # # @param reduction [Fixnum] Number of permits to remove. # @raise [ArgumentError] if `reduction` is not an integer or is negative # @raise [ArgumentError] if `@free` - `@reduction` is less than zero # @return [nil] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb:99 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb#99 def reduce_permits(reduction); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb:77 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb#77 def release(permits = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb:54 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb#54 def try_acquire(permits = T.unsafe(nil), timeout = T.unsafe(nil)); end protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb:110 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb#110 def ns_initialize(count); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb:117 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb#117 def try_acquire_now(permits); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb:127 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb#127 def try_acquire_timed(permits, timeout); end end # Various classes within allows for +nil+ values to be stored, # so a special +NULL+ token is required to indicate the "nil-ness". # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/constants.rb:6 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/constants.rb#6 Concurrent::NULL = T.let(T.unsafe(nil), Object) # Suppresses all output when used for logging. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/configuration.rb:86 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/configuration.rb#86 Concurrent::NULL_LOGGER = T.let(T.unsafe(nil), Proc) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/options.rb:6 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/options.rb#6 module Concurrent::Options class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/options.rb:27 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/options.rb#27 def executor(executor_identifier); end # Get the requested `Executor` based on the values set in the options hash. # # @option opts # @param opts [Hash] the options defining the requested executor # @return [Executor, nil] the requested thread pool, or nil when no option specified # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/options.rb:19 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/options.rb#19 def executor_from_options(opts = T.unsafe(nil)); end end end # Promises are inspired by the JavaScript [Promises/A](http://wiki.commonjs.org/wiki/Promises/A) @@ -6226,11 +6070,11 @@ # # - `on_success { |result| ... }` is the same as `then {|result| ... }` # - `rescue { |reason| ... }` is the same as `then(Proc.new { |reason| ... } )` # - `rescue` is aliased by `catch` and `on_error` # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:190 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#190 class Concurrent::Promise < ::Concurrent::IVar # Initialize a new Promise with the provided options. # # @option opts # @option opts @@ -6241,79 +6085,79 @@ # @return [Promise] a new instance of Promise # @see http://wiki.commonjs.org/wiki/Promises/A # @see http://promises-aplus.github.io/promises-spec/ # @yield The block operation to be performed asynchronously. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:210 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#210 def initialize(opts = T.unsafe(nil), &block); end # Chain onto this promise an action to be undertaken on failure # (rejection). # # @return [Promise] self # @yield The block to execute # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:360 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#360 def catch(&block); end # Execute an `:unscheduled` `Promise`. Immediately sets the state to `:pending` and # passes the block to a new thread/thread pool for eventual execution. # Does nothing if the `Promise` is in any state other than `:unscheduled`. # # @return [Promise] a reference to `self` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:246 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#246 def execute; end # Set the `IVar` to failed due to some error and wake or notify all threads waiting on it. # # @param reason [Object] for the failure # @raise [Concurrent::MultipleAssignmentError] if the `IVar` has already # been set or otherwise completed # @raise [Concurrent::PromiseExecutionError] if not the root promise # @return [IVar] self # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:278 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#278 def fail(reason = T.unsafe(nil)); end # Yield the successful result to the block that returns a promise. If that # promise is also successful the result is the result of the yielded promise. # If either part fails the whole also fails. # # @example # Promise.execute { 1 }.flat_map { |v| Promise.execute { v + 2 } }.value! #=> 3 # @return [Promise] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:375 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#375 def flat_map(&block); end # Chain onto this promise an action to be undertaken on failure # (rejection). # # @return [Promise] self # @yield The block to execute # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:360 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#360 def on_error(&block); end # Chain onto this promise an action to be undertaken on success # (fulfillment). # # @raise [ArgumentError] # @return [Promise] self # @yield The block to execute # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:349 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#349 def on_success(&block); end # Chain onto this promise an action to be undertaken on failure # (rejection). # # @return [Promise] self # @yield The block to execute # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:360 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#360 def rescue(&block); end # Set the `IVar` to a value and wake or notify all threads waiting on it. # # @param value [Object] the value to store in the `IVar` @@ -6322,66 +6166,66 @@ # been set or otherwise completed # @raise [Concurrent::PromiseExecutionError] if not the root promise # @return [IVar] self # @yield A block operation to use for setting the value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:262 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#262 def set(value = T.unsafe(nil), &block); end # Chain a new promise off the current promise. # # @overload then # @overload then # @raise [ArgumentError] # @return [Promise] the new promise # @yield The block operation to be performed asynchronously. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:314 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#314 def then(*args, &block); end # Builds a promise that produces the result of self and others in an Array # and fails if any of them fails. # # @overload zip # @overload zip # @return [Promise<Array>] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:440 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#440 def zip(*others); end protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:551 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#551 def complete(success, value, reason); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:545 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#545 def notify_child(child); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:481 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#481 def ns_initialize(value, opts); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:533 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#533 def on_fulfill(result); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:539 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#539 def on_reject(reason); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:562 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#562 def realize(task); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:528 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#528 def root?; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:520 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#520 def set_pending; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:570 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#570 def set_state!(success, value, reason); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:576 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#576 def synchronized_set_state!(success, value, reason); end class << self # Aggregate a collection of zero or more promises under a composite promise, # execute the aggregated promises and collect them into a standard Ruby array, @@ -6403,22 +6247,22 @@ # # @param promises [Array] Zero or more promises to aggregate # @return [Promise] an unscheduled (not executed) promise that aggregates # the promises given as arguments # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:505 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#505 def aggregate(method, *promises); end # Aggregates a collection of promises and executes the `then` condition # if all aggregated promises succeed. Executes the `rescue` handler with # a `Concurrent::PromiseExecutionError` if any of the aggregated promises # fail. Upon execution will execute any of the aggregate promises that # were not already executed. # # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:464 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#464 def all?(*promises); end # Aggregates a collection of promises and executes the `then` condition # if any aggregated promises succeed. Executes the `rescue` handler with # a `Concurrent::PromiseExecutionError` if any of the aggregated promises @@ -6437,11 +6281,11 @@ # # @param promises [Array] Zero or more promises to aggregate # @return [Promise] an unscheduled (not executed) promise that aggregates # the promises given as arguments # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:475 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#475 def any?(*promises); end # Create a new `Promise` object with the given block, execute it, and return the # `:pending` object. # @@ -6454,11 +6298,11 @@ # @option opts # @param opts [Hash] a customizable set of options # @raise [ArgumentError] if no block is given # @return [Promise] the newly created `Promise` in the `:pending` state # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:296 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#296 def execute(opts = T.unsafe(nil), &block); end # Create a new `Promise` and fulfill it immediately. # # @option opts @@ -6467,11 +6311,11 @@ # @option opts # @param opts [Hash] a customizable set of options # @raise [ArgumentError] if no block is given # @return [Promise] the newly created `Promise` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:224 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#224 def fulfill(value, opts = T.unsafe(nil)); end # Create a new `Promise` and reject it immediately. # # @option opts @@ -6480,79 +6324,79 @@ # @option opts # @param opts [Hash] a customizable set of options # @raise [ArgumentError] if no block is given # @return [Promise] the newly created `Promise` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:237 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#237 def reject(reason, opts = T.unsafe(nil)); end # Builds a promise that produces the result of promises in an Array # and fails if any of them fails. # # @overload zip # @overload zip # @return [Promise<Array>] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:409 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#409 def zip(*promises); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promise.rb:11 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promise.rb#11 class Concurrent::PromiseExecutionError < ::StandardError; end # {include:file:docs-source/promises-main.md} # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:11 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#11 module Concurrent::Promises extend ::Concurrent::Promises::FactoryMethods::Configuration extend ::Concurrent::Promises::FactoryMethods end # @abstract # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2036 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2036 class Concurrent::Promises::AbstractAnyPromise < ::Concurrent::Promises::BlockedPromise; end # Common ancestor of {Event} and {Future} classes, many shared methods are defined here. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:511 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#511 class Concurrent::Promises::AbstractEventFuture < ::Concurrent::Synchronization::Object include ::Concurrent::Promises::InternalStates # @return [AbstractEventFuture] a new instance of AbstractEventFuture # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:520 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#520 def initialize(promise, default_executor); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:169 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#169 def __initialize_atomic_fields__; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:736 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#736 def add_callback_clear_delayed_node(node); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:731 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#731 def add_callback_notify_blocked(promise, index); end # For inspection. # # @return [Array<AbstractPromise>] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:700 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#700 def blocks; end # For inspection. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:708 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#708 def callbacks; end # Shortcut of {#chain_on} with default `:io` executor supplied. # # @return [Future] # @see #chain_on # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:594 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#594 def chain(*args, &task); end # Chains the task to be executed asynchronously on executor after it is resolved. # # @overload an_event.chain_on @@ -6564,19 +6408,19 @@ # @return [Future] # @yieldreturn will become result of the returned Future. # Its returned value becomes {Future#value} fulfilling it, # raised exception becomes {Future#reason} rejecting it. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:612 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#612 def chain_on(executor, *args, &task); end # Resolves the resolvable when receiver is resolved. # # @param resolvable [Resolvable] # @return [self] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:627 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#627 def chain_resolvable(resolvable); end # Returns default executor. # # @return [Executor] default executor @@ -6584,29 +6428,27 @@ # @see FactoryMethods#future_on # @see FactoryMethods#resolvable_future # @see FactoryMethods#any_fulfilled_future_on # @see similar # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:588 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#588 def default_executor; end # @return [String] Short string representation. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:617 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#617 def inspect; end - # @return [Object] The internal_state. - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:125 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#125 def internal_state; end # Shortcut of {#on_resolution_using} with default `:io` executor supplied. # # @return [self] # @see #on_resolution_using # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:635 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#635 def on_resolution(*args, &callback); end # Stores the callback to be executed synchronously on resolving thread after it is # resolved. # @@ -6615,11 +6457,11 @@ # @param args [Object] arguments which are passed to the task when it's executed. # (It might be prepended with other arguments, see the @yeild section). # @return [self] # @yieldreturn is forgotten. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:653 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#653 def on_resolution!(*args, &callback); end # Stores the callback to be executed asynchronously on executor after it is resolved. # # @overload an_event.on_resolution_using @@ -6629,70 +6471,70 @@ # @param args [Object] arguments which are passed to the task when it's executed. # (It might be prepended with other arguments, see the @yeild section). # @return [self] # @yieldreturn is forgotten. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:671 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#671 def on_resolution_using(executor, *args, &callback); end # Is it in pending state? # # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:547 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#547 def pending?; end # For inspection. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:714 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#714 def promise; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:686 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#686 def resolve_with(state, raise_on_reassign = T.unsafe(nil), reserved = T.unsafe(nil)); end # Is it in resolved state? # # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:553 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#553 def resolved?; end # Returns its state. # # @overload an_event.state # @overload a_future.state # @return [Symbol] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:541 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#541 def state; end # Resolves the resolvable when receiver is resolved. # # @param resolvable [Resolvable] # @return [self] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:627 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#627 def tangle(resolvable); end # @return [String] Short string representation. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:617 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#617 def to_s; end # Propagates touch. Requests all the delayed futures, which it depends on, to be # executed. This method is called by any other method requiring resolved state, like {#wait}. # # @return [self] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:560 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#560 def touch; end # For inspection. # # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:720 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#720 def touched?; end # Wait (block the Thread) until receiver is {#resolved?}. # Calls {Concurrent::AbstractEventFuture#touch}. # @@ -6700,16 +6542,16 @@ # Be careful it can deadlock. Try to chain instead. # @param timeout [Numeric] the maximum time in second to wait. # @return [self, true, false] self implies timeout was not used, true implies timeout was used # and it was resolved, false implies it was not resolved within timeout. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:576 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#576 def wait(timeout = T.unsafe(nil)); end # For inspection. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:726 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#726 def waiting_threads; end # Crates new object with same class with the executor set as its new default executor. # Any futures depending on it will use the new default executor. # @@ -6717,433 +6559,420 @@ # @raise [NotImplementedError] # @return [AbstractEventFuture] # @see Event#with_default_executor # @see Future#with_default_executor # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:681 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#681 def with_default_executor(executor); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:741 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#741 def with_hidden_resolvable; end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:748 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#748 def add_callback(method, *args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:801 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#801 def async_callback_on_resolution(state, executor, args, callback); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:785 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#785 def call_callback(method, state, args); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:789 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#789 def call_callbacks(state); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:761 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#761 def callback_clear_delayed_node(state, node); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:807 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#807 def callback_notify_blocked(state, promise, index); end - # Sets the internal_state to new_internal_state if the current internal_state is expected_internal_state - # - # @return [true, false] - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:137 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#137 def compare_and_set_internal_state(expected, value); end - # Set the internal_state. - # - # @return [Object] new_internal_state. - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:129 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#129 def internal_state=(value); end - # Set the internal_state to new_internal_state and return the old internal_state. - # - # @return [Object] old internal_state - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:133 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#133 def swap_internal_state(value); end - # Updates the internal_state using the block. - # - # @return [Object] new internal_state - # @yield [Object] Calculate a new internal_state using given (old) internal_state - # @yieldparam old [Object] internal_state - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:141 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#141 def update_internal_state(&block); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:766 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#766 def wait_until_resolved(timeout); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:797 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#797 def with_async(executor, *args, &block); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 def new(*args, &block); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1785 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1785 class Concurrent::Promises::AbstractFlatPromise < ::Concurrent::Promises::BlockedPromise # @return [AbstractFlatPromise] a new instance of AbstractFlatPromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1787 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1787 def initialize(delayed_because, blockers_count, event_or_future); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1797 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1797 def touch; end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1817 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1817 def add_delayed_of(future); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1809 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1809 def on_resolvable(resolved_future, index); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1813 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1813 def resolvable?(countdown, future, index); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1805 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1805 def touched?; end end # @abstract # @private # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1538 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1538 class Concurrent::Promises::AbstractPromise < ::Concurrent::Synchronization::Object include ::Concurrent::Promises::InternalStates # @return [AbstractPromise] a new instance of AbstractPromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1542 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1542 def initialize(future); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1553 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1553 def default_executor; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1570 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1570 def delayed_because; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1547 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1547 def event; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1547 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1547 def future; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1564 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1564 def inspect; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1557 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1557 def state; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1564 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1564 def to_s; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1561 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1561 def touch; end private # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1581 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1581 def evaluate_to(*args, block); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1576 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1576 def resolve_with(new_state, raise_on_reassign = T.unsafe(nil)); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 def new(*args, &block); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2073 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2073 class Concurrent::Promises::AnyFulfilledFuturePromise < ::Concurrent::Promises::AnyResolvedFuturePromise private # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2077 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2077 def resolvable?(countdown, future, index); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2039 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2039 class Concurrent::Promises::AnyResolvedEventPromise < ::Concurrent::Promises::AbstractAnyPromise # @return [AnyResolvedEventPromise] a new instance of AnyResolvedEventPromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2043 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2043 def initialize(delayed, blockers_count, default_executor); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2051 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2051 def on_resolvable(resolved_future, index); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2047 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2047 def resolvable?(countdown, future, index); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2056 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2056 class Concurrent::Promises::AnyResolvedFuturePromise < ::Concurrent::Promises::AbstractAnyPromise # @return [AnyResolvedFuturePromise] a new instance of AnyResolvedFuturePromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2060 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2060 def initialize(delayed, blockers_count, default_executor); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2068 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2068 def on_resolvable(resolved_future, index); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2064 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2064 def resolvable?(countdown, future, index); end end # @abstract # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1608 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1608 class Concurrent::Promises::BlockedPromise < ::Concurrent::Promises::InnerPromise # @return [BlockedPromise] a new instance of BlockedPromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1650 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1650 def initialize(delayed, blockers_count, future); end # for inspection only # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1672 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1672 def blocked_by; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1663 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1663 def delayed_because; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1656 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1656 def on_blocker_resolution(future, index); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1667 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1667 def touch; end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1680 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1680 def clear_and_propagate_touch(stack_or_element = T.unsafe(nil)); end # @raise [NotImplementedError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1699 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1699 def on_resolvable(resolved_future, index); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1695 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1695 def process_on_blocker_resolution(future, index); end # @return [true, false] if resolvable # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1691 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1691 def resolvable?(countdown, future, index); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1641 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1641 def add_delayed(delayed1, delayed2); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1634 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1634 def new_blocked_by(blockers, *args, &block); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1612 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1612 def new_blocked_by1(blocker, *args, &block); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1619 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1619 def new_blocked_by2(blocker1, blocker2, *args, &block); end + + private + + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 + def new(*args, &block); end end end # @abstract # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1705 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1705 class Concurrent::Promises::BlockedTaskPromise < ::Concurrent::Promises::BlockedPromise # @raise [ArgumentError] # @return [BlockedTaskPromise] a new instance of BlockedTaskPromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1706 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1706 def initialize(delayed, blockers_count, default_executor, executor, args, &task); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1714 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1714 def executor; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1755 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1755 class Concurrent::Promises::ChainPromise < ::Concurrent::Promises::BlockedTaskPromise private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1758 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1758 def on_resolvable(resolved_future, index); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2084 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2084 class Concurrent::Promises::DelayPromise < ::Concurrent::Promises::InnerPromise # @return [DelayPromise] a new instance of DelayPromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2086 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2086 def initialize(default_executor); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2097 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2097 def delayed_because; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2093 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2093 def touch; end end # Represents an event which will happen in future (will be resolved). The event is either # pending or resolved. It should be always resolved. Use {Future} to communicate rejections and # cancellation. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:815 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#815 class Concurrent::Promises::Event < ::Concurrent::Promises::AbstractEventFuture # Creates a new event or a future which will be resolved when receiver and other are. # Returns an event if receiver and other are events, otherwise returns a future. # If just one of the parties is Future then the result # of the returned future is equal to the result of the supplied future. If both are futures # then the result is as described in {FactoryMethods#zip_futures_on}. # # @return [Future, Event] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:828 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#828 def &(other); end # Creates a new event which will be resolved when the first of receiver, `event_or_future` # resolves. # # @return [Event] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:842 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#842 def any(event_or_future); end # Creates new event dependent on receiver which will not evaluate until touched, see {#touch}. # In other words, it inserts delay into the chain of Futures making rest of it lazy evaluated. # # @return [Event] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:852 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#852 def delay; end # Creates new event dependent on receiver scheduled to execute on/in intended_time. # In time is interpreted from the moment the receiver is resolved, therefore it inserts # delay into the chain. # # @param intended_time [Numeric, Time] `Numeric` means to run in `intended_time` seconds. # `Time` means to run on `intended_time`. # @return [Event] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:864 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#864 def schedule(intended_time); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:594 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#594 def then(*args, &task); end # Returns self, since this is event # # @return [Event] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:882 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#882 def to_event; end # Converts event to a future. The future is fulfilled when the event is resolved, the future may never fail. # # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:874 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#874 def to_future; end # Crates new object with same class with the executor set as its new default executor. # Any futures depending on it will use the new default executor. # # @return [Event] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:888 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#888 def with_default_executor(executor); end # Creates a new event or a future which will be resolved when receiver and other are. # Returns an event if receiver and other are events, otherwise returns a future. # If just one of the parties is Future then the result # of the returned future is equal to the result of the supplied future. If both are futures # then the result is as described in {FactoryMethods#zip_futures_on}. # # @return [Future, Event] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:828 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#828 def zip(other); end # Creates a new event which will be resolved when the first of receiver, `event_or_future` # resolves. # # @return [Event] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:842 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#842 def |(event_or_future); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:899 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#899 def callback_on_resolution(state, args, callback); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:894 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#894 def rejected_resolution(raise_on_reassign, state); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1961 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1961 class Concurrent::Promises::EventWrapperPromise < ::Concurrent::Promises::BlockedPromise # @return [EventWrapperPromise] a new instance of EventWrapperPromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1962 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1962 def initialize(delayed, blockers_count, default_executor); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1968 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1968 def on_resolvable(resolved_future, index); end end # Container of all {Future}, {Event} factory methods. They are never constructed directly with # new. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:44 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#44 module Concurrent::Promises::FactoryMethods include ::Concurrent::Promises::FactoryMethods::Configuration extend ::Concurrent::ReInclude - extend ::Concurrent::Promises::FactoryMethods extend ::Concurrent::Promises::FactoryMethods::Configuration + extend ::Concurrent::Promises::FactoryMethods # Shortcut of {#any_resolved_future_on} with default `:io` executor supplied. # # @return [Future] # @see #any_resolved_future_on # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:276 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#276 def any(*futures_and_or_events); end # Shortcut of {#any_event_on} with default `:io` executor supplied. # # @return [Future] # @see #any_event_on # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:317 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#317 def any_event(*futures_and_or_events); end # Creates new event which becomes resolved after first of the futures_and_or_events resolves. # If resolved it does not propagate {Concurrent::AbstractEventFuture#touch}, leaving delayed # futures un-executed if they are not required any more. @@ -7152,19 +6981,19 @@ # global executor. Default executor propagates to chained futures unless overridden with # executor parameter or changed with {AbstractEventFuture#with_default_executor}. # @param futures_and_or_events [AbstractEventFuture] # @return [Event] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:327 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#327 def any_event_on(default_executor, *futures_and_or_events); end # Shortcut of {#any_fulfilled_future_on} with default `:io` executor supplied. # # @return [Future] # @see #any_fulfilled_future_on # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:298 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#298 def any_fulfilled_future(*futures_and_or_events); end # Creates new future which is resolved after first of futures_and_or_events is fulfilled. # Its result equals result of the first resolved future or if all futures_and_or_events reject, # it has reason of the last resolved future. @@ -7177,19 +7006,19 @@ # global executor. Default executor propagates to chained futures unless overridden with # executor parameter or changed with {AbstractEventFuture#with_default_executor}. # @param futures_and_or_events [AbstractEventFuture] # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:311 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#311 def any_fulfilled_future_on(default_executor, *futures_and_or_events); end # Shortcut of {#any_resolved_future_on} with default `:io` executor supplied. # # @return [Future] # @see #any_resolved_future_on # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:276 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#276 def any_resolved_future(*futures_and_or_events); end # Creates new future which is resolved after first futures_and_or_events is resolved. # Its result equals result of the first resolved future. # If resolved it does not propagate {Concurrent::AbstractEventFuture#touch}, leaving delayed @@ -7201,19 +7030,19 @@ # global executor. Default executor propagates to chained futures unless overridden with # executor parameter or changed with {AbstractEventFuture#with_default_executor}. # @param futures_and_or_events [AbstractEventFuture] # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:292 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#292 def any_resolved_future_on(default_executor, *futures_and_or_events); end # Shortcut of {#delay_on} with default `:io` executor supplied. # # @return [Future, Event] # @see #delay_on # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:188 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#188 def delay(*args, &task); end # Creates new event or future which is resolved only after it is touched, # see {Concurrent::AbstractEventFuture#touch}. # @@ -7221,30 +7050,30 @@ # @overload delay_on # @param default_executor [Executor, :io, :fast] Instance of an executor or a name of the # global executor. Default executor propagates to chained futures unless overridden with # executor parameter or changed with {AbstractEventFuture#with_default_executor}. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:205 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#205 def delay_on(default_executor, *args, &task); end # Creates resolved future with will be fulfilled with the given value. # # @param default_executor [Executor, :io, :fast] Instance of an executor or a name of the # global executor. Default executor propagates to chained futures unless overridden with # executor parameter or changed with {AbstractEventFuture#with_default_executor}. # @param value [Object] # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:125 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#125 def fulfilled_future(value, default_executor = T.unsafe(nil)); end # Shortcut of {#future_on} with default `:io` executor supplied. # # @return [Future] # @see #future_on # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:92 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#92 def future(*args, &task); end # Constructs new Future which will be resolved after block is evaluated on default executor. # Evaluation begins immediately. # @@ -7257,11 +7086,11 @@ # @yield [*args] to the task. # @yieldreturn will become result of the returned Future. # Its returned value becomes {Future#value} fulfilling it, # raised exception becomes {Future#reason} rejecting it. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:104 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#104 def future_on(default_executor, *args, &task); end # General constructor. Behaves differently based on the argument's type. It's provided for convenience # but it's better to be explicit. # @@ -7274,49 +7103,49 @@ # global executor. Default executor propagates to chained futures unless overridden with # executor parameter or changed with {AbstractEventFuture#with_default_executor}. # @return [Event, Future] # @see rejected_future, resolved_event, fulfilled_future # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:172 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#172 def make_future(argument = T.unsafe(nil), default_executor = T.unsafe(nil)); end # Creates resolved future with will be rejected with the given reason. # # @param default_executor [Executor, :io, :fast] Instance of an executor or a name of the # global executor. Default executor propagates to chained futures unless overridden with # executor parameter or changed with {AbstractEventFuture#with_default_executor}. # @param reason [Object] # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:134 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#134 def rejected_future(reason, default_executor = T.unsafe(nil)); end # Shortcut of {#resolvable_event_on} with default `:io` executor supplied. # # @return [ResolvableEvent] # @see #resolvable_event_on # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:61 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#61 def resolvable_event; end # Created resolvable event, user is responsible for resolving the event once by # {Promises::ResolvableEvent#resolve}. # # @param default_executor [Executor, :io, :fast] Instance of an executor or a name of the # global executor. Default executor propagates to chained futures unless overridden with # executor parameter or changed with {AbstractEventFuture#with_default_executor}. # @return [ResolvableEvent] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:70 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#70 def resolvable_event_on(default_executor = T.unsafe(nil)); end # Shortcut of {#resolvable_future_on} with default `:io` executor supplied. # # @return [ResolvableFuture] # @see #resolvable_future_on # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:76 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#76 def resolvable_future; end # Creates resolvable future, user is responsible for resolving the future once by # {Promises::ResolvableFuture#resolve}, {Promises::ResolvableFuture#fulfill}, # or {Promises::ResolvableFuture#reject} @@ -7324,21 +7153,21 @@ # @param default_executor [Executor, :io, :fast] Instance of an executor or a name of the # global executor. Default executor propagates to chained futures unless overridden with # executor parameter or changed with {AbstractEventFuture#with_default_executor}. # @return [ResolvableFuture] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:86 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#86 def resolvable_future_on(default_executor = T.unsafe(nil)); end # Creates resolved event. # # @param default_executor [Executor, :io, :fast] Instance of an executor or a name of the # global executor. Default executor propagates to chained futures unless overridden with # executor parameter or changed with {AbstractEventFuture#with_default_executor}. # @return [Event] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:142 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#142 def resolved_event(default_executor = T.unsafe(nil)); end # Creates resolved future with will be either fulfilled with the given value or rejection with # the given reason. # @@ -7348,19 +7177,19 @@ # @param default_executor [Executor, :io, :fast] Instance of an executor or a name of the # global executor. Default executor propagates to chained futures unless overridden with # executor parameter or changed with {AbstractEventFuture#with_default_executor}. # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:116 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#116 def resolved_future(fulfilled, value, reason, default_executor = T.unsafe(nil)); end # Shortcut of {#schedule_on} with default `:io` executor supplied. # # @return [Future, Event] # @see #schedule_on # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:212 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#212 def schedule(intended_time, *args, &task); end # Creates new event or future which is resolved in intended_time. # # @overload schedule_on @@ -7369,27 +7198,27 @@ # global executor. Default executor propagates to chained futures unless overridden with # executor parameter or changed with {AbstractEventFuture#with_default_executor}. # @param intended_time [Numeric, Time] `Numeric` means to run in `intended_time` seconds. # `Time` means to run on `intended_time`. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:231 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#231 def schedule_on(default_executor, intended_time, *args, &task); end # Shortcut of {#zip_futures_on} with default `:io` executor supplied. # # @return [Future] # @see #zip_futures_on # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:238 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#238 def zip(*futures_and_or_events); end # Shortcut of {#zip_events_on} with default `:io` executor supplied. # # @return [Event] # @see #zip_events_on # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:260 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#260 def zip_events(*futures_and_or_events); end # Creates new event which is resolved after all futures_and_or_events are resolved. # (Future is resolved when fulfilled or rejected.) # @@ -7397,19 +7226,19 @@ # global executor. Default executor propagates to chained futures unless overridden with # executor parameter or changed with {AbstractEventFuture#with_default_executor}. # @param futures_and_or_events [AbstractEventFuture] # @return [Event] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:270 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#270 def zip_events_on(default_executor, *futures_and_or_events); end # Shortcut of {#zip_futures_on} with default `:io` executor supplied. # # @return [Future] # @see #zip_futures_on # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:238 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#238 def zip_futures(*futures_and_or_events); end # Creates new future which is resolved after all futures_and_or_events are resolved. # Its value is array of zipped future values. Its reason is array of reasons for rejection. # If there is an error it rejects. @@ -7420,85 +7249,85 @@ # global executor. Default executor propagates to chained futures unless overridden with # executor parameter or changed with {AbstractEventFuture#with_default_executor}. # @param futures_and_or_events [AbstractEventFuture] # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:252 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#252 def zip_futures_on(default_executor, *futures_and_or_events); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:48 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#48 module Concurrent::Promises::FactoryMethods::Configuration # @return [Executor, :io, :fast] the executor which is used when none is supplied # to a factory method. The method can be overridden in the receivers of # `include FactoryMethod` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:52 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#52 def default_executor; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1829 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1829 class Concurrent::Promises::FlatEventPromise < ::Concurrent::Promises::AbstractFlatPromise # @return [FlatEventPromise] a new instance of FlatEventPromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1833 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1833 def initialize(delayed, blockers_count, default_executor); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1837 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1837 def process_on_blocker_resolution(future, index); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1862 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1862 class Concurrent::Promises::FlatFuturePromise < ::Concurrent::Promises::AbstractFlatPromise # @raise [ArgumentError] # @return [FlatFuturePromise] a new instance of FlatFuturePromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1866 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1866 def initialize(delayed, blockers_count, levels, default_executor); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1873 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1873 def process_on_blocker_resolution(future, index); end end # Represents a value which will become available in future. May reject with a reason instead, # e.g. when the tasks raises an exception. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:906 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#906 class Concurrent::Promises::Future < ::Concurrent::Promises::AbstractEventFuture # Creates a new event or a future which will be resolved when receiver and other are. # Returns an event if receiver and other are events, otherwise returns a future. # If just one of the parties is Future then the result # of the returned future is equal to the result of the supplied future. If both are futures # then the result is as described in {FactoryMethods#zip_futures_on}. # # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1059 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1059 def &(other); end # Creates a new event which will be resolved when the first of receiver, `event_or_future` # resolves. Returning future will have value nil if event_or_future is event and resolves # first. # # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1074 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1074 def any(event_or_future); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1204 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1204 def apply(args, block); end # Creates new future dependent on receiver which will not evaluate until touched, see {#touch}. # In other words, it inserts delay into the chain of Futures making rest of it lazy evaluated. # # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1084 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1084 def delay; end # Allows rejected Future to be risen with `raise` method. # If the reason is not an exception `Runtime.new(reason)` is returned. # @@ -7506,57 +7335,57 @@ # raise Promises.rejected_future(StandardError.new("boom")) # raise Promises.rejected_future("or just boom") # @raise [Concurrent::Error] when raising not rejected future # @return [Exception] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1002 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1002 def exception(*args); end # Creates new future which will have result of the future returned by receiver. If receiver # rejects it will have its rejection. # # @param level [Integer] how many levels of futures should flatten # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1109 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1109 def flat(level = T.unsafe(nil)); end # Creates new event which will be resolved when the returned event by receiver is. # Be careful if the receiver rejects it will just resolve since Event does not hold reason. # # @return [Event] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1119 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1119 def flat_event; end # Creates new future which will have result of the future returned by receiver. If receiver # rejects it will have its rejection. # # @param level [Integer] how many levels of futures should flatten # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1109 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1109 def flat_future(level = T.unsafe(nil)); end # Is it in fulfilled state? # # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:910 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#910 def fulfilled?; end # @return [String] Short string representation. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1224 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1224 def inspect; end # Shortcut of {#on_fulfillment_using} with default `:io` executor supplied. # # @return [self] # @see #on_fulfillment_using # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1125 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1125 def on_fulfillment(*args, &callback); end # Stores the callback to be executed synchronously on resolving thread after it is # fulfilled. Does nothing on rejection. # @@ -7564,11 +7393,11 @@ # (It might be prepended with other arguments, see the @yeild section). # @return [self] # @yield [value, *args] to the callback. # @yieldreturn is forgotten. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1136 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1136 def on_fulfillment!(*args, &callback); end # Stores the callback to be executed asynchronously on executor after it is # fulfilled. Does nothing on rejection. # @@ -7578,19 +7407,19 @@ # (It might be prepended with other arguments, see the @yeild section). # @return [self] # @yield [value, *args] to the callback. # @yieldreturn is forgotten. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1148 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1148 def on_fulfillment_using(executor, *args, &callback); end # Shortcut of {#on_rejection_using} with default `:io` executor supplied. # # @return [self] # @see #on_rejection_using # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1154 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1154 def on_rejection(*args, &callback); end # Stores the callback to be executed synchronously on resolving thread after it is # rejected. Does nothing on fulfillment. # @@ -7598,11 +7427,11 @@ # (It might be prepended with other arguments, see the @yeild section). # @return [self] # @yield [reason, *args] to the callback. # @yieldreturn is forgotten. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1165 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1165 def on_rejection!(*args, &callback); end # Stores the callback to be executed asynchronously on executor after it is # rejected. Does nothing on fulfillment. # @@ -7612,11 +7441,11 @@ # (It might be prepended with other arguments, see the @yeild section). # @return [self] # @yield [reason, *args] to the callback. # @yieldreturn is forgotten. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1177 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1177 def on_rejection_using(executor, *args, &callback); end # Returns reason of future's rejection. # Calls {Concurrent::AbstractEventFuture#touch}. # @@ -7627,26 +7456,26 @@ # Use more exact methods if needed, like {#wait}, {#value!}, {#result}, etc. # @param timeout [Numeric] the maximum time in second to wait. # @param timeout_value [Object] a value returned by the method when it times out # @return [Object, timeout_value] the reason, or timeout_value on timeout, or nil on fulfillment. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:955 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#955 def reason(timeout = T.unsafe(nil), timeout_value = T.unsafe(nil)); end # Is it in rejected state? # # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:917 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#917 def rejected?; end # Shortcut of {#rescue_on} with default `:io` executor supplied. # # @return [Future] # @see #rescue_on # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1041 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1041 def rescue(*args, &task); end # Chains the task to be executed asynchronously on executor after it rejects. Does not run # the task if it fulfills. It will resolve though, triggering any dependent futures. # @@ -7658,11 +7487,11 @@ # @yield [reason, *args] to the task. # @yieldreturn will become result of the returned Future. # Its returned value becomes {Future#value} fulfilling it, # raised exception becomes {Future#reason} rejecting it. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1053 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1053 def rescue_on(executor, *args, &task); end # Returns triplet fulfilled?, value, reason. # Calls {Concurrent::AbstractEventFuture#touch}. # @@ -7670,11 +7499,11 @@ # Be careful it can deadlock. Try to chain instead. # @param timeout [Numeric] the maximum time in second to wait. # @return [Array(Boolean, Object, Object), nil] triplet of fulfilled?, value, reason, or nil # on timeout. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:970 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#970 def result(timeout = T.unsafe(nil)); end # Allows to use futures as green threads. The receiver has to evaluate to a future which # represents what should be done next. It basically flattens indefinitely until non Future # values is returned which becomes result of the returned future. Any encountered exception @@ -7691,30 +7520,30 @@ # The run_test can be used to extract the Future from deeper structure, # or to distinguish Future which is a resulting value from a future # which is suppose to continue running. # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1199 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1199 def run(run_test = T.unsafe(nil)); end # Creates new event dependent on receiver scheduled to execute on/in intended_time. # In time is interpreted from the moment the receiver is resolved, therefore it inserts # delay into the chain. # # @param intended_time [Numeric, Time] `Numeric` means to run in `intended_time` seconds. # `Time` means to run on `intended_time`. # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1091 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1091 def schedule(intended_time); end # Shortcut of {#then_on} with default `:io` executor supplied. # # @return [Future] # @see #then_on # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1023 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1023 def then(*args, &task); end # Chains the task to be executed asynchronously on executor after it fulfills. Does not run # the task if it rejects. It will resolve though, triggering any dependent futures. # @@ -7726,30 +7555,30 @@ # @yield [value, *args] to the task. # @yieldreturn will become result of the returned Future. # Its returned value becomes {Future#value} fulfilling it, # raised exception becomes {Future#reason} rejecting it. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1035 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1035 def then_on(executor, *args, &task); end # Converts future to event which is resolved when future is resolved by fulfillment or rejection. # # @return [Event] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1211 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1211 def to_event; end # Returns self, since this is a future # # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1219 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1219 def to_future; end # @return [String] Short string representation. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1224 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1224 def to_s; end # Return value of the future. # Calls {Concurrent::AbstractEventFuture#touch}. # @@ -7762,11 +7591,11 @@ # @param timeout_value [Object] a value returned by the method when it times out # @return [Object, nil, timeout_value] the value of the Future when fulfilled, # timeout_value on timeout, # nil on rejection. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:939 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#939 def value(timeout = T.unsafe(nil), timeout_value = T.unsafe(nil)); end # Return value of the future. # Calls {Concurrent::AbstractEventFuture#touch}. # @@ -7780,11 +7609,11 @@ # @raise [Exception] {#reason} on rejection # @return [Object, nil, timeout_value] the value of the Future when fulfilled, # or nil on rejection, # or timeout_value on timeout. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:986 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#986 def value!(timeout = T.unsafe(nil), timeout_value = T.unsafe(nil)); end # Wait (block the Thread) until receiver is {#resolved?}. # Calls {Concurrent::AbstractEventFuture#touch}. # @@ -7793,285 +7622,285 @@ # @param timeout [Numeric] the maximum time in second to wait. # @raise [Exception] {#reason} on rejection # @return [self, true, false] self implies timeout was not used, true implies timeout was used # and it was resolved, false implies it was not resolved within timeout. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:976 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#976 def wait!(timeout = T.unsafe(nil)); end # Crates new object with same class with the executor set as its new default executor. # Any futures depending on it will use the new default executor. # # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1100 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1100 def with_default_executor(executor); end # Creates a new event or a future which will be resolved when receiver and other are. # Returns an event if receiver and other are events, otherwise returns a future. # If just one of the parties is Future then the result # of the returned future is equal to the result of the supplied future. If both are futures # then the result is as described in {FactoryMethods#zip_futures_on}. # # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1059 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1059 def zip(other); end # Creates a new event which will be resolved when the first of receiver, `event_or_future` # resolves. Returning future will have value nil if event_or_future is event and resolves # first. # # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1074 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1074 def |(event_or_future); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1261 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1261 def async_callback_on_fulfillment(state, executor, args, callback); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1267 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1267 def async_callback_on_rejection(state, executor, args, callback); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1273 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1273 def callback_on_fulfillment(state, args, callback); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1277 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1277 def callback_on_rejection(state, args, callback); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1281 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1281 def callback_on_resolution(state, args, callback); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1240 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1240 def rejected_resolution(raise_on_reassign, state); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1236 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1236 def run_test(v); end # @raise [self] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1255 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1255 def wait_until_resolved!(timeout = T.unsafe(nil)); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1973 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1973 class Concurrent::Promises::FutureWrapperPromise < ::Concurrent::Promises::BlockedPromise # @return [FutureWrapperPromise] a new instance of FutureWrapperPromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1974 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1974 def initialize(delayed, blockers_count, default_executor); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1980 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1980 def on_resolvable(resolved_future, index); end end # will be immediately resolved # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1772 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1772 class Concurrent::Promises::ImmediateEventPromise < ::Concurrent::Promises::InnerPromise # @return [ImmediateEventPromise] a new instance of ImmediateEventPromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1773 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1773 def initialize(default_executor); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1778 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1778 class Concurrent::Promises::ImmediateFuturePromise < ::Concurrent::Promises::InnerPromise # @return [ImmediateFuturePromise] a new instance of ImmediateFuturePromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1779 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1779 def initialize(default_executor, fulfilled, value, reason); end end # @abstract # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1604 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1604 class Concurrent::Promises::InnerPromise < ::Concurrent::Promises::AbstractPromise; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:336 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#336 module Concurrent::Promises::InternalStates; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:395 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#395 class Concurrent::Promises::InternalStates::Fulfilled < ::Concurrent::Promises::InternalStates::ResolvedWithResult # @return [Fulfilled] a new instance of Fulfilled # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:397 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#397 def initialize(value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:405 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#405 def apply(args, block); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:401 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#401 def fulfilled?; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:413 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#413 def reason; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:417 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#417 def to_sym; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:409 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#409 def value; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:423 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#423 class Concurrent::Promises::InternalStates::FulfilledArray < ::Concurrent::Promises::InternalStates::Fulfilled - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:424 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#424 def apply(args, block); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:486 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#486 Concurrent::Promises::InternalStates::PENDING = T.let(T.unsafe(nil), Concurrent::Promises::InternalStates::Pending) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:457 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#457 class Concurrent::Promises::InternalStates::PartiallyRejected < ::Concurrent::Promises::InternalStates::ResolvedWithResult # @return [PartiallyRejected] a new instance of PartiallyRejected # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:458 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#458 def initialize(value, reason); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:480 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#480 def apply(args, block); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:464 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#464 def fulfilled?; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:476 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#476 def reason; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:468 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#468 def to_sym; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:472 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#472 def value; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:349 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#349 class Concurrent::Promises::InternalStates::Pending < ::Concurrent::Promises::InternalStates::State # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:350 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#350 def resolved?; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:354 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#354 def to_sym; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:488 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#488 Concurrent::Promises::InternalStates::RESERVED = T.let(T.unsafe(nil), Concurrent::Promises::InternalStates::Reserved) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:490 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#490 Concurrent::Promises::InternalStates::RESOLVED = T.let(T.unsafe(nil), Concurrent::Promises::InternalStates::Fulfilled) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:430 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#430 class Concurrent::Promises::InternalStates::Rejected < ::Concurrent::Promises::InternalStates::ResolvedWithResult # @return [Rejected] a new instance of Rejected # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:431 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#431 def initialize(reason); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:451 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#451 def apply(args, block); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:435 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#435 def fulfilled?; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:443 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#443 def reason; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:447 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#447 def to_sym; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:439 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#439 def value; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:360 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#360 class Concurrent::Promises::InternalStates::Reserved < ::Concurrent::Promises::InternalStates::Pending; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:364 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#364 class Concurrent::Promises::InternalStates::ResolvedWithResult < ::Concurrent::Promises::InternalStates::State # @raise [NotImplementedError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:389 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#389 def apply; end # @raise [NotImplementedError] # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:377 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#377 def fulfilled?; end # @raise [NotImplementedError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:385 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#385 def reason; end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:365 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#365 def resolved?; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:373 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#373 def result; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:369 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#369 def to_sym; end # @raise [NotImplementedError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:381 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#381 def value; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:338 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#338 class Concurrent::Promises::InternalStates::State # @raise [NotImplementedError] # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:339 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#339 def resolved?; end # @raise [NotImplementedError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:343 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#343 def to_sym; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1737 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1737 class Concurrent::Promises::RescuePromise < ::Concurrent::Promises::BlockedTaskPromise # @return [RescuePromise] a new instance of RescuePromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1740 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1740 def initialize(delayed, blockers_count, default_executor, executor, args, &task); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1744 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1744 def on_resolvable(resolved_future, index); end end # Marker module of Future, Event resolved manually. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1288 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1288 module Concurrent::Promises::Resolvable include ::Concurrent::Promises::InternalStates end # A Event which can be resolved by user. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1293 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1293 class Concurrent::Promises::ResolvableEvent < ::Concurrent::Promises::Event include ::Concurrent::Promises::Resolvable # Makes the event resolved, which triggers all dependent futures. # @@ -8080,64 +7909,64 @@ # marks resolution of reserved resolvable events and futures explicitly. # Advanced feature, ignore unless you use {Resolvable#reserve} from edge. # @return [self, false] false is returner when raise_on_reassign is false and the receiver # is already resolved. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1313 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1313 def resolve(raise_on_reassign = T.unsafe(nil), reserved = T.unsafe(nil)); end # Behaves as {AbstractEventFuture#wait} but has one additional optional argument # resolve_on_timeout. # # @param resolve_on_timeout [true, false] If it times out and the argument is true it will also resolve the event. # @return [self, true, false] # @see AbstractEventFuture#wait # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1331 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1331 def wait(timeout = T.unsafe(nil), resolve_on_timeout = T.unsafe(nil)); end # Creates new event wrapping receiver, effectively hiding the resolve method. # # @return [Event] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1320 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1320 def with_hidden_resolvable; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1589 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1589 class Concurrent::Promises::ResolvableEventPromise < ::Concurrent::Promises::AbstractPromise # @return [ResolvableEventPromise] a new instance of ResolvableEventPromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1590 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1590 def initialize(default_executor); end end # A Future which can be resolved by user. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1343 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1343 class Concurrent::Promises::ResolvableFuture < ::Concurrent::Promises::Future include ::Concurrent::Promises::Resolvable # Evaluates the block and sets its result as future's value fulfilling, if the block raises # an exception the future rejects with it. # # @return [self] # @yield [*args] to the block. # @yieldreturn [Object] value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1384 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1384 def evaluate_to(*args, &block); end # Evaluates the block and sets its result as future's value fulfilling, if the block raises # an exception the future rejects with it. # # @raise [Exception] also raise reason on rejection. # @return [self] # @yield [*args] to the block. # @yieldreturn [Object] value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1395 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1395 def evaluate_to!(*args, &block); end # Makes the future fulfilled with `value`, # which triggers all dependent futures. # @@ -8147,22 +7976,22 @@ # marks resolution of reserved resolvable events and futures explicitly. # Advanced feature, ignore unless you use {Resolvable#reserve} from edge. # @return [self, false] false is returner when raise_on_reassign is false and the receiver # is already resolved. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1364 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1364 def fulfill(value, raise_on_reassign = T.unsafe(nil), reserved = T.unsafe(nil)); end # Behaves as {Future#reason} but has one additional optional argument # resolve_on_timeout. # # @param resolve_on_timeout [::Array(true, Object, nil), ::Array(false, nil, Exception), nil] If it times out and the argument is not nil it will also resolve the future # to the provided resolution. # @return [Exception, timeout_value, nil] # @see Future#reason # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1492 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1492 def reason(timeout = T.unsafe(nil), timeout_value = T.unsafe(nil), resolve_on_timeout = T.unsafe(nil)); end # Makes the future rejected with `reason`, # which triggers all dependent futures. # @@ -8172,11 +8001,11 @@ # marks resolution of reserved resolvable events and futures explicitly. # Advanced feature, ignore unless you use {Resolvable#reserve} from edge. # @return [self, false] false is returner when raise_on_reassign is false and the receiver # is already resolved. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1374 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1374 def reject(reason, raise_on_reassign = T.unsafe(nil), reserved = T.unsafe(nil)); end # Makes the future resolved with result of triplet `fulfilled?`, `value`, `reason`, # which triggers all dependent futures. # @@ -8188,33 +8017,33 @@ # marks resolution of reserved resolvable events and futures explicitly. # Advanced feature, ignore unless you use {Resolvable#reserve} from edge. # @return [self, false] false is returner when raise_on_reassign is false and the receiver # is already resolved. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1354 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1354 def resolve(fulfilled = T.unsafe(nil), value = T.unsafe(nil), reason = T.unsafe(nil), raise_on_reassign = T.unsafe(nil), reserved = T.unsafe(nil)); end # Behaves as {Future#result} but has one additional optional argument # resolve_on_timeout. # # @param resolve_on_timeout [::Array(true, Object, nil), ::Array(false, nil, Exception), nil] If it times out and the argument is not nil it will also resolve the future # to the provided resolution. # @return [::Array(Boolean, Object, Exception), nil] # @see Future#result # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1513 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1513 def result(timeout = T.unsafe(nil), resolve_on_timeout = T.unsafe(nil)); end # Behaves as {Future#value} but has one additional optional argument # resolve_on_timeout. # # @param resolve_on_timeout [::Array(true, Object, nil), ::Array(false, nil, Exception), nil] If it times out and the argument is not nil it will also resolve the future # to the provided resolution. # @return [Object, timeout_value, nil] # @see Future#value # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1448 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1448 def value(timeout = T.unsafe(nil), timeout_value = T.unsafe(nil), resolve_on_timeout = T.unsafe(nil)); end # Behaves as {Future#value!} but has one additional optional argument # resolve_on_timeout. # @@ -8222,22 +8051,22 @@ # to the provided resolution. # @raise [Exception] {#reason} on rejection # @return [Object, timeout_value, nil] # @see Future#value! # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1470 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1470 def value!(timeout = T.unsafe(nil), timeout_value = T.unsafe(nil), resolve_on_timeout = T.unsafe(nil)); end # Behaves as {AbstractEventFuture#wait} but has one additional optional argument # resolve_on_timeout. # # @param resolve_on_timeout [::Array(true, Object, nil), ::Array(false, nil, Exception), nil] If it times out and the argument is not nil it will also resolve the future # to the provided resolution. # @return [self, true, false] # @see AbstractEventFuture#wait # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1410 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1410 def wait(timeout = T.unsafe(nil), resolve_on_timeout = T.unsafe(nil)); end # Behaves as {Future#wait!} but has one additional optional argument # resolve_on_timeout. # @@ -8245,124 +8074,127 @@ # to the provided resolution. # @raise [Exception] {#reason} on rejection # @return [self, true, false] # @see Future#wait! # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1427 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1427 def wait!(timeout = T.unsafe(nil), resolve_on_timeout = T.unsafe(nil)); end # Creates new future wrapping receiver, effectively hiding the resolve method and similar. # # @return [Future] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1531 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1531 def with_hidden_resolvable; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1595 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1595 class Concurrent::Promises::ResolvableFuturePromise < ::Concurrent::Promises::AbstractPromise # @return [ResolvableFuturePromise] a new instance of ResolvableFuturePromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1596 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1596 def initialize(default_executor); end + + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1581 + def evaluate_to(*args, block); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1898 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1898 class Concurrent::Promises::RunFuturePromise < ::Concurrent::Promises::AbstractFlatPromise # @return [RunFuturePromise] a new instance of RunFuturePromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1902 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1902 def initialize(delayed, blockers_count, default_executor, run_test); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1907 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1907 def process_on_blocker_resolution(future, index); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2103 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2103 class Concurrent::Promises::ScheduledPromise < ::Concurrent::Promises::InnerPromise # @return [ScheduledPromise] a new instance of ScheduledPromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2114 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2114 def initialize(default_executor, intended_time); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2108 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2108 def inspect; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2104 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2104 def intended_time; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1719 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1719 class Concurrent::Promises::ThenPromise < ::Concurrent::Promises::BlockedTaskPromise # @return [ThenPromise] a new instance of ThenPromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1722 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1722 def initialize(delayed, blockers_count, default_executor, executor, args, &task); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1726 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1726 def on_resolvable(resolved_future, index); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1929 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1929 class Concurrent::Promises::ZipEventEventPromise < ::Concurrent::Promises::BlockedPromise # @return [ZipEventEventPromise] a new instance of ZipEventEventPromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1930 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1930 def initialize(delayed, blockers_count, default_executor); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1936 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1936 def on_resolvable(resolved_future, index); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2020 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2020 class Concurrent::Promises::ZipEventsPromise < ::Concurrent::Promises::BlockedPromise # @return [ZipEventsPromise] a new instance of ZipEventsPromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2024 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2024 def initialize(delayed, blockers_count, default_executor); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2030 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2030 def on_resolvable(resolved_future, index); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1941 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1941 class Concurrent::Promises::ZipFutureEventPromise < ::Concurrent::Promises::BlockedPromise # @return [ZipFutureEventPromise] a new instance of ZipFutureEventPromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1942 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1942 def initialize(delayed, blockers_count, default_executor); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1956 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1956 def on_resolvable(resolved_future, index); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1949 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1949 def process_on_blocker_resolution(future, index); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1985 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1985 class Concurrent::Promises::ZipFuturesPromise < ::Concurrent::Promises::BlockedPromise # @return [ZipFuturesPromise] a new instance of ZipFuturesPromise # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1989 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1989 def initialize(delayed, blockers_count, default_executor); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:2002 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#2002 def on_resolvable(resolved_future, index); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/promises.rb:1996 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/promises.rb#1996 def process_on_blocker_resolution(future, index); end end # Methods form module A included to a module B, which is already included into class C, # will not be visible in the C class. If this module is extended to B then A's methods @@ -8394,19 +8226,19 @@ # B2.send :include, A # # C1.new.respond_to? :a # => false # C2.new.respond_to? :a # => true # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/re_include.rb:34 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/re_include.rb#34 module Concurrent::ReInclude - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/re_include.rb:42 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/re_include.rb#42 def extended(base); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/re_include.rb:48 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/re_include.rb#48 def include(*modules); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/re_include.rb:36 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/re_include.rb#36 def included(base); end end # Ruby read-write lock implementation # @@ -8427,137 +8259,137 @@ # @note Do **not** try to acquire the write lock while already holding a read lock # **or** try to acquire the write lock while you already have it. # This will lead to deadlock # @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/locks/ReentrantReadWriteLock.html java.util.concurrent.ReentrantReadWriteLock # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:30 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#30 class Concurrent::ReadWriteLock < ::Concurrent::Synchronization::Object # Create a new `ReadWriteLock` in the unlocked state. # # @return [ReadWriteLock] a new instance of ReadWriteLock # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#58 def initialize; end # Acquire a read lock. If a write lock has been acquired will block until # it is released. Will not block if other read locks have been acquired. # # @raise [Concurrent::ResourceLimitError] if the maximum number of readers # is exceeded. # @return [Boolean] true if the lock is successfully acquired # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:110 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#110 def acquire_read_lock; end # Acquire a write lock. Will block and wait for all active readers and writers. # # @raise [Concurrent::ResourceLimitError] if the maximum number of writers # is exceeded. # @return [Boolean] true if the lock is successfully acquired # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:159 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#159 def acquire_write_lock; end # Queries whether any threads are waiting to acquire the read or write lock. # # @return [Boolean] true if any threads are waiting for a lock else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:213 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#213 def has_waiters?; end # Release a previously acquired read lock. # # @return [Boolean] true if the lock is successfully released # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:139 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#139 def release_read_lock; end # Release a previously acquired write lock. # # @return [Boolean] true if the lock is successfully released # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:195 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#195 def release_write_lock; end # Execute a block operation within a read lock. # # @raise [ArgumentError] when no block is given. # @raise [Concurrent::ResourceLimitError] if the maximum number of readers # is exceeded. # @return [Object] the result of the block operation. # @yield the task to be performed within the lock. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:74 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#74 def with_read_lock; end # Execute a block operation within a write lock. # # @raise [ArgumentError] when no block is given. # @raise [Concurrent::ResourceLimitError] if the maximum number of readers # is exceeded. # @return [Object] the result of the block operation. # @yield the task to be performed within the lock. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:93 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#93 def with_write_lock; end # Queries if the write lock is held by any thread. # # @return [Boolean] true if the write lock is held else false` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:206 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#206 def write_locked?; end private # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:245 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#245 def max_readers?(c = T.unsafe(nil)); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:250 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#250 def max_writers?(c = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:220 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#220 def running_readers(c = T.unsafe(nil)); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:225 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#225 def running_readers?(c = T.unsafe(nil)); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:230 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#230 def running_writer?(c = T.unsafe(nil)); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:240 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#240 def waiting_writer?(c = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:235 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#235 def waiting_writers(c = T.unsafe(nil)); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 def new(*args, &block); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:39 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#39 Concurrent::ReadWriteLock::MAX_READERS = T.let(T.unsafe(nil), Integer) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:42 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#42 Concurrent::ReadWriteLock::MAX_WRITERS = T.let(T.unsafe(nil), Integer) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:36 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#36 Concurrent::ReadWriteLock::RUNNING_WRITER = T.let(T.unsafe(nil), Integer) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb:33 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb#33 Concurrent::ReadWriteLock::WAITING_WRITER = T.let(T.unsafe(nil), Integer) # Re-entrant read-write lock implementation # # Allows any number of concurrent readers, but only one concurrent writer @@ -8597,195 +8429,195 @@ # lock = Concurrent::ReentrantReadWriteLock.new # lock.with_read_lock { data.retrieve } # lock.with_write_lock { data.modify! } # @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/locks/ReentrantReadWriteLock.html java.util.concurrent.ReentrantReadWriteLock # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:51 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#51 class Concurrent::ReentrantReadWriteLock < ::Concurrent::Synchronization::Object # Create a new `ReentrantReadWriteLock` in the unlocked state. # # @return [ReentrantReadWriteLock] a new instance of ReentrantReadWriteLock # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:107 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#107 def initialize; end # Acquire a read lock. If a write lock is held by another thread, will block # until it is released. # # @raise [Concurrent::ResourceLimitError] if the maximum number of readers # is exceeded. # @return [Boolean] true if the lock is successfully acquired # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:160 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#160 def acquire_read_lock; end # Acquire a write lock. Will block and wait for all active readers and writers. # # @raise [Concurrent::ResourceLimitError] if the maximum number of writers # is exceeded. # @return [Boolean] true if the lock is successfully acquired # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:255 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#255 def acquire_write_lock; end # Release a previously acquired read lock. # # @return [Boolean] true if the lock is successfully released # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:234 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#234 def release_read_lock; end # Release a previously acquired write lock. # # @return [Boolean] true if the lock is successfully released # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:327 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#327 def release_write_lock; end # Try to acquire a read lock and return true if we succeed. If it cannot be # acquired immediately, return false. # # @return [Boolean] true if the lock is successfully acquired # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:213 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#213 def try_read_lock; end # Try to acquire a write lock and return true if we succeed. If it cannot be # acquired immediately, return false. # # @return [Boolean] true if the lock is successfully acquired # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:308 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#308 def try_write_lock; end # Execute a block operation within a read lock. # # @raise [ArgumentError] when no block is given. # @raise [Concurrent::ResourceLimitError] if the maximum number of readers # is exceeded. # @return [Object] the result of the block operation. # @yield the task to be performed within the lock. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:124 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#124 def with_read_lock; end # Execute a block operation within a write lock. # # @raise [ArgumentError] when no block is given. # @raise [Concurrent::ResourceLimitError] if the maximum number of readers # is exceeded. # @return [Object] the result of the block operation. # @yield the task to be performed within the lock. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:143 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#143 def with_write_lock; end private # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:368 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#368 def max_readers?(c = T.unsafe(nil)); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:373 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#373 def max_writers?(c = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:343 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#343 def running_readers(c = T.unsafe(nil)); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:348 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#348 def running_readers?(c = T.unsafe(nil)); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:353 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#353 def running_writer?(c = T.unsafe(nil)); end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:363 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#363 def waiting_or_running_writer?(c = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:358 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#358 def waiting_writers(c = T.unsafe(nil)); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 def new(*args, &block); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:92 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#92 Concurrent::ReentrantReadWriteLock::MAX_READERS = T.let(T.unsafe(nil), Integer) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:94 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#94 Concurrent::ReentrantReadWriteLock::MAX_WRITERS = T.let(T.unsafe(nil), Integer) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:82 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#82 Concurrent::ReentrantReadWriteLock::READER_BITS = T.let(T.unsafe(nil), Integer) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:100 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#100 Concurrent::ReentrantReadWriteLock::READ_LOCK_MASK = T.let(T.unsafe(nil), Integer) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:90 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#90 Concurrent::ReentrantReadWriteLock::RUNNING_WRITER = T.let(T.unsafe(nil), Integer) # Used with @Counter: # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:88 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#88 Concurrent::ReentrantReadWriteLock::WAITING_WRITER = T.let(T.unsafe(nil), Integer) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:84 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#84 Concurrent::ReentrantReadWriteLock::WRITER_BITS = T.let(T.unsafe(nil), Integer) # Used with @HeldCount: # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:98 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#98 Concurrent::ReentrantReadWriteLock::WRITE_LOCK_HELD = T.let(T.unsafe(nil), Integer) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb:102 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb#102 Concurrent::ReentrantReadWriteLock::WRITE_LOCK_MASK = T.let(T.unsafe(nil), Integer) # Raised by an `Executor` when it is unable to process a given task, # possibly because of a reject policy or other internal error. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:48 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#48 class Concurrent::RejectedExecutionError < ::Concurrent::Error; end # Raised when any finite resource, such as a lock counter, exceeds its # maximum limit/threshold. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:52 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#52 class Concurrent::ResourceLimitError < ::Concurrent::Error; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/exchanger.rb:134 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#129 class Concurrent::RubyExchanger < ::Concurrent::AbstractExchanger # @return [RubyExchanger] a new instance of RubyExchanger # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/exchanger.rb:159 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#159 def initialize; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:169 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#169 def __initialize_atomic_fields__; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:137 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#137 def compare_and_set_slot(expected, value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:125 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#125 def slot; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:129 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#129 def slot=(value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:133 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#133 def swap_slot(value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:141 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#141 def update_slot(&block); end private # Waits for another thread to arrive at this exchange point (unless the @@ -8797,179 +8629,177 @@ # # @param value [Object] the value to exchange with another thread # @param timeout [Numeric, nil] in seconds, `nil` blocks indefinitely # @return [Object, CANCEL] the value exchanged by the other thread; {CANCEL} on timeout # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/exchanger.rb:170 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#170 def do_exchange(value, timeout); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 def new(*args, &block); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/exchanger.rb:138 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#138 class Concurrent::RubyExchanger::Node < ::Concurrent::Synchronization::Object # @return [Node] a new instance of Node # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/exchanger.rb:142 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#142 def initialize(item); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:169 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#169 def __initialize_atomic_fields__; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:137 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#137 def compare_and_set_value(expected, value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/exchanger.rb:153 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#153 def item; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/exchanger.rb:149 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/exchanger.rb#149 def latch; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:133 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#133 def swap_value(value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:141 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#141 def update_value(&block); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:125 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#125 def value; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:129 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#129 def value=(value); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 def new(*args, &block); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb:8 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb#8 class Concurrent::RubyExecutorService < ::Concurrent::AbstractExecutorService # @return [RubyExecutorService] a new instance of RubyExecutorService # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb:11 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb#11 def initialize(*args, &block); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb:42 + # Begin an immediate shutdown. In-progress tasks will be allowed to + # complete but enqueued tasks will be dismissed and no new tasks + # will be accepted. Has no additional effect if the thread pool is + # not running. + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb#42 def kill; end - # @raise [ArgumentError] + # Submit a task to the executor for asynchronous processing. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb:17 + # @param args [Array] zero or more arguments to be passed to the task + # @raise [ArgumentError] if no task is given + # @return [Boolean] `true` if the task is queued, `false` if the executor + # is not running + # @yield the asynchronous task to perform + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb#17 def post(*args, &task); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb:33 + # Begin an orderly shutdown. Tasks already in the queue will be executed, + # but no new tasks will be accepted. Has no additional effect if the + # thread pool is not running. + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb#33 def shutdown; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb:52 + # Block until executor shutdown is complete or until `timeout` seconds have + # passed. + # + # @note Does not initiate shutdown or termination. Either `shutdown` or `kill` + # must be called before this method (or on another thread). + # @param timeout [Integer] the maximum number of seconds to wait for shutdown to complete + # @return [Boolean] `true` if shutdown complete or false on `timeout` + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb#52 def wait_for_termination(timeout = T.unsafe(nil)); end private # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb:70 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb#70 def ns_running?; end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb:78 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb#78 def ns_shutdown?; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb:66 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb#66 def ns_shutdown_execution; end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb:74 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb#74 def ns_shuttingdown?; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb#58 def stop_event; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb:62 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb#62 def stopped_event; end end -# A thread pool with a single thread an unlimited queue. Should the thread -# die for any reason it will be removed and replaced, thus ensuring that -# the executor will always remain viable and available to process jobs. -# -# A common pattern for background processing is to create a single thread -# on which an infinite loop is run. The thread's loop blocks on an input -# source (perhaps blocking I/O or a queue) and processes each input as it -# is received. This pattern has several issues. The thread itself is highly -# susceptible to errors during processing. Also, the thread itself must be -# constantly monitored and restarted should it die. `SingleThreadExecutor` -# encapsulates all these bahaviors. The task processor is highly resilient -# to errors from within tasks. Also, should the thread die it will -# automatically be restarted. -# -# The API and behavior of this class are based on Java's `SingleThreadExecutor`. -# -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_single_thread_executor.rb:8 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_single_thread_executor.rb#8 class Concurrent::RubySingleThreadExecutor < ::Concurrent::RubyThreadPoolExecutor - # Create a new thread pool. - # - # @option opts - # @param opts [Hash] a customizable set of options - # @raise [ArgumentError] if `:fallback_policy` is not one of the values specified - # in `FALLBACK_POLICIES` # @return [RubySingleThreadExecutor] a new instance of RubySingleThreadExecutor - # @see http://docs.oracle.com/javase/tutorial/essential/concurrency/pools.html - # @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executors.html - # @see http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutorService.html # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_single_thread_executor.rb:11 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_single_thread_executor.rb#11 def initialize(opts = T.unsafe(nil)); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb:8 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb#8 class Concurrent::RubyThreadLocalVar < ::Concurrent::AbstractThreadLocalVar - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb:54 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb#54 def value; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb:70 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb#70 def value=(value); end protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb:87 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb#87 def allocate_storage; end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb:173 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb#173 def get_default; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb:136 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb#136 def get_threadlocal_array(thread = T.unsafe(nil)); end # noinspection RubyClassVariableUsageInspection # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb:126 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb#126 def next_index; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb:140 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb#140 def set_threadlocal_array(array, thread = T.unsafe(nil)); end # This exists only for use in testing # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb:157 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb#157 def value_for(thread); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb:41 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb#41 def semi_sync(&block); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb:111 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb#111 def thread_finalizer(id); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb:94 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb#94 def thread_local_finalizer(index); end end end # Each thread has a (lazily initialized) array of thread-local variable values @@ -8991,19 +8821,19 @@ # Because we need to null out freed slots, we need to keep references to # ALL the thread-local arrays -- ARRAYS is for that # But when a Thread is GC'd, we need to drop the reference to its thread-local # array, so we don't leak memory # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb:31 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb#31 Concurrent::RubyThreadLocalVar::FREE = T.let(T.unsafe(nil), Array) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb:32 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb#32 Concurrent::RubyThreadLocalVar::LOCK = T.let(T.unsafe(nil), Thread::Mutex) # used as a hash set # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb:33 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/ruby_thread_local_var.rb#33 Concurrent::RubyThreadLocalVar::THREAD_LOCAL_ARRAYS = T.let(T.unsafe(nil), Hash) # **Thread Pool Options** # # Thread pools support several configuration options: @@ -9053,75 +8883,75 @@ # @see http://docs.oracle.com/javase/tutorial/essential/concurrency/pools.html Java Tutorials: Thread Pools # @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executors.html Java Executors class # @see http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutorService.html Java ExecutorService interface # @see https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html#setDaemon-boolean- # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:12 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#12 class Concurrent::RubyThreadPoolExecutor < ::Concurrent::RubyExecutorService # @return [RubyThreadPoolExecutor] a new instance of RubyThreadPoolExecutor # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:45 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#45 def initialize(opts = T.unsafe(nil)); end # Does the task queue have a maximum size? # # @return [Boolean] True if the task queue has a maximum size else false. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:65 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#65 def can_overflow?; end # The number of tasks that have been completed by the pool since construction. # # @return [Integer] The number of tasks that have been completed by the pool since construction. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:60 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#60 def completed_task_count; end # The number of seconds that a thread may be idle before being reclaimed. # # @return [Integer] The number of seconds that a thread may be idle before being reclaimed. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:36 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#36 def idletime; end # The largest number of threads that have been created in the pool since construction. # # @return [Integer] The largest number of threads that have been created in the pool since construction. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:50 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#50 def largest_length; end # The number of threads currently in the pool. # # @return [Integer] The number of threads currently in the pool. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:70 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#70 def length; end # The maximum number of threads that may be created in the pool. # # @return [Integer] The maximum number of threads that may be created in the pool. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:30 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#30 def max_length; end # The maximum number of tasks that may be waiting in the work queue at any one time. # When the queue size reaches `max_queue` subsequent tasks will be rejected in # accordance with the configured `fallback_policy`. # # @return [Integer] The maximum number of tasks that may be waiting in the work queue at any one time. # When the queue size reaches `max_queue` subsequent tasks will be rejected in # accordance with the configured `fallback_policy`. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:39 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#39 def max_queue; end # The minimum number of threads that may be retained in the pool. # # @return [Integer] The minimum number of threads that may be retained in the pool. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:33 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#33 def min_length; end # Prune the thread pool of unneeded threads # # What is being pruned is controlled by the min_threads and idletime @@ -9130,183 +8960,188 @@ # This is a no-op on some pool implementation (e.g. the Java one). The Ruby # pool will auto-prune each time a new job is posted. You will need to call # this method explicitely in case your application post jobs in bursts (a # lot of jobs and then nothing for long periods) # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:111 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#111 def prune_pool; end # The number of tasks in the queue awaiting execution. # # @return [Integer] The number of tasks in the queue awaiting execution. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:75 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#75 def queue_length; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:96 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#96 def ready_worker(worker, last_message); end # Number of tasks that may be enqueued before reaching `max_queue` and rejecting # new tasks. A value of -1 indicates that the queue may grow without bound. # # @return [Integer] Number of tasks that may be enqueued before reaching `max_queue` and rejecting # new tasks. A value of -1 indicates that the queue may grow without bound. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:80 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#80 def remaining_capacity; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:91 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#91 def remove_busy_worker(worker); end # The number of tasks that have been scheduled for execution on the pool since construction. # # @return [Integer] The number of tasks that have been scheduled for execution on the pool since construction. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:55 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#55 def scheduled_task_count; end # Whether or not a value of 0 for :max_queue option means the queue must perform direct hand-off or rather unbounded queue. # # @return [true, false] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:42 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#42 def synchronous; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:101 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#101 def worker_died(worker); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:106 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#106 def worker_task_completed; end private # creates new worker which has to receive work to do after it's added # # @return [nil, Worker] nil of max capacity is reached # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:234 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#234 def ns_add_busy_worker; end # tries to assign task to a worker, tries to get one from @ready or to create new one # # @return [true, false] if task is assigned to a worker # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:194 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#194 def ns_assign_worker(*args, &task); end # tries to enqueue task # # @return [true, false] if enqueued # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:212 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#212 def ns_enqueue(*args, &task); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:153 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#153 def ns_execute(*args, &task); end # @raise [ArgumentError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:118 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#118 def ns_initialize(opts); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:182 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#182 def ns_kill_execution; end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:148 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#148 def ns_limited_queue?; end # try oldest worker if it is idle for enough time, it's returned back at the start # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:273 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#273 def ns_prune_pool; end # handle ready worker, giving it new job or assigning back to @ready # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:246 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#246 def ns_ready_worker(worker, last_message, success = T.unsafe(nil)); end # removes a worker which is not in not tracked in @ready # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:264 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#264 def ns_remove_busy_worker(worker); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:289 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#289 def ns_reset_if_forked; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:167 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#167 def ns_shutdown_execution; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:224 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#224 def ns_worker_died(worker); end end # Default maximum number of threads that will be created in the pool. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:15 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#15 Concurrent::RubyThreadPoolExecutor::DEFAULT_MAX_POOL_SIZE = T.let(T.unsafe(nil), Integer) # Default maximum number of tasks that may be added to the task queue. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:21 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#21 Concurrent::RubyThreadPoolExecutor::DEFAULT_MAX_QUEUE_SIZE = T.let(T.unsafe(nil), Integer) # Default minimum number of threads that will be retained in the pool. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:18 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#18 Concurrent::RubyThreadPoolExecutor::DEFAULT_MIN_POOL_SIZE = T.let(T.unsafe(nil), Integer) +# Default value of the :synchronous option. +# +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#27 +Concurrent::RubyThreadPoolExecutor::DEFAULT_SYNCHRONOUS = T.let(T.unsafe(nil), FalseClass) + # Default maximum number of seconds a thread in the pool may remain idle # before being reclaimed. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:24 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#24 Concurrent::RubyThreadPoolExecutor::DEFAULT_THREAD_IDLETIMEOUT = T.let(T.unsafe(nil), Integer) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:303 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#303 class Concurrent::RubyThreadPoolExecutor::Worker include ::Logger::Severity include ::Concurrent::Concern::Logging # @return [Worker] a new instance of Worker # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:306 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#306 def initialize(pool, id); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:317 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#317 def <<(message); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:325 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#325 def kill; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:321 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#321 def stop; end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:331 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#331 def create_worker(queue, pool, idletime); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:351 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb#351 def run_task(pool, task, args); end end # A simple utility class that executes a callable and returns and array of three elements: # success - indicating if the callable has been executed without errors # value - filled by the callable result if it has been executed without errors, nil otherwise # reason - the error risen by the callable if it has been executed with errors, nil otherwise # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/safe_task_executor.rb:9 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/safe_task_executor.rb#9 class Concurrent::SafeTaskExecutor < ::Concurrent::Synchronization::LockableObject # @return [SafeTaskExecutor] a new instance of SafeTaskExecutor # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/safe_task_executor.rb:11 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/safe_task_executor.rb#11 def initialize(task, opts = T.unsafe(nil)); end # @return [Array] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/safe_task_executor.rb:18 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/safe_task_executor.rb#18 def execute(*args); end end # `ScheduledTask` is a close relative of `Concurrent::Future` but with one # important difference: A `Future` is set to execute as soon as possible @@ -9444,11 +9279,11 @@ # sleep(3) # # #>> The task completed at 2013-11-07 12:26:09 -0500 with value 'What does the fox say?' # @see Concurrent.timer # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/scheduled_task.rb:158 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#158 class Concurrent::ScheduledTask < ::Concurrent::IVar include ::Comparable # Schedule a task for execution at a specified future time. # @@ -9458,119 +9293,128 @@ # @raise [ArgumentError] When no block is given # @raise [ArgumentError] When given a time that is in the past # @return [ScheduledTask] a new instance of ScheduledTask # @yield the task to be performed # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/scheduled_task.rb:178 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#178 def initialize(delay, opts = T.unsafe(nil), &task); end # Comparator which orders by schedule time. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/scheduled_task.rb:213 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#213 def <=>(other); end # Cancel this task and prevent it from executing. A task can only be # cancelled if it is pending or unscheduled. # # @return [Boolean] true if successfully cancelled else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/scheduled_task.rb:235 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#235 def cancel; end # Has the task been cancelled? # # @return [Boolean] true if the task is in the given state else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/scheduled_task.rb:220 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#220 def cancelled?; end # Execute an `:unscheduled` `ScheduledTask`. Immediately sets the state to `:pending` # and starts counting down toward execution. Does nothing if the `ScheduledTask` is # in any state other than `:unscheduled`. # # @return [ScheduledTask] a reference to `self` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/scheduled_task.rb:273 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#273 def execute; end # The executor on which to execute the task. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/scheduled_task.rb:163 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#163 def executor; end # The `delay` value given at instanciation. # # @return [Float] the initial delay. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/scheduled_task.rb:199 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#199 def initial_delay; end # Execute the task. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/scheduled_task.rb:297 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#297 def process_task; end # In the task execution in progress? # # @return [Boolean] true if the task is in the given state else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/scheduled_task.rb:227 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#227 def processing?; end # Reschedule the task using the given delay and the current time. # A task can only be reset while it is `:pending`. # # @param delay [Float] the number of seconds to wait for before executing the task # @raise [ArgumentError] When given a time that is in the past # @return [Boolean] true if successfully rescheduled else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/scheduled_task.rb:262 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#262 def reschedule(delay); end # Reschedule the task using the original delay and the current time. # A task can only be reset while it is `:pending`. # # @return [Boolean] true if successfully rescheduled else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/scheduled_task.rb:250 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#250 def reset; end # The monotonic time at which the the task is scheduled to be executed. # # @return [Float] the schedule time or nil if `unscheduled` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/scheduled_task.rb:206 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#206 def schedule_time; end protected + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#134 + def fail(reason = T.unsafe(nil)); end + # Reschedule the task using the given delay and the current time. # A task can only be reset while it is `:pending`. # # @param delay [Float] the number of seconds to wait for before executing the task # @return [Boolean] true if successfully rescheduled else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/scheduled_task.rb:326 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#326 def ns_reschedule(delay); end # Schedule the task using the given delay and the current time. # # @param delay [Float] the number of seconds to wait for before executing the task # @return [Boolean] true if successfully rescheduled else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/scheduled_task.rb:312 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#312 def ns_schedule(delay); end + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#112 + def set(value = T.unsafe(nil)); end + + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/ivar.rb#144 + def try_set(value = T.unsafe(nil), &block); end + class << self # Create a new `ScheduledTask` object with the given block, execute it, and return the # `:pending` object. # # @param delay [Float] the number of seconds to wait for before executing the task # @raise [ArgumentError] if no block is given # @return [ScheduledTask] the newly created `ScheduledTask` in the `:pending` state # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/scheduled_task.rb:290 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/scheduled_task.rb#290 def execute(delay, opts = T.unsafe(nil), &task); end end end # A counting semaphore. Conceptually, a semaphore maintains a set of @@ -9625,14 +9469,14 @@ # # prints: # # 1 # # 0 # # 1 # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/semaphore.rb:164 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/semaphore.rb#164 class Concurrent::Semaphore < ::Concurrent::MutexSemaphore; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/semaphore.rb:99 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/semaphore.rb#99 Concurrent::SemaphoreImplementation = Concurrent::MutexSemaphore # Indicates that the including `ExecutorService` guarantees # that all operations will occur in the order they are post and that no # two operations may occur simultaneously. This module provides no @@ -9649,11 +9493,11 @@ # # foo.is_a? Concurrent::ExecutorService #=> true # foo.is_a? Concurrent::SerialExecutor #=> true # foo.serialized? #=> true # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/serial_executor_service.rb:24 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serial_executor_service.rb#24 module Concurrent::SerialExecutorService include ::Logger::Severity include ::Concurrent::Concern::Logging include ::Concurrent::ExecutorService @@ -9662,24 +9506,24 @@ # @note Always returns `true` # @return [Boolean] True if the executor guarantees that all operations # will be post in the order they are received and no two operations may # occur simultaneously. Else false. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/serial_executor_service.rb:30 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serial_executor_service.rb#30 def serialized?; end end # Ensures passed jobs in a serialized order never running at the same time. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/serialized_execution.rb:8 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#8 class Concurrent::SerializedExecution < ::Concurrent::Synchronization::LockableObject include ::Logger::Severity include ::Concurrent::Concern::Logging # @return [SerializedExecution] a new instance of SerializedExecution # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/serialized_execution.rb:11 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#11 def initialize; end # Submit a task to the executor for asynchronous processing. # # @param executor [Executor] to be used for this job @@ -9687,49 +9531,47 @@ # @raise [ArgumentError] if no task is given # @return [Boolean] `true` if the task is queued, `false` if the executor # is not running # @yield the asynchronous task to perform # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/serialized_execution.rb:34 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#34 def post(executor, *args, &task); end # As {#post} but allows to submit multiple tasks at once, it's guaranteed that they will not # be interleaved by other tasks. # # @param posts [Array<Array(ExecutorService, Array<Object>, Proc)>] array of triplets where # first is a {ExecutorService}, second is array of args for task, third is a task (Proc) # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/serialized_execution.rb:44 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#44 def posts(posts); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/serialized_execution.rb:75 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#75 def call_job(job); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/serialized_execution.rb:70 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#70 def ns_initialize; end # ensures next job is executed if any is stashed # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/serialized_execution.rb:95 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#95 def work(job); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/serialized_execution.rb:16 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#16 class Concurrent::SerializedExecution::Job < ::Struct # Returns the value of attribute args # # @return [Object] the current value of args def args; end # Sets the attribute args # # @param value [Object] the value to set the attribute args to. # @return [Object] the newly set value - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/serialized_execution.rb:16 def args=(_); end # Returns the value of attribute block # # @return [Object] the current value of block @@ -9737,15 +9579,13 @@ # Sets the attribute block # # @param value [Object] the value to set the attribute block to. # @return [Object] the newly set value - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/serialized_execution.rb:16 def block=(_); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/serialized_execution.rb:17 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution.rb#17 def call; end # Returns the value of attribute executor # # @return [Object] the current value of executor @@ -9753,17 +9593,16 @@ # Sets the attribute executor # # @param value [Object] the value to set the attribute executor to. # @return [Object] the newly set value - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/serialized_execution.rb:16 def executor=(_); end class << self def [](*_arg0); end def inspect; end + def keyword_init?; end def members; end def new(*_arg0); end end end @@ -9771,31 +9610,31 @@ # guarantees serialized execution of tasks. # # @see [SimpleDelegator](http://www.ruby-doc.org/stdlib-2.1.2/libdoc/delegate/rdoc/SimpleDelegator.html) # @see Concurrent::SerializedExecution # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/serialized_execution_delegator.rb:12 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution_delegator.rb#12 class Concurrent::SerializedExecutionDelegator < ::SimpleDelegator include ::Logger::Severity include ::Concurrent::Concern::Logging include ::Concurrent::ExecutorService include ::Concurrent::SerialExecutorService # @return [SerializedExecutionDelegator] a new instance of SerializedExecutionDelegator # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/serialized_execution_delegator.rb:15 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution_delegator.rb#15 def initialize(executor); end # Submit a task to the executor for asynchronous processing. # # @param args [Array] zero or more arguments to be passed to the task # @raise [ArgumentError] if no task is given # @return [Boolean] `true` if the task is queued, `false` if the executor # is not running # @yield the asynchronous task to perform # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/serialized_execution_delegator.rb:22 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/serialized_execution_delegator.rb#22 def post(*args, &task); end end # A thread-safe subclass of Set. This version locks against the object # itself for every method call, ensuring only one thread can be reading @@ -9807,45 +9646,45 @@ # The read and write are independent operations they do not form a single atomic # operation therefore when two `+=` operations are executed concurrently updates # may be lost. Use `#merge` instead. # @see http://ruby-doc.org/stdlib-2.4.0/libdoc/set/rdoc/Set.html Ruby standard library `Set` # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/set.rb:71 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#71 class Concurrent::Set < ::Concurrent::CRubySet; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/set.rb:23 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/set.rb#23 Concurrent::SetImplementation = Concurrent::CRubySet # An thread-safe, write-once variation of Ruby's standard `Struct`. # Each member can have its value set at most once, either at construction # or any time thereafter. Attempting to assign a value to a member # that has already been set will result in a `Concurrent::ImmutabilityError`. # # @see http://ruby-doc.org/core/Struct.html Ruby standard library `Struct` # @see http://en.wikipedia.org/wiki/Final_(Java) Java `final` keyword # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/settable_struct.rb:14 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#14 module Concurrent::SettableStruct include ::Concurrent::Synchronization::AbstractStruct # Equality # # @return [Boolean] true if other has the same struct subclass and has # equal member values (according to `Object#==`) # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/settable_struct.rb:50 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#50 def ==(other); end # Attribute Reference # # @param member [Symbol, String, Integer] the string or symbol name of the member # for which to obtain the value or the member's index # @raise [NameError] if the member does not exist # @raise [IndexError] if the index is out of range. # @return [Object] the value of the given struct member or the member at the given index. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/settable_struct.rb:45 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#45 def [](member); end # Attribute Assignment # # Sets the value of the given struct member or the member at the given index. @@ -9855,37 +9694,37 @@ # @raise [NameError] if the name does not exist # @raise [IndexError] if the index is out of range. # @raise [Concurrent::ImmutabilityError] if the given member has already been set # @return [Object] the value of the given struct member or the member at the given index. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/settable_struct.rb:75 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#75 def []=(member, value); end # Yields the value of each struct member in order. If no block is given # an enumerator is returned. # # @yield the operation to be performed on each struct member # @yieldparam value [Object] each struct value (in order) # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/settable_struct.rb:55 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#55 def each(&block); end # Yields the name and value of each struct member in order. If no block is # given an enumerator is returned. # # @yield the operation to be performed on each struct member/value pair # @yieldparam member [Object] each struct member (in order) # @yieldparam value [Object] each struct value (in order) # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/settable_struct.rb:61 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#61 def each_pair(&block); end # Describe the contents of this struct in a string. # # @return [String] the contents of this struct in a string # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/settable_struct.rb:29 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#29 def inspect; end # Returns a new struct containing the contents of `other` and the contents # of `self`. If no block is specified, the value for entries with duplicate # keys will be that of `other`. Otherwise the value for each duplicate key @@ -9898,64 +9737,64 @@ # @yield an options block for resolving duplicate keys # @yieldparam member [String, Symbol] the name of the member which is duplicated # @yieldparam selfvalue [Object] the value of the member in `self` # @yieldparam othervalue [Object] the value of the member in `other` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/settable_struct.rb:35 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#35 def merge(other, &block); end # Yields each member value from the struct to the block and returns an Array # containing the member values from the struct for which the given block # returns a true value (equivalent to `Enumerable#select`). # # @return [Array] an array containing each value for which the block returns true # @yield the operation to be performed on each struct member # @yieldparam value [Object] each struct value (in order) # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/settable_struct.rb:67 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#67 def select(&block); end # Returns the values for this struct as an Array. # # @return [Array] the values for this struct # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/settable_struct.rb:18 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#18 def to_a; end # Returns a hash containing the names and values for the struct’s members. # # @return [Hash] the names and values for the struct’s members # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/settable_struct.rb:40 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#40 def to_h; end # Describe the contents of this struct in a string. # # @return [String] the contents of this struct in a string # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/settable_struct.rb:29 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#29 def to_s; end # Returns the values for this struct as an Array. # # @return [Array] the values for this struct # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/settable_struct.rb:18 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#18 def values; end # Returns the struct member values for each selector as an Array. # # A selector may be either an Integer offset or a Range of offsets (as in `Array#values_at`). # # @param indexes [Fixnum, Range] the index(es) from which to obatin the values (in order) # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/settable_struct.rb:24 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#24 def values_at(*indexes); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/settable_struct.rb:97 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#97 def initialize_copy(original); end class << self # Factory for creating new struct classes. # @@ -9985,16 +9824,16 @@ # struct. Unset parameters default to nil. Passing more parameters than number of attributes # will raise an `ArgumentError`. # # @see http://ruby-doc.org/core/Struct.html#method-c-new Ruby standard library `Struct#new` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/settable_struct.rb:105 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#105 def new(*args, &block); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/settable_struct.rb:115 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/settable_struct.rb#115 Concurrent::SettableStruct::FACTORY = T.let(T.unsafe(nil), T.untyped) # An executor service in which every operation spawns a new, # independently operating thread. # @@ -10006,56 +9845,101 @@ # executor implementation. In production this executor will likely # lead to suboptimal performance. # # @note Intended for use primarily in testing and debugging. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb:18 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb#18 class Concurrent::SimpleExecutorService < ::Concurrent::RubyExecutorService - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb:53 + # Submit a task to the executor for asynchronous processing. + # + # @param task [Proc] the asynchronous task to perform + # @return [self] returns itself + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb#53 def <<(task); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb:81 + # Begin an immediate shutdown. In-progress tasks will be allowed to + # complete but enqueued tasks will be dismissed and no new tasks + # will be accepted. Has no additional effect if the thread pool is + # not running. + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb#81 def kill; end - # @raise [ArgumentError] + # Submit a task to the executor for asynchronous processing. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb:37 + # @param args [Array] zero or more arguments to be passed to the task + # @raise [ArgumentError] if no task is given + # @return [Boolean] `true` if the task is queued, `false` if the executor + # is not running + # @yield the asynchronous task to perform + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb#37 def post(*args, &task); end - # @return [Boolean] + # Is the executor running? # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb:59 + # @return [Boolean] `true` when running, `false` when shutting down or shutdown + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb#59 def running?; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb:74 + # Begin an orderly shutdown. Tasks already in the queue will be executed, + # but no new tasks will be accepted. Has no additional effect if the + # thread pool is not running. + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb#74 def shutdown; end - # @return [Boolean] + # Is the executor shutdown? # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb:69 + # @return [Boolean] `true` when shutdown, `false` when shutting down or running + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb#69 def shutdown?; end - # @return [Boolean] + # Is the executor shuttingdown? # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb:64 + # @return [Boolean] `true` when not running and not shutdown, else `false` + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb#64 def shuttingdown?; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb:88 + # Block until executor shutdown is complete or until `timeout` seconds have + # passed. + # + # @note Does not initiate shutdown or termination. Either `shutdown` or `kill` + # must be called before this method (or on another thread). + # @param timeout [Integer] the maximum number of seconds to wait for shutdown to complete + # @return [Boolean] `true` if shutdown complete or false on `timeout` + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb#88 def wait_for_termination(timeout = T.unsafe(nil)); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb:94 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb#94 def ns_initialize(*args); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb:31 + # Submit a task to the executor for asynchronous processing. + # + # @param task [Proc] the asynchronous task to perform + # @return [self] returns itself + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb#31 def <<(task); end - # @raise [ArgumentError] + # Submit a task to the executor for asynchronous processing. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb:21 + # @param args [Array] zero or more arguments to be passed to the task + # @raise [ArgumentError] if no task is given + # @return [Boolean] `true` if the task is queued, `false` if the executor + # is not running + # @yield the asynchronous task to perform + # + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb#21 def post(*args); end end end # A thread pool with a single thread an unlimited queue. Should the thread @@ -10072,23 +9956,23 @@ # to errors from within tasks. Also, should the thread die it will # automatically be restarted. # # The API and behavior of this class are based on Java's `SingleThreadExecutor`. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/single_thread_executor.rb:37 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/single_thread_executor.rb#37 class Concurrent::SingleThreadExecutor < ::Concurrent::RubySingleThreadExecutor; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/single_thread_executor.rb:10 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/single_thread_executor.rb#10 Concurrent::SingleThreadExecutorImplementation = Concurrent::RubySingleThreadExecutor # {include:file:docs-source/synchronization.md} # {include:file:docs-source/synchronization-notes.md} # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_object.rb:2 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_object.rb#2 module Concurrent::Synchronization; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_lockable_object.rb:5 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_lockable_object.rb#5 class Concurrent::Synchronization::AbstractLockableObject < ::Concurrent::Synchronization::Object protected # Broadcast to all waiting threads. # @@ -10100,11 +9984,11 @@ # end # ``` # @raise [NotImplementedError] # @return [self] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_lockable_object.rb:92 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_lockable_object.rb#92 def ns_broadcast; end # Signal one waiting thread. # # @note only to be used inside synchronized block @@ -10115,11 +9999,11 @@ # end # ``` # @raise [NotImplementedError] # @return [self] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_lockable_object.rb:77 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_lockable_object.rb#77 def ns_signal; end # Wait until another thread calls #signal or #broadcast, # spurious wake-ups can happen. # @@ -10132,11 +10016,11 @@ # ``` # @param timeout [Numeric, nil] in seconds, `nil` means no timeout # @raise [NotImplementedError] # @return [self] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_lockable_object.rb:62 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_lockable_object.rb#62 def ns_wait(timeout = T.unsafe(nil)); end # Wait until condition is met or timeout passes, # protects against spurious wake-ups. # @@ -10150,119 +10034,119 @@ # @param timeout [Numeric, nil] in seconds, `nil` means no timeout # @return [true, false] if condition met # @yield condition to be met # @yieldreturn [true, false] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_lockable_object.rb:33 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_lockable_object.rb#33 def ns_wait_until(timeout = T.unsafe(nil), &condition); end # @note can by made public in descendants if required by `public :synchronize` # @raise [NotImplementedError] # @yield runs the block synchronized against this object, # equivalent of java's `synchronize(this) {}` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_lockable_object.rb:14 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_lockable_object.rb#14 def synchronize; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_object.rb:6 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_object.rb#6 class Concurrent::Synchronization::AbstractObject # @abstract has to be implemented based on Ruby runtime # @raise [NotImplementedError] # @return [AbstractObject] a new instance of AbstractObject # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_object.rb:9 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_object.rb#9 def initialize; end # @abstract # @raise [NotImplementedError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_object.rb:15 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_object.rb#15 def full_memory_barrier; end class << self # @raise [NotImplementedError] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_object.rb:19 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_object.rb#19 def attr_volatile(*names); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:6 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#6 module Concurrent::Synchronization::AbstractStruct - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:9 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#9 def initialize(*values); end # Returns the number of struct members. # # @return [Fixnum] the number of struct members # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:19 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#19 def length; end # Returns the struct members as an array of symbols. # # @return [Array] the struct members as an array of symbols # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:29 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#29 def members; end # Returns the number of struct members. # # @return [Fixnum] the number of struct members # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:19 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#19 def size; end protected # Yields the value of each struct member in order. If no block is given # an enumerator is returned. # # @yield the operation to be performed on each struct member # @yieldparam value [Object] each struct value (in order) # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:82 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#82 def ns_each; end # Yields the name and value of each struct member in order. If no block is # given an enumerator is returned. # # @yield the operation to be performed on each struct member/value pair # @yieldparam member [Object] each struct member (in order) # @yieldparam value [Object] each struct value (in order) # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:89 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#89 def ns_each_pair; end # Equality # # @return [Boolean] true if other has the same struct subclass and has # equal member values (according to `Object#==`) # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:75 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#75 def ns_equality(other); end # Attribute Reference # # @param member [Symbol, String, Integer] the string or symbol name of the member # for which to obtain the value or the member's index # @raise [NameError] if the member does not exist # @raise [IndexError] if the index is out of range. # @return [Object] the value of the given struct member or the member at the given index. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:59 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#59 def ns_get(member); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:119 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#119 def ns_initialize_copy; end # Describe the contents of this struct in a string. # # @return [String] the contents of this struct in a string # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:105 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#105 def ns_inspect; end # Returns a new struct containing the contents of `other` and the contents # of `self`. If no block is specified, the value for entries with duplicate # keys will be that of `other`. Otherwise the value for each duplicate key @@ -10275,120 +10159,140 @@ # @yield an options block for resolving duplicate keys # @yieldparam member [String, Symbol] the name of the member which is duplicated # @yieldparam selfvalue [Object] the value of the member in `self` # @yieldparam othervalue [Object] the value of the member in `other` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:114 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#114 def ns_merge(other, &block); end # Yields each member value from the struct to the block and returns an Array # containing the member values from the struct for which the given block # returns a true value (equivalent to `Enumerable#select`). # # @return [Array] an array containing each value for which the block returns true # @yield the operation to be performed on each struct member # @yieldparam value [Object] each struct value (in order) # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:98 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#98 def ns_select; end # Returns a hash containing the names and values for the struct’s members. # # @return [Hash] the names and values for the struct’s members # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:52 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#52 def ns_to_h; end # Returns the values for this struct as an Array. # # @return [Array] the values for this struct # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:38 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#38 def ns_values; end # Returns the struct member values for each selector as an Array. # # A selector may be either an Integer offset or a Range of offsets (as in `Array#values_at`). # # @param indexes [Fixnum, Range] the index(es) from which to obatin the values (in order) # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:45 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#45 def ns_values_at(indexes); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:130 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#130 def pr_underscore(clazz); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb:141 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb#141 def define_struct_class(parent, base, name, members, &block); end end end # TODO (pitr-ch 04-Dec-2016): should be in edge # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/condition.rb:6 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/condition.rb#6 class Concurrent::Synchronization::Condition < ::Concurrent::Synchronization::LockableObject # @return [Condition] a new instance of Condition # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/condition.rb:16 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/condition.rb#16 def initialize(lock); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/condition.rb:45 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/condition.rb#45 def broadcast; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/condition.rb:49 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/condition.rb#49 def ns_broadcast; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/condition.rb:41 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/condition.rb#41 def ns_signal; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/condition.rb:25 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/condition.rb#25 def ns_wait(timeout = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/condition.rb:33 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/condition.rb#33 def ns_wait_until(timeout = T.unsafe(nil), &condition); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/condition.rb:37 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/condition.rb#37 def signal; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/condition.rb:21 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/condition.rb#21 def wait(timeout = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/condition.rb:29 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/condition.rb#29 def wait_until(timeout = T.unsafe(nil), &condition); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 def private_new(*args, &block); end + + private + + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 + def new(*args, &block); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:7 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb#7 module Concurrent::Synchronization::ConditionSignalling protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:15 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb#15 def ns_broadcast; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:10 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb#10 def ns_signal; end end # TODO (pitr-ch 04-Dec-2016): should be in edge # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/lock.rb:7 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/lock.rb#6 class Concurrent::Synchronization::Lock < ::Concurrent::Synchronization::LockableObject - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/lock.rb:29 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/lock.rb#29 def broadcast; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/lock.rb:23 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb#15 + def ns_broadcast; end + + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb#10 + def ns_signal; end + + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb#51 + def ns_wait(timeout = T.unsafe(nil)); end + + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/abstract_lockable_object.rb#33 + def ns_wait_until(timeout = T.unsafe(nil), &condition); end + + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/lock.rb#23 def signal; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/lock.rb:11 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb#43 + def synchronize; end + + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/lock.rb#11 def wait(timeout = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/lock.rb:17 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/lock.rb#17 def wait_until(timeout = T.unsafe(nil), &condition); end end # Safe synchronization under any Ruby implementation. # It provides methods like {#synchronize}, {#wait}, {#signal} and {#broadcast}. @@ -10413,138 +10317,138 @@ # def value # synchronize { @value } # end # end # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/lockable_object.rb:47 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/lockable_object.rb#47 class Concurrent::Synchronization::LockableObject < ::Concurrent::Synchronization::MutexLockableObject - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/condition.rb:55 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/condition.rb#55 def new_condition; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/lockable_object.rb:6 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/lockable_object.rb#6 Concurrent::Synchronization::LockableObjectImplementation = Concurrent::Synchronization::MutexLockableObject -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:59 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb#59 class Concurrent::Synchronization::MonitorLockableObject < ::Concurrent::Synchronization::AbstractLockableObject include ::Concurrent::Synchronization::ConditionSignalling # @return [MonitorLockableObject] a new instance of MonitorLockableObject # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:64 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb#64 def initialize(*defaults); end protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:82 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb#82 def ns_wait(timeout = T.unsafe(nil)); end # TODO may be a problem with lock.synchronize { lock.wait } # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:78 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb#78 def synchronize; end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:70 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb#70 def initialize_copy(other); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 def new(*args, &block); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mri_object.rb:5 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mri_object.rb#5 module Concurrent::Synchronization::MriAttrVolatile mixes_in_class_methods ::Concurrent::Synchronization::MriAttrVolatile::ClassMethods - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mri_object.rb:28 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mri_object.rb#28 def full_memory_barrier; end class << self # @private # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mri_object.rb:6 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mri_object.rb#6 def included(base); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mri_object.rb:10 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mri_object.rb#10 module Concurrent::Synchronization::MriAttrVolatile::ClassMethods - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mri_object.rb:11 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mri_object.rb#11 def attr_volatile(*names); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mri_object.rb:36 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mri_object.rb#36 class Concurrent::Synchronization::MriObject < ::Concurrent::Synchronization::AbstractObject include ::Concurrent::Synchronization::MriAttrVolatile extend ::Concurrent::Synchronization::MriAttrVolatile::ClassMethods # @return [MriObject] a new instance of MriObject # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mri_object.rb:39 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mri_object.rb#39 def initialize; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:24 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb#24 class Concurrent::Synchronization::MutexLockableObject < ::Concurrent::Synchronization::AbstractLockableObject include ::Concurrent::Synchronization::ConditionSignalling # @return [MutexLockableObject] a new instance of MutexLockableObject # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:29 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb#29 def initialize(*defaults); end protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:51 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb#51 def ns_wait(timeout = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:43 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb#43 def synchronize; end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:35 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb#35 def initialize_copy(other); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 def new(*args, &block); end end end # Abstract object providing final, volatile, ans CAS extensions to build other concurrent abstractions. # - final instance variables see {Object.safe_initialization!} # - volatile instance variables see {Object.attr_volatile} # - volatile instance variables see {Object.attr_atomic} # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:26 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#25 class Concurrent::Synchronization::Object < ::Concurrent::Synchronization::MriObject # Has to be called by children. # # @return [Object] a new instance of Object # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:36 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#36 def initialize; end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:178 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#178 def __initialize_atomic_fields__; end class << self # @return [true, false] is the attribute with name atomic? # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:157 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#157 def atomic_attribute?(name); end # @param inherited [true, false] should inherited volatile with CAS fields be returned? # @return [::Array<Symbol>] Returns defined volatile with CAS fields on this class. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:151 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#151 def atomic_attributes(inherited = T.unsafe(nil)); end # Creates methods for reading and writing to a instance variable with # volatile (Java) semantic as {.attr_volatile} does. # The instance variable should be accessed oly through generated methods. @@ -10553,20 +10457,20 @@ # `compare_and_set_value(expected, value) #=> true || false`, `update_value(&block)`. # # @param names [::Array<Symbol>] of the instance variables to be volatile with CAS. # @return [::Array<Symbol>] names of defined method names. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:116 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#116 def attr_atomic(*names); end # For testing purposes, quite slow. Injects assert code to new method which will raise if class instance contains # any instance variables with CamelCase names and isn't {.safe_initialization?}. # # @raise when offend found # @return [true] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:77 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#77 def ensure_safe_initialization_when_final_fields_are_present; end # By calling this method on a class, it and all its children are marked to be constructed safely. Meaning that # all writes (ivar initializations) are made visible to all readers of newly constructed object. It ensures # same behaviour as Java's final fields. @@ -10579,121 +10483,121 @@ # @AFinalValue = 'value' # published safely, does not have to be synchronized # end # end # @return [true] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:53 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#53 def safe_initialization!; end # @return [true, false] if this class is safely initialized. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:68 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#68 def safe_initialization?; end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:163 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#163 def define_initialize_atomic_fields; end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:6 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#6 Concurrent::Synchronization::ObjectImplementation = Concurrent::Synchronization::MriObject -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/rbx_object.rb:5 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/rbx_object.rb#5 module Concurrent::Synchronization::RbxAttrVolatile mixes_in_class_methods ::Concurrent::Synchronization::RbxAttrVolatile::ClassMethods - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/rbx_object.rb:32 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/rbx_object.rb#32 def full_memory_barrier; end class << self # @private # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/rbx_object.rb:6 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/rbx_object.rb#6 def included(base); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/rbx_object.rb:10 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/rbx_object.rb#10 module Concurrent::Synchronization::RbxAttrVolatile::ClassMethods - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/rbx_object.rb:12 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/rbx_object.rb#12 def attr_volatile(*names); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/rbx_lockable_object.rb:6 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/rbx_lockable_object.rb#6 class Concurrent::Synchronization::RbxLockableObject < ::Concurrent::Synchronization::AbstractLockableObject # @return [RbxLockableObject] a new instance of RbxLockableObject # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/rbx_lockable_object.rb:9 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/rbx_lockable_object.rb#9 def initialize(*defaults); end protected - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/rbx_lockable_object.rb:65 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/rbx_lockable_object.rb#65 def ns_broadcast; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/rbx_lockable_object.rb:60 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/rbx_lockable_object.rb#60 def ns_signal; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/rbx_lockable_object.rb:40 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/rbx_lockable_object.rb#40 def ns_wait(timeout = T.unsafe(nil)); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/rbx_lockable_object.rb:23 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/rbx_lockable_object.rb#23 def synchronize(&block); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/rbx_lockable_object.rb:15 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/rbx_lockable_object.rb#15 def initialize_copy(other); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 def new(*args, &block); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/rbx_object.rb:41 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/rbx_object.rb#41 class Concurrent::Synchronization::RbxObject < ::Concurrent::Synchronization::AbstractObject include ::Concurrent::Synchronization::RbxAttrVolatile extend ::Concurrent::Synchronization::RbxAttrVolatile::ClassMethods # @return [RbxObject] a new instance of RbxObject # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/rbx_object.rb:44 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/rbx_object.rb#44 def initialize; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/truffleruby_object.rb:5 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/truffleruby_object.rb#5 module Concurrent::Synchronization::TruffleRubyAttrVolatile mixes_in_class_methods ::Concurrent::Synchronization::TruffleRubyAttrVolatile::ClassMethods - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/truffleruby_object.rb:32 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/truffleruby_object.rb#32 def full_memory_barrier; end class << self # @private # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/truffleruby_object.rb:6 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/truffleruby_object.rb#6 def included(base); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/truffleruby_object.rb:10 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/truffleruby_object.rb#10 module Concurrent::Synchronization::TruffleRubyAttrVolatile::ClassMethods - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/truffleruby_object.rb:11 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/truffleruby_object.rb#11 def attr_volatile(*names); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/truffleruby_object.rb:39 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/truffleruby_object.rb#39 class Concurrent::Synchronization::TruffleRubyObject < ::Concurrent::Synchronization::AbstractObject include ::Concurrent::Synchronization::TruffleRubyAttrVolatile extend ::Concurrent::Synchronization::TruffleRubyAttrVolatile::ClassMethods # @return [TruffleRubyObject] a new instance of TruffleRubyObject # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/truffleruby_object.rb:42 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/truffleruby_object.rb#42 def initialize; end end # Volatile adds the attr_volatile class method when included. # @@ -10712,11 +10616,11 @@ # def initialize # self.bar = 1 # end # end # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/volatile.rb:23 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/volatile.rb#23 Concurrent::Synchronization::Volatile = Concurrent::Synchronization::MriAttrVolatile # This class provides a trivial way to synchronize all calls to a given object # by wrapping it with a `Delegator` that performs `Monitor#enter/exit` calls # around the delegated `#send`. Example: @@ -10730,24 +10634,24 @@ # currently on some implementations. # # This class is currently being considered for inclusion into stdlib, via # https://bugs.ruby-lang.org/issues/8556 # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/synchronized_delegator.rb:23 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/synchronized_delegator.rb#23 class Concurrent::SynchronizedDelegator < ::SimpleDelegator # @return [SynchronizedDelegator] a new instance of SynchronizedDelegator # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/synchronized_delegator.rb:33 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/synchronized_delegator.rb#33 def initialize(obj); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/synchronized_delegator.rb:38 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/synchronized_delegator.rb#38 def method_missing(method, *args, &block); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/synchronized_delegator.rb:24 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/synchronized_delegator.rb#24 def setup; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/synchronized_delegator.rb:29 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/synchronized_delegator.rb#29 def teardown; end end # A `TVar` is a transactional variable - a single-element container that # is used as part of a transaction - see `Concurrent::atomically`. @@ -10784,40 +10688,40 @@ # * *{Concurrent::TVar}:* Shared, mutable variables which provide # *coordinated*, *synchronous*, change of *many* stated. Used when multiple # value must change together, in an all-or-nothing transaction. # {include:file:docs-source/tvar.md} # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:12 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#12 class Concurrent::TVar < ::Concurrent::Synchronization::Object # Create a new `TVar` with an initial value. # # @return [TVar] a new instance of TVar # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:16 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#16 def initialize(value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:46 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#46 def unsafe_lock; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:36 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#36 def unsafe_value; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:41 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#41 def unsafe_value=(value); end # Get the value of a `TVar`. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:22 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#22 def value; end # Set the value of a `TVar`. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:29 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#29 def value=(value); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/synchronization/object.rb:58 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/synchronization/object.rb#58 def new(*args, &block); end end end # A `ThreadLocalVar` is a variable where the value is different for each thread. @@ -10878,14 +10782,14 @@ # end # # v.value #=> 14 # @see https://docs.oracle.com/javase/7/docs/api/java/lang/ThreadLocal.html Java ThreadLocal # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/thread_local_var.rb:102 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/thread_local_var.rb#102 class Concurrent::ThreadLocalVar < ::Concurrent::RubyThreadLocalVar; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/atomic/thread_local_var.rb:60 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/atomic/thread_local_var.rb#60 Concurrent::ThreadLocalVarImplementation = Concurrent::RubyThreadLocalVar # An abstraction composed of one or more threads and a task queue. Tasks # (blocks or `proc` objects) are submitted to the pool and added to the queue. # The threads in the pool remove the tasks and execute them in the order @@ -10968,75 +10872,75 @@ # @see http://docs.oracle.com/javase/tutorial/essential/concurrency/pools.html Java Tutorials: Thread Pools # @see http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executors.html Java Executors class # @see http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutorService.html Java ExecutorService interface # @see https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html#setDaemon-boolean- # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/thread_pool_executor.rb:56 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/thread_pool_executor.rb#56 class Concurrent::ThreadPoolExecutor < ::Concurrent::RubyThreadPoolExecutor; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/thread_pool_executor.rb:10 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/thread_pool_executor.rb#10 Concurrent::ThreadPoolExecutorImplementation = Concurrent::RubyThreadPoolExecutor -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util.rb:4 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util.rb#4 module Concurrent::ThreadSafe; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util.rb:7 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util.rb#7 module Concurrent::ThreadSafe::Util class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:15 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#15 def make_synchronized_on_cruby(klass); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:40 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#40 def make_synchronized_on_rbx(klass); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb:77 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb#77 def make_synchronized_on_truffleruby(klass); end end end # TODO (pitr-ch 15-Oct-2016): migrate to Utility::ProcessorCounter # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util.rb:13 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util.rb#13 Concurrent::ThreadSafe::Util::CPU_COUNT = T.let(T.unsafe(nil), Integer) # TODO (pitr-ch 15-Oct-2016): migrate to Utility::NativeInteger # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util.rb:10 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util.rb#10 Concurrent::ThreadSafe::Util::FIXNUM_BIT_SIZE = T.let(T.unsafe(nil), Integer) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/thread_safe/util.rb:11 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/thread_safe/util.rb#11 Concurrent::ThreadSafe::Util::MAX_INT = T.let(T.unsafe(nil), Integer) # Raised when an operation times out. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/errors.rb:55 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/errors.rb#55 class Concurrent::TimeoutError < ::Concurrent::Error; end # Executes a collection of tasks, each after a given delay. A master task # monitors the set and schedules each task for execution at the appropriate # time. Tasks are run on the global thread pool or on the supplied executor. # Each task is represented as a `ScheduledTask`. # # @see Concurrent::ScheduledTask # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/timer_set.rb:19 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/timer_set.rb#19 class Concurrent::TimerSet < ::Concurrent::RubyExecutorService # Create a new set of timed tasks. # # @option opts # @param opts [Hash] the options used to specify the executor on which to perform actions # @return [TimerSet] a new instance of TimerSet # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/timer_set.rb:30 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/timer_set.rb#30 def initialize(opts = T.unsafe(nil)); end # Begin an immediate shutdown. In-progress tasks will be allowed to # complete but enqueued tasks will be dismissed and no new tasks # will be accepted. Has no additional effect if the thread pool is # not running. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/timer_set.rb:62 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/timer_set.rb#62 def kill; end # Post a task to be execute run after a given delay (in seconds). If the # delay is less than 1/100th of a second the task will be immediately post # to the executor. @@ -11047,57 +10951,60 @@ # @raise [ArgumentError] if no block is given. # @return [Concurrent::ScheduledTask, false] IVar representing the task if the post # is successful; false after shutdown. # @yield the task to be performed. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/timer_set.rb:48 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/timer_set.rb#48 def post(delay, *args, &task); end private + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/executor_service.rb#166 + def <<(task); end + # Initialize the object. # # @param opts [Hash] the options to create the object with. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/timer_set.rb:74 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/timer_set.rb#74 def ns_initialize(opts); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/timer_set.rb:94 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/timer_set.rb#94 def ns_post_task(task); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/timer_set.rb:129 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/timer_set.rb#129 def ns_reset_if_forked; end # `ExecutorService` callback called during shutdown. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/timer_set.rb:122 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/timer_set.rb#122 def ns_shutdown_execution; end # Post the task to the internal queue. # # @note This is intended as a callback method from ScheduledTask # only. It is not intended to be used directly. Post a task # by using the `SchedulesTask#execute` method. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/timer_set.rb:89 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/timer_set.rb#89 def post_task(task); end # Run a loop and execute tasks in the scheduled order and at the approximate # scheduled time. If no tasks remain the thread will exit gracefully so that # garbage collection can occur. If there are no ready tasks it will sleep # for up to 60 seconds waiting for the next scheduled task. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/timer_set.rb:143 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/timer_set.rb#143 def process_tasks; end # Remove the given task from the queue. # # @note This is intended as a callback method from `ScheduledTask` # only. It is not intended to be used directly. Cancel a task # by using the `ScheduledTask#cancel` method. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/executor/timer_set.rb:115 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/timer_set.rb#115 def remove_task(task); end end # A very common concurrency pattern is to run a thread that performs a task at # regular intervals. The thread that performs the task sleeps for the given @@ -11226,11 +11133,11 @@ # #=> (2013-10-13 19:09:39 -0400) Execution failed with error StandardError # task.shutdown # @see http://ruby-doc.org/stdlib-2.0/libdoc/observer/rdoc/Observable.html # @see http://docs.oracle.com/javase/7/docs/api/java/util/TimerTask.html # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/timer_task.rb:148 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#148 class Concurrent::TimerTask < ::Concurrent::RubyExecutorService include ::Concurrent::Concern::Dereferenceable include ::Concurrent::Concern::Observable # Create a new TimerTask with the given task and configuration. @@ -11245,11 +11152,11 @@ # @yieldparam task a reference to the `TimerTask` instance so that the # block can control its own lifecycle. Necessary since `self` will # refer to the execution context of the block rather than the running # `TimerTask`. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/timer_task.rb:180 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#180 def initialize(opts = T.unsafe(nil), &task); end # Execute a previously created `TimerTask`. # # @example Instance and execute in separate steps @@ -11260,59 +11167,65 @@ # @example Instance and execute in one line # task = Concurrent::TimerTask.new(execution_interval: 10){ print "Hello World\n" }.execute # task.running? #=> true # @return [TimerTask] a reference to `self` # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/timer_task.rb:206 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#206 def execute; end # @return [Fixnum] Number of seconds after the task completes before the # task is performed again. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/timer_task.rb:230 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#230 def execution_interval; end # @return [Fixnum] Number of seconds after the task completes before the # task is performed again. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/timer_task.rb:237 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#237 def execution_interval=(value); end # Is the executor running? # # @return [Boolean] `true` when running, `false` when shutting down or shutdown # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/timer_task.rb:189 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#189 def running?; end # @return [Fixnum] Number of seconds the task can run before it is # considered to have failed. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/timer_task.rb:248 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#248 def timeout_interval; end # @return [Fixnum] Number of seconds the task can run before it is # considered to have failed. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/timer_task.rb:255 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#255 def timeout_interval=(value); end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/timer_task.rb:297 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/executor_service.rb#166 + def <<(task); end + + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#297 def execute_task(completion); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/timer_task.rb:263 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#263 def ns_initialize(opts, &task); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/timer_task.rb:285 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#285 def ns_kill_execution; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/timer_task.rb:279 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#279 def ns_shutdown_execution; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/timer_task.rb:291 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb#17 + def post(*args, &task); end + + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#291 def schedule_next_task(interval = T.unsafe(nil)); end class << self # Create and execute a new `TimerTask`. # @@ -11329,81 +11242,79 @@ # @yieldparam task a reference to the `TimerTask` instance so that the # block can control its own lifecycle. Necessary since `self` will # refer to the execution context of the block rather than the running # `TimerTask`. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/timer_task.rb:223 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#223 def execute(opts = T.unsafe(nil), &task); end end end # Default `:execution_interval` in seconds. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/timer_task.rb:153 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#153 Concurrent::TimerTask::EXECUTION_INTERVAL = T.let(T.unsafe(nil), Integer) # Default `:timeout_interval` in seconds. # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/timer_task.rb:156 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/timer_task.rb#156 Concurrent::TimerTask::TIMEOUT_INTERVAL = T.let(T.unsafe(nil), Integer) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:152 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#152 class Concurrent::Transaction # @return [Transaction] a new instance of Transaction # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:161 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#161 def initialize; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:191 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#191 def abort; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:195 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#195 def commit; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:176 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#176 def open(tvar); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:165 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#165 def read(tvar); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:205 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#205 def unlock; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:170 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#170 def write(tvar, value); end class << self - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:211 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#211 def current; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:215 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#215 def current=(transaction); end end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:154 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#154 Concurrent::Transaction::ABORTED = T.let(T.unsafe(nil), Object) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:158 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#158 class Concurrent::Transaction::AbortError < ::StandardError; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:159 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#159 class Concurrent::Transaction::LeaveError < ::StandardError; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:156 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tvar.rb#156 class Concurrent::Transaction::OpenEntry < ::Struct # Returns the value of attribute modified # # @return [Object] the current value of modified def modified; end # Sets the attribute modified # # @param value [Object] the value to set the attribute modified to. # @return [Object] the newly set value - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:156 def modified=(_); end # Returns the value of attribute value # # @return [Object] the current value of value @@ -11411,17 +11322,16 @@ # Sets the attribute value # # @param value [Object] the value to set the attribute value to. # @return [Object] the newly set value - # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tvar.rb:156 def value=(_); end class << self def [](*_arg0); end def inspect; end + def keyword_init?; end def members; end def new(*_arg0); end end end @@ -11438,219 +11348,219 @@ # tuple.get(0) #=> :bar | volatile read # @see https://en.wikipedia.org/wiki/Tuple Tuple entry at Wikipedia # @see http://www.erlang.org/doc/reference_manual/data_types.html#id70396 Erlang Tuple # @see http://ruby-doc.org/core-2.2.2/Enumerable.html Enumerable # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tuple.rb:20 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#20 class Concurrent::Tuple include ::Enumerable # Create a new tuple of the given size. # # @param size [Integer] the number of elements in the tuple # @return [Tuple] a new instance of Tuple # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tuple.rb:33 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#33 def initialize(size); end # Set the value at the given index to the new value if and only if the current # value matches the given old value. # # @param i [Integer] the index for the element to set # @param old_value [Object] the value to compare against the current value # @param new_value [Object] the value to set at the given index # @return [Boolean] true if the value at the given element was set else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tuple.rb:73 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#73 def cas(i, old_value, new_value); end # Set the value at the given index to the new value if and only if the current # value matches the given old value. # # @param i [Integer] the index for the element to set # @param old_value [Object] the value to compare against the current value # @param new_value [Object] the value to set at the given index # @return [Boolean] true if the value at the given element was set else false # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tuple.rb:73 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#73 def compare_and_set(i, old_value, new_value); end # Calls the given block once for each element in self, passing that element as a parameter. # # @yieldparam ref [Object] the `Concurrent::AtomicReference` object at the current index # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tuple.rb:82 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#82 def each; end # Get the value of the element at the given index. # # @param i [Integer] the index from which to retrieve the value # @return [Object] the value at the given index or nil if the index is out of bounds # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tuple.rb:47 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#47 def get(i); end # Set the element at the given index to the given value # # @param i [Integer] the index for the element to set # @param value [Object] the value to set at the given index # @return [Object] the new value of the element at the given index or nil if the index is out of bounds # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tuple.rb:59 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#59 def set(i, value); end # The (fixed) size of the tuple. # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tuple.rb:24 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#24 def size; end # Get the value of the element at the given index. # # @param i [Integer] the index from which to retrieve the value # @return [Object] the value at the given index or nil if the index is out of bounds # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tuple.rb:47 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#47 def volatile_get(i); end # Set the element at the given index to the given value # # @param i [Integer] the index for the element to set # @param value [Object] the value to set at the given index # @return [Object] the new value of the element at the given index or nil if the index is out of bounds # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tuple.rb:59 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#59 def volatile_set(i, value); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/tuple.rb:27 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/tuple.rb#27 Concurrent::Tuple::Tuple = Array -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/engine.rb:2 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#2 module Concurrent::Utility; end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/engine.rb:5 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#5 module Concurrent::Utility::EngineDetector # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/engine.rb:14 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#14 def on_cruby?; end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/engine.rb:6 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#6 def on_jruby?; end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/engine.rb:10 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#10 def on_jruby_9000?; end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/engine.rb:34 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#34 def on_linux?; end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/engine.rb:30 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#30 def on_osx?; end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/engine.rb:18 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#18 def on_rbx?; end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/engine.rb:22 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#22 def on_truffleruby?; end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/engine.rb:26 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#26 def on_windows?; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/engine.rb:38 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#38 def ruby_engine; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/engine.rb:42 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/engine.rb#42 def ruby_version(version = T.unsafe(nil), comparison, major, minor, patch); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb:8 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb#8 module Concurrent::Utility::NativeExtensionLoader # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb:10 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb#10 def allow_c_extensions?; end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb:14 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb#14 def c_extensions_loaded?; end # @return [Boolean] # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb:18 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb#18 def java_extensions_loaded?; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb:22 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb#22 def load_native_extensions; end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb:45 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb#45 def load_error_path(error); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb:53 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb#53 def set_c_extensions_loaded; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb:57 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb#57 def set_java_extensions_loaded; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb:61 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb#61 def try_load_c_extension(path); end end # @private # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_integer.rb:4 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_integer.rb#4 module Concurrent::Utility::NativeInteger extend ::Concurrent::Utility::NativeInteger - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_integer.rb:23 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_integer.rb#23 def ensure_integer(value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_integer.rb:30 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_integer.rb#30 def ensure_integer_and_bounds(value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_integer.rb:16 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_integer.rb#16 def ensure_lower_bound(value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_integer.rb:36 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_integer.rb#36 def ensure_positive(value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_integer.rb:43 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_integer.rb#43 def ensure_positive_and_no_zero(value); end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_integer.rb:9 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_integer.rb#9 def ensure_upper_bound(value); end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_integer.rb:7 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_integer.rb#7 Concurrent::Utility::NativeInteger::MAX_VALUE = T.let(T.unsafe(nil), Integer) # http://stackoverflow.com/questions/535721/ruby-max-integer # -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/native_integer.rb:6 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/native_integer.rb#6 Concurrent::Utility::NativeInteger::MIN_VALUE = T.let(T.unsafe(nil), Integer) -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/processor_counter.rb:9 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/processor_counter.rb#9 class Concurrent::Utility::ProcessorCounter # @return [ProcessorCounter] a new instance of ProcessorCounter # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/processor_counter.rb:10 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/processor_counter.rb#10 def initialize; end # Number of physical processor cores on the current system. For performance # reasons the calculated value will be memoized on the first call. # @@ -11665,11 +11575,11 @@ # @see https://github.com/grosser/parallel/blob/4fc8b89d08c7091fe0419ca8fba1ec3ce5a8d185/lib/parallel.rb # @see http://msdn.microsoft.com/en-us/library/aa394373(v=vs.85).aspx # @see http://www.unix.com/man-page/osx/1/HWPREFS/ # @see http://linux.die.net/man/8/sysctl # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/processor_counter.rb:73 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/processor_counter.rb#73 def physical_processor_count; end # Number of processors seen by the OS and used for process scheduling. For # performance reasons the calculated value will be memoized on the first # call. @@ -11704,19 +11614,19 @@ # @return [Integer] number of processors seen by the OS or Java runtime # @see https://github.com/grosser/parallel/blob/4fc8b89d08c7091fe0419ca8fba1ec3ce5a8d185/lib/parallel.rb # @see http://docs.oracle.com/javase/6/docs/api/java/lang/Runtime.html#availableProcessors() # @see http://msdn.microsoft.com/en-us/library/aa394373(v=vs.85).aspx # - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/processor_counter.rb:52 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/processor_counter.rb#52 def processor_count; end private - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/processor_counter.rb:87 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/processor_counter.rb#87 def compute_physical_processor_count; end - # source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/utility/processor_counter.rb:79 + # source://concurrent-ruby//lib/concurrent-ruby/concurrent/utility/processor_counter.rb#79 def compute_processor_count; end end -# source://concurrent-ruby-1.1.10/lib/concurrent-ruby/concurrent/version.rb:2 +# source://concurrent-ruby//lib/concurrent-ruby/concurrent/version.rb#2 Concurrent::VERSION = T.let(T.unsafe(nil), String)