module JHash
Wednesday, August 19 2020
Public Instance Methods
method_missing(method_name, arg = :nothing)
click to toggle source
# File lib/jhash.rb, line 7 def method_missing(method_name, arg = :nothing) # rubocop:disable Metrics/MethodLength if arg.eql? :nothing return self[method_name] elsif method_name.to_s.match?(/\w+\d*=/) m_name = method_name[/[[:alnum:]]+/] return merge!({ m_name.to_sym => arg}) end obj = self[method_name] begin msg = obj.send(arg) rescue NoMethodError => err msg = err.message end msg end