Guest User

Untitled

a guest
Jan 23rd, 2018
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.40 KB | None | 0 0
  1. def merge!(other)
  2. other = Rubinius::Type.coerce_to other, Hash, :to_hash
  3.  
  4. if block_given?
  5. other.each_entry do |entry|
  6. key = entry.key
  7. if key? key
  8. __store__ key, yield(key, self[key], entry.value)
  9. else
  10. __store__ key, entry.value
  11. end
  12. end
  13. else
  14. other.each_entry do |entry|
  15. key = entry.key
  16. __store__ key, entry.value
  17. end
  18. end
  19. self
  20. end
Add Comment
Please, Sign In to add comment