# File lib/json/common.rb, line 248
248:   def load(source, proc = nil)
249:     if source.respond_to? :to_str
250:       source = source.to_str
251:     elsif source.respond_to? :to_io
252:       source = source.to_io.read
253:     else
254:       source = source.read
255:     end
256:     result = parse(source, :max_nesting => false, :allow_nan => true)
257:     recurse_proc(result, &proc) if proc
258:     result
259:   end