class SerializedHashie::Extensions

Public Class Methods

new() click to toggle source
# File lib/serialized_hashie/extensions.rb, line 6
def initialize
  reset
end

Public Instance Methods

add(name, &block) click to toggle source
# File lib/serialized_hashie/extensions.rb, line 14
def add(name, &block)
  if has?(name)
    raise Error, "Extension already defined named '#{name}'"
  end

  @extensions[name.to_sym] = block
end
has?(name) click to toggle source
# File lib/serialized_hashie/extensions.rb, line 22
def has?(name)
  @extensions.key?(name.to_sym)
end
reset() click to toggle source
# File lib/serialized_hashie/extensions.rb, line 10
def reset
  @extensions = {}
end
run(value) click to toggle source
# File lib/serialized_hashie/extensions.rb, line 26
def run(value)
  @extensions.each_value do |block|
    value = block.call(value)
  end
  value
end