lib/backports/1.9.1/hash.rb in backports-3.0.3 vs lib/backports/1.9.1/hash.rb in backports-3.1.0
- old
+ new
@@ -1,36 +1,3 @@
-class Hash
- # Standard in Ruby 1.8.8. See official documentation[http://ruby-doc.org/core-1.9/classes/Hash.html]
- class << self
- def try_convert(x)
- Backports.try_convert(x, Hash, :to_hash)
- end unless method_defined? :try_convert
- end
+require 'backports/tools'
- # Standard in Ruby 1.9. See official documentation[http://ruby-doc.org/core-1.9/classes/Hash.html]
- def default_proc=(proc)
- if proc == nil # nil accepted in Ruby 2.0
- self.default = nil
- self
- else
- replace(Hash.new(&Backports.coerce_to(proc, Proc, :to_proc)).merge!(self))
- end
- end unless method_defined? :default_proc=
-
- # Standard in Ruby 1.9. See official documentation[http://ruby-doc.org/core-1.9/classes/Hash.html]
- def assoc(key)
- val = fetch(key) do
- return find do |k, v|
- [k, v] if k == key
- end
- end
- [key, val]
- end unless method_defined? :assoc
-
-
- # Standard in Ruby 1.9. See official documentation[http://ruby-doc.org/core-1.9/classes/Hash.html]
- def rassoc(value)
- k = key(value)
- v = fetch(k){return nil}
- [k, fetch(k)] if k || v == value
- end unless method_defined? :rassoc
-end
+Backports.require_relative_dir