class HashContext

HashContext

Attributes

receiver[R]

Public Class Methods

new(receiver) click to toggle source
# File lib/open_classes/hash/gte_gte.rb, line 6
def initialize(receiver)
  @receiver = receiver
end

Public Instance Methods

method_missing(method_name, *args, &block) click to toggle source
# File lib/open_classes/hash/gte_gte.rb, line 10
def method_missing(method_name, *args, &block)
  result = nil
  if args.size > 0
    receiver.reduce({}) do |ret, (key, value)|
      value = value.send method_name, *args
      ret[key] = value
      ret
    end
  else
    receiver.reduce({}) do |ret, (key, value)|
      value = value.send method_name
      ret[key] = value
      ret
    end
  end
end
to_h() click to toggle source
# File lib/open_classes/hash/gte_gte.rb, line 27
def to_h
  @receiver
end