Class: Solis::OverlayFS::Hooks
- Inherits:
-
Object
- Object
- Solis::OverlayFS::Hooks
- Defined in:
- lib/solis/overlay_fs.rb
Overview
Event hooks
Instance Method Summary collapse
- #clear(event = nil) ⇒ Object
-
#initialize ⇒ Hooks
constructor
A new instance of Hooks.
- #on(event, &block) ⇒ Object
- #trigger(event, **args) ⇒ Object
Constructor Details
#initialize ⇒ Hooks
Returns a new instance of Hooks.
147 148 149 |
# File 'lib/solis/overlay_fs.rb', line 147 def initialize @callbacks = Hash.new { |h, k| h[k] = [] } end |
Instance Method Details
#clear(event = nil) ⇒ Object
159 160 161 |
# File 'lib/solis/overlay_fs.rb', line 159 def clear(event = nil) event ? @callbacks.delete(event) : @callbacks.clear end |
#on(event, &block) ⇒ Object
151 152 153 |
# File 'lib/solis/overlay_fs.rb', line 151 def on(event, &block) @callbacks[event] << block end |
#trigger(event, **args) ⇒ Object
155 156 157 |
# File 'lib/solis/overlay_fs.rb', line 155 def trigger(event, **args) @callbacks[event].each { |cb| cb.call(**args) } end |