./ruby/map-mixin-rcr/map_sample.rb

download original
require "map"

class MyMap
  def get_mapped_value(key)
    case key
      when "age"; 52
      when "iq"; 196
      when "answer"; 42
    else raise IndexError, "no such key: #{key}"
    end
  end

  def each
    yield("age", 52)
    yield("iq", 196)
    yield("answer",42)
  end

  include Map
end

m=MyMap.new
m["iq"]      # => 196
m.index(196) # => "iq"
m.keys       # => ["age", "iq", "answer"]
m.values     # => [52, 196, 42]
m.to_a       # => [["age", 52], ["iq", 196], ["answer", 42]]
m.reject{|k,v| v>100} # => {"answer"=>42, "age"=>52}

# etc.

  
back to map-mixin-rcr

(C) 1998-2017 Olaf Klischat <olaf.klischat@gmail.com>