Method: JSON::Ext::Generator::State#method_missing
- Defined in:
- lib/oj/state.rb
#method_missing(m, *args, &block) ⇒ Boolean
Handles requests for Hash values. Others cause an Exception to be raised.
114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 |
# File 'lib/oj/state.rb', line 114 def method_missing(m, *args, &block) if m.to_s.end_with?('=') raise ArgumentError.new("wrong number of arguments (#{args.size} for 1 with #{m}) to method #{m}") if args.nil? or 1 != args.length m = m.to_s[0..-2] m = m.to_sym return @attrs.store(m, args[0]) end if @attrs.has_key?(m.to_sym) raise ArgumentError.new("wrong number of arguments (#{args.size} for 0 with #{m}) to method #{m}") unless args.nil? or args.empty? return @attrs[m.to_sym] end return @attrs.send(m, *args, &block) end |