Module: WEEL::HashExt
Overview
Instance Method Summary
collapse
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(name, *args) ⇒ Object
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
|
# File 'lib/weel.rb', line 67
def method_missing(name,*args)
if args.empty? && @__weel_values.key?(name)
@__weel_values[name]
elsif args.empty? && @__weel_values.key?(name.to_s)
@__weel_values[name.to_s]
elsif name.to_s[-1..-1] == "=" && args.length == 1
temp = name.to_s[0..-2]
@__weel_values[temp.to_sym] = args[0]
elsif name.to_s == "[]=" && args.length == 2
@__weel_values[args[0]] = args[1]
elsif name.to_s == "[]" && args.length == 1
@__weel_values[args[0]]
else
nil
end
end
|
Instance Method Details
#any? ⇒ Boolean
55
56
57
|
# File 'lib/weel.rb', line 55
def any?
@__weel_values&.any?
end
|
#empty? ⇒ Boolean
59
60
61
|
# File 'lib/weel.rb', line 59
def empty?
@__weel_values.nil? || @__weel_values.empty?
end
|
#to_json(*args) ⇒ Object
63
64
65
|
# File 'lib/weel.rb', line 63
def to_json(*args)
@__weel_values.nil? ? '{}' : @__weel_values.to_json(*args)
end
|