Class: Cryptomarket::Websocket::ReusableCallback
- Inherits:
-
Object
- Object
- Cryptomarket::Websocket::ReusableCallback
- Defined in:
- lib/cryptomarket/websocket/reusable_callback.rb
Overview
A wrapper for a callback, enable reuse of a callback up to an n number of times, and signals when is done reusing.
Instance Method Summary collapse
-
#get_callback ⇒ Object
rubocop:disable Naming/AccessorMethodName.
-
#initialize(callback, call_count) ⇒ ReusableCallback
constructor
A new instance of ReusableCallback.
Constructor Details
#initialize(callback, call_count) ⇒ ReusableCallback
Returns a new instance of ReusableCallback.
7 8 9 10 |
# File 'lib/cryptomarket/websocket/reusable_callback.rb', line 7 def initialize(callback, call_count) @call_count = call_count @callback = callback end |
Instance Method Details
#get_callback ⇒ Object
rubocop:disable Naming/AccessorMethodName
12 13 14 15 16 17 18 |
# File 'lib/cryptomarket/websocket/reusable_callback.rb', line 12 def get_callback # rubocop:disable Naming/AccessorMethodName return [nil, false] if @call_count < 1 @call_count -= 1 done_using = @call_count < 1 [@callback, done_using] end |