class Qonfig::Settings::Callbacks
@api private @since 0.13.0
Attributes
callbacks[R]
@return [Array<Proc>]
@api private @since 0.13.0
Public Class Methods
new()
click to toggle source
@return [void]
@api private @since 0.13.0
# File lib/qonfig/settings/callbacks.rb, line 16 def initialize @callbacks = [] @lock = Mutex.new end
Public Instance Methods
add(callback)
click to toggle source
@param callback [Proc, Qonfig::Settings::Callbacks
, call
] @return [void]
@api private @since 0.13.0
# File lib/qonfig/settings/callbacks.rb, line 34 def add(callback) thread_safe { callbacks << callback } end
call()
click to toggle source
@return [void]
@api private @since 0.13.0
# File lib/qonfig/settings/callbacks.rb, line 25 def call thread_safe { callbacks.each(&:call) } end
Private Instance Methods
thread_safe() { |: synchronize(&block)| ... }
click to toggle source
@return [Any]
@api private @since 0.14.0
# File lib/qonfig/settings/callbacks.rb, line 50 def thread_safe(&block) @lock.owned? ? yield : @lock.synchronize(&block) end