31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
# File 'lib/sugarcube-anonymous/anonymous.rb', line 31
def method_missing(symbol, *args)
if args.size == 0
if symbol.to_s[-1] == '?'
symbol = symbol.to_s[0...-1].to_sym
return_bool = true
else
return_bool = false
end
key = symbol
key = symbol.to_s unless self.include? key
if self.include?(key)
self[key] = self[key].to_object
if return_bool
return !! self[key]
end
return self[key]
end
elsif args.size == 1 && /(.*)=$/ =~ symbol.to_s
key = $1.to_sym
key = key.to_s unless self.include? key
if self.include?(key)
return self[key] = args.first.to_object
end
end
return super
end
|