Method: Middleman::CallbackManager#add

Defined in:
lib/middleman-core/callback_manager.rb

#add(keys, &block) ⇒ Object



36
37
38
39
40
41
42
# File 'lib/middleman-core/callback_manager.rb', line 36

def add(keys, &block)
  immutable_keys = keys.is_a?(Symbol) ? keys : ::Hamster::Vector.new(keys)

  @callbacks = @callbacks.put(immutable_keys) do |v|
    v.nil? ? ::Hamster::Vector.new([block]) : v.push(block)
  end
end