Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- module OrElse
- module ObjectImplementation
- def or_else(_)
- self
- end
- end
- module NilClassImplementation
- def or_else(val)
- val
- end
- end
- end
- class Object
- include OrElse::ObjectImplementation
- end
- class NilClass
- include OrElse::NilClassImplementation
- end
- # Example
- user_hash = {id: nil}
- user_hash[:id]&.or_else(1)
- # => 1
- user_hash[:id] = 2
- user_hash[:id]&.or_else(1)
- # => 2
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement