# File lib/json/common.rb, line 186 def generate(obj, state = nil) if state state = State.from_state(state) else state = State.new end result = obj.to_json(state) if result !~ /\A\s*(?:\[.*\]|\{.*\})\s*\Z/m raise GeneratorError, "only generation of JSON objects or arrays allowed" end result end